查看 /etc/ssh/sshd_config 文件,確保以下兩條為 yes:
創(chuàng)新互聯(lián)專注于網(wǎng)站建設,為客戶提供成都網(wǎng)站制作、成都網(wǎng)站設計、網(wǎng)頁設計開發(fā)服務,多年建網(wǎng)站服務經(jīng)驗,各類網(wǎng)站都可以開發(fā),品牌網(wǎng)站制作,公司官網(wǎng),公司展示網(wǎng)站,網(wǎng)站設計,建網(wǎng)站費用,建網(wǎng)站多少錢,價格優(yōu)惠,收費合理。RSAAuthentication yes
PubkeyAuthentication yes
一般它們默認都是 yes,如果不是,請修改為 yes,保存并且重啟 SSH 服務:
$ sudo service ssh reload
3. 禁止密碼安全驗證編輯 /etc/ssh/sshd_config 文件,確保以下內(nèi)容出現(xiàn)在文件中:
ChallengeResponseAuthentication no
PasswordAuthentication no
UsePAM no
保存并重啟 SSH 服務:
$ sudo service ssh restart
如果你當前處于 SSH 連接登錄狀態(tài),可能重啟服務會失敗,可以嘗試重啟系統(tǒng)。
4. 禁止特定條件使用密碼登錄有時我們并不想禁止所有用戶的口令登錄,可以通過配置 sshd_config 文件來實現(xiàn)對特定對象的登錄設置。
使用 $ man sshd_config 查看幫助信息。sshd_config 支持在文件中增加 Match 區(qū)塊,如果 Match 關鍵字所在行的條件匹配成功,則 Match 后所有的關鍵字將被逐個加載,直到遇見另一個 Match 關鍵字或者文件結尾。所以一般 Match 區(qū)塊添加在 sshd_config 文件末尾。
Match 關鍵字支持的條件包括 User, Group, Host 和 Address,條件樣式是單個字符串,多個樣式使用逗號分隔,也可以使用通配符(*)和求反符號(!)。
Address 條件樣式可以是 CIDR(地址/掩碼)格式,例如:192.0.2.0/24 或 3ffe:ffff::/32。
例如禁止用戶 foo,用戶組 bar 使用口令登錄,在 /etc/ssh/sshd_config 文件末尾添加以下內(nèi)容:
Match User foo, Group bar
PasswordAuthentication no
禁止除用戶 foo 以外其他用戶使用口令登錄:
Match User *, !foo
PasswordAuthentication no
Match 區(qū)塊支持的關鍵字包括:
AllowAgentForwarding, AllowTcpForwarding, AuthorizedKeysFile, AuthorizedPrincipalsFile, Banner, ChrootDirectory, ForceCommand, GatewayPorts, GSSAPIAuthentication, HostbasedAuthentication, HostbasedUsesNameFromPacketOnly, KbdInteractiveAuthentication, KerberosAuthentication, MaxAuthTries, MaxSessions, PasswordAuthentication, PermitEmptyPasswords, PermitOpen, PermitRootLogin, PermitTunnel, PubkeyAuthentication, RhostsRSAAuthentication, RSAAuthentication, X11DisplayOffset, X11Forwarding, X11UseLocalHost.
sshd_config 文件內(nèi)容大小寫敏感,編輯該文件一定要小心仔細,如有不慎可能導致 SSH 服務器無法啟動。如果你的主機就在你身邊,你也許還可以從歡迎界面登錄來修復錯誤,如果你只能通過 SSH 遠程登錄主機,Wooo~ 那就只能祝你好運了。