問題の説明
Linux インスタンスで Secure Shell Protocol (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 サポートが有効になっていないため、IPv6 アドレスにバインドできず、sshd サービスの起動に失敗します。
解決策
SSH サービスが正しく動作していないため、Virtual Network Computing (VNC) 接続を使用してインスタンスにログインし、SSH 構成ファイルを確認して変更します。ファイルを変更した後、サービスを再起動し、正しく動作していることを確認します。
VNC 接続を使用して ECS インスタンスにログインします。
ECS コンソール - インスタンス に移動します。上部のナビゲーションバーで、対象のリージョンとリソースグループを選択します。
対象インスタンスの詳細ページに移動します。[接続] をクリックし、[VNC] を選択します。ユーザー名とパスワードを入力して ECS インスタンスにログインします。
/etc/ssh/sshd_config構成ファイルを編集します。AddressFamily inet6の行を見つけて変更し、SSH サービスが IPv4 アドレスでのみリッスンするように構成します。AddressFamily inetSSH サービスを再起動します。
systemctl restart sshd.service
推奨事項
ビジネスで IPv6 が必要な場合は、まずインスタンスの IPv6 を有効にして構成します。IPv6 の構成が正常に完了したら、AddressFamily パラメーターを inet6 に設定できます。