在CentOS系統中配置SSH安全訪問是一個重要的步驟,以確保服務器的安全性和數據的保密性。以下是一些常見的配置步驟和建議:
首先,確保你的CentOS系統是最新的:
sudo yum update -y
默認情況下,SSH使用端口22。為了增加安全性,可以修改默認端口:
sudo vi /etc/ssh/sshd_config
找到#Port 22
這一行,去掉注釋并修改為你選擇的端口號(例如2222):
Port 2222
為了防止root用戶直接通過SSH登錄,可以在sshd_config
文件中添加或修改以下配置:
PermitRootLogin no
使用公鑰認證比密碼認證更安全。首先,生成SSH密鑰對:
ssh-keygen -t rsa -b 4096
將公鑰復制到目標服務器的~/.ssh/authorized_keys
文件中:
ssh-copy-id user@remote_host
確保sshd_config
文件中啟用了公鑰認證:
PubkeyAuthentication yes
可以通過配置sshd_config
文件來限制特定IP地址或IP范圍的訪問:
AllowUsers user1 user2
或者限制IP范圍:
AllowUsers user1@192.168.1.0/24 user2@192.168.1.0/24
確保防火墻允許SSH連接:
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload
Fail2Ban可以防止暴力破解攻擊。安裝并配置Fail2Ban:
sudo yum install fail2ban -y
sudo systemctl start fail2ban
sudo systemctl enable fail2ban
編輯Fail2Ban的配置文件/etc/fail2ban/jail.local
,添加以下內容:
[ssh]
enabled = true
port = 2222
filter = sshd
logpath = /var/log/secure
maxretry = 3
bantime = 600
定期更新SSH軟件包以修復已知的安全漏洞:
sudo yum update openssh-server -y
確保SSH日志被正確記錄和監控。檢查/var/log/secure
文件以查看SSH連接嘗試和其他相關事件。
通過以上步驟,你可以顯著提高CentOS系統上SSH的安全性。記得定期檢查和更新你的安全配置,以應對新的威脅和漏洞。