一、限制ssh登录IP
IP限制:针对指定的IP地址进行限制SSH登录
- 修改hosts.allow主机允许配置文件,添加允许地址 ```shell [root@localhost ~]# vi /etc/hosts.allow
sshd:192.168.112.232:allow //添加只允许连接的IP地址 sshd:192.168.111.0/24:allow //允许111.0/24这个网段内的IP连接
2. 修改hosts.deny主机拒绝配置文件
```shell
[root@localhost ~]# vi /etc/hosts.deny
sshd:all:deny //这里的ALL表示除了上面文件中允许的,其他的IP地址都拒绝
同时设置上述两个文件时,hosts.allow文件中规则的优先级更高,参考上述两个文件进行设置时,服务器只允许192.168.112.232这个IP地址以及192.168.111.0/24这个IP地址段通过SSH进行登录,其他的IP都会被拒绝SSH登录。
- 重启ssh服务
[root@localhost ~]# systemctl restart sshd
二、修改远程登录端口
修改/etc/ssh/sshd_config文件中的Port 将前方的#注释删除,并将22修改为你想要使用远程登录的端口,例如54231。
在防火墙上添加运行端口:
iptables -I INPUT -p tcp —dport 54231 -j ACCEPT
如果您使用的ubuntu系统并使用ufw,可以使用命令:sudo ufw allow 54231
如果您使用CentOS7系统并使用firewalld,可以使用命令:
firewall-cmd —zone=public —add-port=54231/tcp —permanent
如果是使用云服务器,云服务商有提供外部防火墙,例如阿里云的安全组的情况下还要在外部的安全组中修改允许tcp端口54231端口的策略。
最后使用serivce sshd restart重启sshd服务即可。
CentOS7用户使用:systemctl restart sshd
重启服务之后登录服务器都需要输入指定的远程端口才能够登录服务器,大大降低了黑客攻击服务器的概率。