このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。
新Linuxコマンド演習59

新Linuxコマンド演習59 概要
「新Linuxコマンド演習59」では、
ネットワークを介してリモートサーバーに安全に接続するための基本コマンドである sshコマンド(Secure Shell) の使用方法を学びます。
SSHは暗号化された通信を提供し、リモート管理やファイル転送の安全な手段としてLinux環境で標準的に使用されています。
この演習では、SSHの初回接続時の認証手順、再接続時の流れ、接続終了操作など、リモートアクセスの基本操作を実践的に理解します。

コマンド概要
| コマンド | 主な用途 | 特徴 | 主なオプション |
|---|---|---|---|
| ssh | リモートホストに安全に接続 | 通信を暗号化し、パスワードやコマンドを安全に送信可能 | -p(ポート番号指定) -i(鍵ファイル指定) -v(詳細モード) |
| ip address show | ネットワークインターフェースの状態確認 | IPアドレスなどを確認するコマンド | 無し(またはインターフェース名を指定) |
| ping | ネットワーク疎通確認 | 対象ホストとの接続確認に使用 | -c(回数指定) |
表の説明
sshコマンドは、安全な通信チャネルを確立し、暗号化されたプロトコルでリモートシステムにログインします。
ip address show や ping は SSH接続前の事前確認として、ネットワークの状態や疎通を確認するために使用されます。
演習問題+模範解答例
演習01:自分のPCのIPアドレスを確認する
問題
自身のマシンのIPアドレスを確認してください。
模範解答例
[suzuki@AlmaLinux ~]$ ip address show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 08:00:27:f8:25:ac brd ff:ff:ff:ff:ff:ff
inet 10.0.2.15/24 brd 10.0.2.255 scope global dynamic noprefixroute enp0s3
valid_lft 85899sec preferred_lft 85899sec
inet6 fd17:625c:f037:2:a00:27ff:fef8:25ac/64 scope global dynamic noprefixroute
valid_lft 86246sec preferred_lft 14246sec
inet6 fe80::a00:27ff:fef8:25ac/64 scope link noprefixroute
valid_lft forever preferred_lft forever解説
ネットワークインターフェース enp0s3 に割り当てられた inet の値(例:10.0.2.15)がIPアドレスです。
SSH接続に使用するため、確認しておきます。
演習02:pingコマンドで疎通確認を行う
問題
自分のホスト(10.0.2.15)に対してpingを実行し、応答を確認してください。
模範解答例
[suzuki@AlmaLinux ~]$ ping -c 4 10.0.2.15
PING 10.0.2.15 (10.0.2.15) 56(84) bytes of data.
64 バイト応答 送信元 10.0.2.15: icmp_seq=1 ttl=64 時間=0.072ミリ秒
64 バイト応答 送信元 10.0.2.15: icmp_seq=2 ttl=64 時間=0.057ミリ秒
64 バイト応答 送信元 10.0.2.15: icmp_seq=3 ttl=64 時間=0.042ミリ秒
64 バイト応答 送信元 10.0.2.15: icmp_seq=4 ttl=64 時間=0.084ミリ秒
--- 10.0.2.15 ping 統計 ---
送信パケット数 4, 受信パケット数 4, 0% packet loss, time 3059ms
rtt min/avg/max/mdev = 0.042/0.063/0.084/0.015 ms解説
pingコマンドはICMPパケットを送受信して通信可能か確認します。
自ホストへのpingで応答があることを確認できれば、基本的なネットワーク接続は問題ありません。
演習03:SSHで初回接続する
問題
リモートホスト「10.0.2.15」にユーザーtanakaで初回SSH接続してください。
模範解答例
[suzuki@AlmaLinux ~]$ ssh tanaka@10.0.2.15
The authenticity of host '10.0.2.15 (10.0.2.15)' can't be established.
ED25519 key fingerprint is SHA256:N3+a6TS/PmMLOm3mCnCSvDio06LM3vQyEWyRrkmpd0I.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '10.0.2.15' (ED25519) to the list of known hosts.
tanaka@10.0.2.15's password: # パスワードの入力
Last login: Sun Dec 7 22:55:41 2025
[tanaka@AlmaLinux ~]$ 解説
初回接続ではホストキーが未登録のため警告が表示されます。
「yes」と入力してホストを信頼し、パスワード認証でログインします。
ホストキーは ~/.ssh/known_hosts に保存され、2回目以降は確認不要となります。
演習04:SSH接続を終了する
問題
SSHセッションを終了してください。
模範解答例
[tanaka@AlmaLinux ~]$ exit
ログアウト
Connection to 10.0.2.15 closed.
[suzuki@AlmaLinux ~]$ 解説
exitコマンドでSSHセッションを終了します。
接続が切断され、元のsuzukiユーザーのシェルに戻ります。
演習05:SSHで2回目以降の接続を行う
問題
再度「10.0.2.15」にユーザーtanakaとしてSSH接続して、SSH接続を確認したらログアウトしてください。
模範解答例
[suzuki@AlmaLinux ~]$ ssh tanaka@10.0.2.15
tanaka@10.0.2.15's password:
Last login: Mon Dec 8 00:17:24 2025 from 10.0.2.15
[tanaka@AlmaLinux ~]$ exit
ログアウト
Connection to 10.0.2.15 closed.
[suzuki@AlmaLinux ~]$ 解説
2回目以降の接続では、既にホストキーが登録されているため警告は表示されません。
パスワード認証のみでログインできます。
演習06:鍵認証によるSSH接続を行う(応用)
問題
tanakaでログインして、鍵認証によるSSH接続を tanakaでできるように設定してください。
模範解答例(手順)
[suzuki@AlmaLinux ~]$ su - tanaka
パスワード:
[tanaka@AlmaLinux ~]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/tanaka/.ssh/id_rsa): # Enterキー
Created directory '/home/tanaka/.ssh'.
Enter passphrase (empty for no passphrase): # パスフレーズの入力
Enter same passphrase again: # 再度パスフレーズの入力
Your identification has been saved in /home/tanaka/.ssh/id_rsa
Your public key has been saved in /home/tanaka/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:qw4++oa1cYWEE4uve9I38p3euxFOZuO/UWeOv56xzvs tanaka@AlmaLinux
The key's randomart image is:
+---[RSA 3072]----+
| .o |
| .o.. |
| . .o . |
| . . . |
| . .S * . o|
| .o . B o . = |
| .+.+ . + . ...|
| ooB.oo o o ...+|
| o*o*+o+ +oo.oOE|
+----[SHA256]-----+
[tanaka@AlmaLinux ~]$ ssh-copy-id tanaka@10.0.2.15
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/tanaka/.ssh/id_rsa.pub"
The authenticity of host '10.0.2.15 (10.0.2.15)' can't be established.
ED25519 key fingerprint is SHA256:N3+a6TS/PmMLOm3mCnCSvDio06LM3vQyEWyRrkmpd0I.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
tanaka@10.0.2.15's password: # パスワードの入力
Number of key(s) added: 1
Now try logging into the machine, with: "ssh 'tanaka@10.0.2.15'"
and check to make sure that only the key(s) you wanted were added.
[tanaka@AlmaLinux ~]$ ssh tanaka@10.0.2.15
Enter passphrase for key '/home/tanaka/.ssh/id_rsa': # パスフレーズの入力
Last login: Mon Dec 8 01:08:58 2025 from 10.0.2.15
[tanaka@AlmaLinux ~]$
[tanaka@AlmaLinux ~]$ exit
ログアウト
Connection to 10.0.2.15 closed.
[tanaka@AlmaLinux ~]$ 解説
ssh-keygenで鍵ペアを作成し、ssh-copy-idで公開鍵をサーバーに登録します。
以後、パスフレーズの入力することで、パスワードを入力せずにぱ安全な接続が可能です。
まとめ
新Linuxコマンド演習59では、
SSHによる安全なリモート接続の仕組みと基本操作を学びました。
初回接続時のホスト認証、再接続、接続終了、鍵認証方式を理解することで、安全かつ効率的なリモート管理が可能になります。
| 学習ポイント | 内容 |
|---|---|
| sshコマンド | セキュアなリモート接続を行うための基本コマンド |
| 初回接続時のホスト認証 | 正規サーバーとの安全な通信を保証 |
| 鍵認証 | パスワード入力なしで安全にログイン可能 |
| AlmaLinux 9.6の特徴 | OpenSSHが標準搭載。設定ファイルは/etc/ssh/sshd_config |
