• SSH限制与更改端口、限制ROOT方式登录


     ssh中如何配置只允许某个IP以某个账号登录服务器

    只要在ssh的配置文件:sshd_config中添加如下一行即可
    Allowusers username@192.168.1.100
    上述只允许IP地址是192.168.1.100的机器以username用户登录。

    限制通过SSH登陆Linux的IP,那么可以如下做:

    先:修改/etc/hosts.deny,在其中加入sshd:ALL,注意不能加#号

    然后:修改:/etc/hosts.allow,在其中进行如下设置:sshd:192.168.1.16

    这样设置就只允许192.168.1.16的IP通过SSH登陆上LINUX机器了。

    当然在做为服务器方面,不安装gnome和KDE图形化界面,可以增加安全系数。

    修改端口:

    vi /etc/ssh/sshd_config

    找到#Port 22一段,这里是标识默认使用22端口,修改为如下:

    Port 22

    Port 999

    去掉前面的#号。

    然后保存退出

    在终端输入命令:/etc/init.d/sshd restart 重新启动ssh服务。

    这样SSH端口将同时工作与22和999上。

    现在编辑防火墙配置:vi /etc/sysconfig/iptables

    启用999端口。
    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 999 -j ACCEPT

    在终端输入命令:/etc/init.d/iptables restart 重新启动防火墙的访问规则。

    现在请使用ssh工具连接999端口,来测试是否成功。如果连接成功了,则再次编辑sshd_config的设置和防火墙的端口,将里边的Port22删除,然后重新启动ssh服务和防火墙的访问规则即可。

     
    之所以先设置成两个端口,测试成功后再关闭一个端口,是为了防止在修改conf的过程中,万一出现掉线、断网、误操作等未知情况时候,还能通过另外一个端口连接上去调试,以免发生连接不上必须派人去机房,导致问题更加复杂的麻烦。

    限制SSH以ROOT方式登录:

    vi /etc/ssh/sshd_config

    找到#PermitRootLogin yes

    新增:PermitRootLogin no

    保存退出

    重启ssh服务:service sshd restart

     
    方法1:在/etc/pam.d/sshd文件中加入
    auth required pam_listfile.so item=user sense=allow file=/etc/sshusers onerr=fail
    然后在/etc下建立sshusers文件,编辑这个文件,加入你允许使用ssh服务的用户名,重新起动
    sshd服务即可。

    方法2:pam规则也可以写成deny的
    auth required pam_listfile.so item=user sense=deny file=/etc/sshusers onerr=succeed
    方法3:在sshd_config中设置AllowUsers,格式如
    AllowUsers a b c
    重启sshd服务,则只有a/b/c3个用户可以登陆
     
     

    1,只允许某个IP登录,拒绝其他所有IP
    在 /etc/hosts.allow 写:
    sshd: 1.2.3.4
    在 /etc/hosts.deny 写:
    sshd: ALL

    用 iptables 也行:
    iptables -I INPUT -p tcp --dport 22 -j DROP
    iptables -I INPUT -p tcp --dport 22 -s 1.2.3.4 -j ACCEPT


    2,禁止某个用户通过ssh登录
    在/etc/ssh/sshd_conf添加
    AllowUsers 用户名
    或者
    AllowGroups 组名
    或者
    DenyUsers 用户名


    3,设定登录黑名单
    vi /etc/pam.d/sshd
    增加
    auth required /lib/security/pam_listfile.so item=user sense=deny file=/etc/sshd_user_deny_list onerr=succeed

    所有/etc/sshd_user_deny_list里面的用户被拒绝ssh登录

  • 相关阅读:
    设计模式之四(抽象工厂模式第二回合)
    C# try catch finally
    设计模式之三(工厂方法模式)
    C# XML与Json之间的相互转换
    Google免费的SVN服务器管理VS2010代码
    设计模式之四(抽象工厂模式第一回合)
    MVC项目开发中那些用到的知识点(Jquery ajax提交Json后台处理)
    设计模式之四(抽象工厂模式第三回合)
    设计模式之二(简单工厂模式)
    Jquery的$命名冲突
  • 原文地址:https://www.cnblogs.com/hanxing/p/4117952.html
Copyright © 2020-2023  润新知