このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。

Linuxコマンドの基本:リモートログインとSSH

リモートログインとSSH

 ここでは、ネットワークを介して遠隔地にあるLinuxマシンへアクセスするための基本手法であるリモートログインと、その主要な手段であるSSHについて解説します。

リモートログイン手段としてのSSH

 リモートログインを実現する方法はいくつかありますが、現代のCLI環境では主にSSH(Secure Shell)が用いられます。SSHは以下の点で優れています。

  • 認証と暗号化機能:パスワードや通信内容を暗号化し、安全な接続を確保
  • 標準ポート22番の利用:ファイアウォール設定やネットワーク設定が比較的容易
  • 多用途性:リモートログイン以外にも、ファイル転送(SCP/SFTP)やポート転送などの用途にも利用可能

 Linuxでは多くの場合、標準でSSHクライアント(sshコマンド)がインストールされているため、特別な準備なしに遠隔地のマシンへ接続できます。

WindowsでのSSH利用

 Windows環境からSSH接続する場合は、標準でSSHクライアントが存在しないことが多いため、PuTTYやTera Termといったサードパーティツールをインストールします。

macOSでは、sshコマンドがデフォルトで用意されているため、追加インストールは不要です。

リモートログインの実践

ネットワークの構成は下図のように構成し、Ubuntu1からUbunt2へSSHでリモートログインします。

1.ネットワーク設定を確認

仮想マシンの「Ubuntu1」と「Ubuntu2」のネットワークアダプターの設定を変更します。

 VirtualBoxマネージャーの設定から、仮想マシンの「Ubuntu1」と「Ubuntu2」のネットワークアダプターを「ブリッジアダプター」に変更します。

2.アクセス先のIPアドレスを確認

ip addr showコマンドでターゲットUbuntu(Ubuntu2)のIPアドレスを特定します。

 VirtualBox上でUbuntuを動かしている場合のNICは、enp0s3なので、Ubuntu2のenp0s3のIPv4アドレスを確認します。以下のコマンドを実行します。

user01@Ubuntu2:~$ ip addr show
...(省略)...
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 08:00:27:1a:84:ef brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.190/24 brd 192.168.1.255 scope global noprefixroute enp0s3
...(省略)...

IPアドレスが192.168.1.190であることが判明。

3.SSHコマンドでログイン

Ubuntu1からUbuntu2(192.168.1.190)へ以下のコマンドで接続します。

【書式】
ssh <ログインユーザ名>@<宛先IPアドレス>

Ubuntu1からUbuntu2(192.168.1.190)に対してsshログインします。

user01@Ubuntu1:~$ ssh user01@192.168.1.190

・SSHの公開鍵認証が設定されている場合

 パスワードを入力するウィンドウが表示されます。パスワード「例:pa55word」を入力して「ロックを解除」します。

Ubuntu2上にログインできます。


まとめ

  • リモートログインは、ネットワーク越しに遠隔地のLinuxマシンへアクセスできる強力な手段であり、システム運用・管理を大幅に効率化します。
  • SSHは認証と暗号化を備えたプロトコルで、リモートログインをセキュアかつ簡便に実現します。
  • Linux/macOSではsshコマンドが標準的に利用可能。WindowsではPuTTYやTera termなどのソフトを用いてSSH接続を行えます。

 これらの基礎を理解することで、場所や環境に縛られず、柔軟かつ迅速なサーバ管理・運用が可能になります。