1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

初学者向け:VirtualBox上に構築したUbuntu Server 24.04.1 LTSへのSSH接続方法

Last updated at Posted at 2024-12-31

はじめに

自宅のホームラボ環境に新たにUbuntuを導入しました。導入のきっかけは、これまでRed Hat(rpm系)を中心にLinuxを扱っていましたが、改めてDebian系のLinuxについても学びたいと思ったからです。

ただ、ホストOSであるWindows 11のスペックが限界に近かったため、軽量版を選んで導入することにしました。

当初は、ターミナルやTera TermなどのSSHソフトを使用して作業を進める予定でしたが、そもそもSSH接続ができないというエラーに直面しました。

本記事では、その原因特定から解決方法までをまとめてご紹介します。

前提知識

今回は主にSSHの設定に関する内容を中心に解説します。

VirtualBoxやUbuntuに関しての基礎知識については、以下の記事をご参考ください。

VirtualBox関連の記事

SSH関連の記事

Ubuntu関連の記事

困っていたこと

1年前にVirtualBoxにAlmaLinuxを導入した際は、SSH周りの設定を特に意識することなく利用できていました。

しかし、今回はDebian系のUbuntuを導入する中で、SSH接続ができない問題に直面しました。

原因として、フルバージョンのISOイメージではなく軽量バージョンのISOイメージを使用したため、SSH関連のパッケージが初期状態でインストールされていなかった可能性が考えられます(あくまで推測)。

クライアント側での状況
以下のコマンドで接続を試みましたが、接続が拒否されるエラーが発生しました。

➜  ~ git:(main) ✗ ssh root@192.168.1.7
ssh: connect to host 192.168.1.7 port 22: Connection refused
➜  ~ git:(main) ✗ ssh honda@192.168.1.7
ssh: connect to host 192.168.1.7 port 22: Connection refused
➜  ~ git:(main)

サーバー側での状況

サーバー側でSSHサービスのステータスを確認したところ、以下のように ssh.service が見つからないというエラーメッセージが表示されました。

root@honda-ubuntu:~# systemctl status ssh
Unit ssh.service could not be found.
root@honda-ubuntu:~#

これは、SSHサーバー(ssh)がシステムにインストールされていないか、または有効化されていないことを示しています。

原因特定してみた

まず、SSHサーバーがインストールされているかを確認しました。

sudo apt list --installed

Listing... Done と表示された場合、SSHサーバー(openssh-server)はインストールされておらず、インストール可能な状態であることを示しています。

今回は、2029年4月までサポートが保証されている Ubuntu Server 24.04.1 LTS を使用しています。

結論として、VirtualBox上のCLIを使用して openssh-server をインストールすることで問題は解決します。

実際に解決してみた

Ubuntuでは、apt コマンドを使用して openssh-server をインストールします。

以下の手順で解決しました。

1. SSHサーバーのインストール

まず、必要なパッケージをインストールします。

sudo apt update
sudo apt install -y openssh-server

2. サービスの有効化と起動

次に、SSHサーバーを有効化して起動します。

sudo systemctl enable ssh
sudo systemctl start ssh

3. サービスのステータス確認

SSHサーバーが正常に動作しているか、以下のコマンドで確認します。

sudo systemctl status ssh

実際の出力結果
以下は、ステータス確認コマンドの実行結果です。

root@honda-ubuntu:~# sudo systemctl status ssh
● ssh.service - OpenBSD Secure Shell server
     Loaded: loaded (/usr/lib/systemd/system/ssh.service; disabled; preset: enabled)
     Active: active (running) since Tue 2024-12-31 00:13:56 UTC; 15min ago
TriggeredBy: ● ssh.socket
       Docs: man:sshd(8)
             man:sshd_config(5)
    Process: 1510 ExecStartPre=/usr/sbin/sshd -t (code=exited, status=0/SUCCESS)
   Main PID: 1512 (sshd)
      Tasks: 1 (limit: 2276)
     Memory: 2.4M (peak: 3.3M)
        CPU: 85ms
     CGroup: /system.slice/ssh.service
             mq1512 "sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups"

Active: active (running) と表示されていれば、SSHサーバーは正常に動作しています。

4. 再度SSH接続を試行

SSH接続を再度試みた結果、以下のように無事に接続できました。

ssh root@<サーバーのIPアドレス>

実際の出力結果
以下は、コマンドの実行結果です。

➜  ~ git:(main)sudo ssh honda@192.168.1.7
honda@192.168.1.7's password: 
Welcome to Ubuntu 24.04.1 LTS (GNU/Linux 6.8.0-51-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Tue Dec 31 12:31:35 AM UTC 2024

  System load:  0.0                Processes:               113
  Usage of /:   38.6% of 11.21GB   Users logged in:         1
  Memory usage: 10%                IPv4 address for enp0s3: 192.168.1.7
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

70 updates can be applied immediately.
To see these additional updates run: apt list --upgradable

Enable ESM Apps to receive additional future security updates.
See https://ubuntu.com/esm or run: sudo pro status


Last login: Tue Dec 31 00:14:22 2024 from 192.168.1.9
honda@honda-ubuntu:~$ uname -n
honda-ubuntu
honda@honda-ubuntu:~$ 

無事にSSH接続が成功し、作業できる環境が整いました!良かったです(笑)。

まとめ

今回は、SSH接続ができない問題の原因特定から解決までを紹介しました。

このような問題でつまずき、構築を諦めてしまうこともあるかもしれませんが、自分でエラーを確認し、原因を特定して解決する経験は、今後のスキル定着にもつながります。

悩むことは成長の糧となりますので、諦めずに解決に向き合っていくことが大切です。

この記事が、同じような問題に直面した方の技術的な支えになれば幸いです!

おまけ:今後のこのサーバーの活用について

今回、SSH接続を解決したこのサーバーは、今後Ansibleのクライアントサーバーとして活用する予定です。

そのため、最低限の軽量なISOイメージを使用して構築しました。

ただし、自宅ラボの環境が充実してきたことで、ホストOSであるWindows 11のリソースが限界に近づいている状況です(笑)。

そのため、物理的なサーバーの購入も検討しています。

これからも自宅ラボ環境を進化させ、より効率的な検証を行っていきたいと思います!

関連記事

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?