要限制CentOS上的SSH访问,您可以采取以下措施:
修改SSH配置文件:
打开SSH配置文件 /etc/ssh/sshd_config,使用文本编辑器(如vim或nano)进行编辑。
sudo vi /etc/ssh/sshd_config
更改默认端口:
在sshd_config文件中找到#Port 22这一行,取消注释并更改端口号。例如,将其更改为Port 2222。这将使攻击者更难找到您的SSH服务。
Port 2222
禁用root登录:
在sshd_config文件中找到#PermitRootLogin yes这一行,取消注释并将yes更改为no。这将禁止root用户通过SSH登录。
PermitRootLogin no
启用公钥认证:
在sshd_config文件中找到#PubkeyAuthentication yes这一行,取消注释并确保其值为yes。这将启用基于公钥的认证,从而提高安全性。
PubkeyAuthentication yes
限制允许访问的用户:
在sshd_config文件中找到AllowUsers这一行,取消注释并在其后添加允许访问的用户名。例如:
AllowUsers user1 user2 user3
限制允许访问的IP地址:
在sshd_config文件中找到AllowGroups这一行,取消注释并在其后添加允许访问的IP地址范围。例如:
AllowGroups sshd-access
然后,在/etc/group文件中创建一个名为sshd-access的新组,并将允许访问的IP地址添加到该组中。例如:
sudo groupadd sshd-access
sudo gpasswd -a 192.168.1.1 sshd-access
sudo gpasswd -a 192.168.1.2 sshd-access
重启SSH服务:
保存对sshd_config文件的更改,然后重启SSH服务以应用更改。
sudo systemctl restart sshd
完成以上步骤后,您的CentOS系统上的SSH访问将受到限制。请确保您已为允许访问的用户设置了正确的公钥认证。