zoukankan      html  css  js  c++  java
  • 禁止root远程登录解决办法

    linux中root用户是超级管理员,可以针对root用户暴力破解密码,这样很不安全,工作中我们一般禁止root用户直接远程登陆,开设一个或多个普通用户,只允许登陆普通用户,如果有需要用root用户,可以su切换root 或者sudo来拥有root权限执行命令。

    一、root无法远程登陆,但所有用户可以切换root
    首先打开配置文件:

    vim /etc/ssh/sshd_config

    这行的意思是允许使用root用户登陆,所以我们将它改为no,不允许root用户直接登陆。

    保存退出配置文件后,重启sshd服务:

    systemctl restart sshd.service

    重新建立连接就发现root用户已经不能登陆了,我们只能通过普通用户登陆再进行切换。

    二、root无法远程登陆,但只有特定的用户才可以切换root
    一般情况下, 普通用户执行”su -“命令, 可以登录为root。为了加强系统的安全性, 有必要建立一个管理员的组, 只允许这个组的用户执行”su -” 命令登录为root, 而让其他组的用户即使执行”su -” 输入了正确的密码, 也无法登录为root用户. 在Unix 和Linux 下, 这个组的名称通常为”wheel”.

    1、添加一个用户, 把这个用户加入wheel组 

    adduser admin
    passwd  admin
    usermod -G wheel admin

     2、修改/etc/pam.d/su 

    auth required pam_wheel.so use_uid  去掉这行注释 
    3 修改/etc/login.defs 

    vim /etc/login.defs
    在文件末添加一行 

    SU_WHEEL_ONLY yes
    三、添加和root权限一样的用户
    adduser admin
    passwd  admin (修改密码,密码要遵循密码复杂性)
    修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行,如下所示:

    vim /etc/sudoers
    ## Allow root to run any commands anywhere
    root ALL=(ALL) ALL
    admin ALL=(ALL) ALL
     这个文件只读是一种保护机制,如果你使用vi编辑器的话,只要保存时使用:wq!就可以保存了。 或者使用visudo命令来进入sudoers文件的编辑,就可以正常保存
    四、ssh限制IP和用户登录
    1、配置sshd限制
    在/etc/hosts.allow中添加允许ssh登陆的ip或者网段 

    sshd:192.168.1.2:allow        #表示一个ip
    sshd:192.168.1.0/24:allow     #表示一段ip
    在/etc/hosts.deny添加不允许ssh登陆的IP

    sshd:ALL    #ALL表示除了上面允许的,其他的ip 都拒绝登陆ssh
    2、利用iptables防火墙限制   
    iptables -A INPUT -p tcp -s 192.168.1.2 --destination-port 22 -j ACCEPT 
    iptables -A INPUT -p tcp --destination-port 22 -j DROP 

  • 相关阅读:
    史上不全 ——LINQ to SQL语句
    asp.net mvc 5 后台操作
    asp.netmvc 前台基本控件操作
    ef6+asp.net MVC5+bootstrap3
    个人改造方法调用接口文档
    mvc开发过程中遇到的一些小问题修改
    FileUpload1 在部分浏览器中实现多选
    时间字段 输入空值显示为1900-1-1的解决办法,在asp.net 后台处理
    ASP.NET-C#中字符串操作
    保留多行文本框的换行与空格样式,并转义HTML标记的尖括号
  • 原文地址:https://www.cnblogs.com/zrxuexi/p/14848273.html
Copyright © 2011-2022 走看看