1. 檢查 SSH 服務(wù)狀態(tài)
首先,確保SSH服務(wù)正在運(yùn)行。
sudo systemctl status ssh
如果 SSH 服務(wù)未運(yùn)行,啟動(dòng)服務(wù):
sudo systemctl start ssh
如果希望 SSH 服務(wù)在每次系統(tǒng)啟動(dòng)時(shí)自動(dòng)啟動(dòng),可以輸入:
sudo systemctl enable ssh
2. 檢查 SSH 配置文件
確認(rèn) SSH 配置文件 /etc/ssh/sshd_config 中的配置是正確的
sudo vi /etc/ssh/sshd_config
確保以下行沒有被注釋,并且端口設(shè)置正確:
Port 22PermitRootLogin yesPasswordAuthentication yes
保存并關(guān)閉文件后,重新啟動(dòng) SSH 服務(wù)以應(yīng)用更改:
sudo systemctl restart ssh
3. 檢查防火墻設(shè)置
確保防火墻沒有阻止 SSH 連接。
查看防火墻狀態(tài):
sudo ufw status
允許 SSH 通過防火墻:
sudo ufw allow ssh
或者
sudo ufw allow 22/tcp
啟用防火墻(如果尚未啟用):
sudo ufw enable
4. 檢查網(wǎng)絡(luò)連接
確保您可以從客戶端機(jī)器連接到服務(wù)器的 IP 地址:
ping <服務(wù)器IP地址>
5. 查看 SSH 日志
查看 SSH 日志文件,以獲取更多關(guān)于連接失敗的詳細(xì)信息:
sudo tail -f /var/log/auth.log
6. 檢查用戶權(quán)限
確保您嘗試登錄的用戶存在,并且具有正確的權(quán)限。
檢查用戶是否存在:
id <用戶名>
7. 檢查 SSH 客戶端配置
確保您的 SSH 客戶端配置正確,并且指向正確的端口和用戶。例如:
ssh -p 22 <用戶名>@<服務(wù)器IP地址>
8. 測(cè)試本地連接
在服務(wù)器上,嘗試從本地連接到 SSH 服務(wù),以確保 SSH 服務(wù)正常運(yùn)行:
ssh <用戶名>@localhost
9. 重新安裝 OpenSSH
如果上述步驟均無(wú)效,您可以嘗試重新安裝 OpenSSH 服務(wù):
sudo apt-get remove --purge openssh-server
sudo apt-get install openssh-server
sudo systemctl start ssh