在Ubuntu系統中,可以通過配置SSH服務來提高安全性。以下是一些常見的安全策略設置:
默認情況下,SSH使用端口22。為了減少被掃描和攻擊的風險,可以將SSH端口更改為一個不常用的端口。
編輯SSH配置文件:
sudo nano /etc/ssh/sshd_config
找到并修改以下行:
Port 22
將其更改為其他端口號,例如:
Port 2222
保存并退出編輯器,然后重啟SSH服務:
sudo systemctl restart sshd
為了防止直接通過SSH登錄root賬戶,可以禁用root登錄。
編輯SSH配置文件:
sudo nano /etc/ssh/sshd_config
找到并修改以下行:
PermitRootLogin yes
將其更改為:
PermitRootLogin no
保存并退出編輯器,然后重啟SSH服務:
sudo systemctl restart sshd
使用公鑰認證比密碼認證更安全??梢陨蒘SH密鑰對并將公鑰添加到服務器的authorized_keys
文件中。
在本地機器上生成SSH密鑰對:
ssh-keygen -t rsa -b 4096
將公鑰復制到服務器:
ssh-copy-id user@server_ip -p 2222
編輯SSH配置文件以禁用密碼認證:
sudo nano /etc/ssh/sshd_config
找到并修改以下行:
PasswordAuthentication yes
將其更改為:
PasswordAuthentication no
保存并退出編輯器,然后重啟SSH服務:
sudo systemctl restart sshd
可以通過配置sshd_config
文件來限制特定用戶或IP地址的登錄。
例如,限制特定IP地址登錄:
AllowUsers user@192.168.1.100
或者限制特定用戶登錄:
AllowUsers user1 user2
保存并退出編輯器,然后重啟SSH服務:
sudo systemctl restart sshd
使用防火墻(如ufw
)來限制對SSH端口的訪問。
啟用防火墻:
sudo ufw enable
允許特定端口(例如2222)的訪問:
sudo ufw allow 2222/tcp
查看防火墻狀態:
sudo ufw status
定期更新系統和SSH服務以修補安全漏洞,并定期審計SSH配置文件和日志文件以確保沒有異?;顒?。
通過以上步驟,可以顯著提高Ubuntu系統中SSH服務的安全性。