限制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

 

转载于:https://www.cnblogs.com/dadonggg/p/8023511.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值