要限制CentOS上的SSH訪問權限,您可以采取以下措施:
更改默認SSH端口:
編輯/etc/ssh/sshd_config
文件,找到#Port 22
這一行,取消注釋并更改端口號。例如,將其更改為Port 2222
。然后重啟SSH服務以使更改生效:
sudo systemctl restart sshd
禁用root登錄:
在/etc/ssh/sshd_config
文件中找到PermitRootLogin
這一行,將其值更改為no
。這將禁止root用戶通過SSH登錄。然后重啟SSH服務以使更改生效:
sudo systemctl restart sshd
限制允許登錄的用戶:
在/etc/ssh/sshd_config
文件中找到AllowUsers
這一行,指定允許登錄的用戶。例如:
AllowUsers user1 user2 user3
如果該行以#
開頭,請取消注釋。然后重啟SSH服務以使更改生效:
sudo systemctl restart sshd
使用防火墻限制IP訪問: 如果您使用的是firewalld,可以通過以下命令限制允許訪問SSH的IP地址:
sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="允許的IP地址" port protocol="tcp" port="22" accept'
sudo firewall-cmd --reload
將允許的IP地址
替換為您希望允許訪問SSH的IP地址。
使用Fail2ban限制暴力破解攻擊: Fail2ban可以監控SSH登錄嘗試,并在檢測到多次失敗嘗試后暫時封禁IP地址。要安裝Fail2ban,請運行:
sudo yum install epel-release
sudo yum install fail2ban
然后啟動Fail2ban服務并設置開機啟動:
sudo systemctl start fail2ban
sudo systemctl enable fail2ban
接下來,創建一個新的Fail2ban配置文件/etc/fail2ban/jail.local
,并添加以下內容以配置SSH限制:
[sshd]
enabled = true
port = 22
filter = sshd
logpath = /var/log/secure
maxretry = 3
bantime = 600
這將限制在10分鐘內嘗試登錄失敗3次的IP地址,封禁時間為600秒。您可以根據需要調整這些參數。
采取這些措施后,您的CentOS服務器上的SSH訪問權限將受到限制,從而提高安全性。