Virtual Box
上のUbuntu Desktop 20.04
でopenssh-server
をインストールして、systemctl enable ssh
でOS起動時にSSHサービスが起動するようにしたところ、Ubuntuのリブート後にホストOSからsshログインを試すと以下のエラーが出てログインできなかった。
有効にならなかったのかな?と思い、Virtual Box
のディスプレイから直接Ubuntuにログインし、systemctl status ssh
すると、エラーになっており、起動しようとした痕跡はあった。
以下の行のエラー内容を見る限り、起動時にIPアドレスにバインドする時に失敗しているみたいだった。
調べたところ、sshd failed due to network not yet availableが見つかった。
sshdの設定でリッスンするIPアドレスを指定した状態で、IPアドレスが利用可能になる前にsshdが起動してしまったときに起きるらしい。
デフォルトは0.0.0.0
が設定されているため、特定のIPに依存せず問題ないようだ。
確かに、ホストオンリーアダプターのIPアドレスに限定した記憶があるので、以下の手順を試してみたところ解決した。
詳しく調べていないが、After=network-online.target
ということなので、ネットワークが使用可能になってからsshdサービスを起動する設定のようだ。
Ubuntu をリブートしてみると、無事SSHできるようになった。