問題現象
Linux執行個體啟動SSH服務失敗,導致無法通過SSH遠端連線。其系統日誌(/var/log/secure)中出現以下錯誤:
FAILED.
fatal: Cannot bind any address.
address family must be specified before ListenAddress.問題原因
SSH 設定檔/etc/ssh/sshd_config中的AddressFamily參數被設定為inet6,強制SSH服務僅監聽IPv6地址。當前系統未啟用IPv6支援,導致sshd服務因無法綁定到IPv6地址而啟動失敗。
解決方案
由於SSH服務異常,通過VNC方式登入執行個體,檢查並修正SSH設定檔。修改完成後重啟服務,驗證功能是否恢複正常。
通過VNC串連登入ECS執行個體。
訪問ECS控制台-執行個體。在頁面左側頂部,選擇目標資源所在的資源群組和地區。
進入目標執行個體詳情頁,單擊遠端連線,選擇通過VNC遠端連線。輸入帳號和密碼,登入ECS執行個體。
編輯SSH設定檔
/etc/ssh/sshd_config,找到AddressFamily inet6。配置SSH服務僅監聽IPv4地址。AddressFamily inet重啟SSH服務。
systemctl restart sshd.service
後續建議
若業務需要使用IPv6,應先為執行個體啟用並配置IPv6,成功後再將AddressFamily參數設為inet6。