• 限制ip ssh远程登录


    有时候为了服务器的安全考虑,我们可以在服务器上做限制,禁止其他ip地址连接服务器。

    方法一:修改ssh配置文件

    其实做这个操作很简单,只需要改/etc/ssh/sshd_config配置文件,再最后一行添加下面语句即可

    allowusers root@49.4.151.24         ##注意此处添加的ip地址应为内网出口的公网ip地址,而不是局域网的内网ip
    allowusers root@1.119.144.11         ##可以添加多行,表示容许多个ip访问服务器

    修改完毕后重启ssh

    /etc/init.d/sshd restart

    测试

    可以新建个用户,然后使用新用户登录,看能否登录上;还可以让朋友登录测试

    如果测试过程中有问题,可以看登录日志tail -f  /var/log/secure 

    下面日志中就可以看出来,我设置的内网ip并没有出现在日志中,而是一个公网ip,由此可以看出,配置文件识别的是公网ip(此也可以看出来自己的公网ip地址),修改配置文件

    中的内网ip为公网ip后,测试通过。

    方法二:修改两个配置文件/etc/hosts.allow和/etc/hosts.deny

    /etc/hosts.allow和/etc/hosts.deny两个文件是控制远程访问设置的,通过他可以允许或者拒绝某个ip或者ip段的客户访问linux的某项服务。 比如SSH服务,我们通常只对管理员开放,那我们就可以禁用不必要的IP,而只开放管理员可能使用到的IP段;

     

    首先编辑允许连接服务器的ip,即可以放行的ip

    Vim /etc/hosts.allow
    添加一行
    sshd:49.4.151.24:allow                            #此处ip仍然为局域网出口的公网ip

     如果有多台服务器,比如我们有多台云服务器,那么这个允许的ip地址可能不一样,可以在登录服务器上会有ip地址提示,如下

    然后编辑禁止连接服务器的ip地址

    vim /etc/hosts.deny
    输入(表示除了上面允许的,其他的ip 都拒绝登陆ssh)
    sshd:ALL

    编辑完上面两个文件后,无需重启任何配置文件,即时生效

         上面两种方法对比的区别在于第一种方法限制范围更强,不仅限制了ip,而且用户不对,也登录不了服务器;第二种方法只限制了ip地址,只要密码正确,用户名不同也可以登录,这种适用于局域网中有多人需要登录服务器的需求。

    注意:/etc/hosts.deny中的设置会影响ansible远程管理,如果需要ansible管理,可以将ansible所在的服务器地址(如果使用的私网ip,那么添加私网ip)添加到/etc/hosts.allow中

    sshd:10.172.288.60:allow
  • 相关阅读:
    【福利】JetBrains 全家桶永久免费使用
    openlayers操作分享:如何从容的在vue中食用openlayers6
    Axios的正确食用方法
    uniapp 地图全解析+事件监听
    JS数据扁平化
    Codeforces 记录
    WP开发加载图片及文字Resource/Content说明
    根据属性获取属性名
    string和byte 数组转换的快速方法(采用unsafe)
    Code First Migrations更新数据库结构(数据迁移)
  • 原文地址:https://www.cnblogs.com/dadonggg/p/8023511.html
Copyright © 2020-2023  润新知