ポート番号22で使われる通信プロトコルSSHの概要をまとめました。
SSHの概要
SSHはSecure Shellの略語です。
IETFが定めるRFCは以下です。
SSHはリモート接続に使われる通信プロトコル
通信プロトコルとは、通信の約束・ルールです。こういう通信をしますよ、という決まりです。
SSHは、パソコン同士、パソコンからサーバーへ、など通信を利用して離れた場所から接続するときに使用する通信プロトコルです。
SSHは暗号化された通信を確立する
SSHはSecure Shellの略語です。Secureという英単語は「安全な」という意味です。
https://ejje.weblio.jp/content/secure]
通信を暗号化して通信するので、安全な接続を確立します。
Telnetとの違い
TelnetとSSHの違いは、ポート番号と、SSHは暗号化されているという点です。
「TELNET」と「SSH」の最大の違いとして、「TELNET」はホスト間の通信を、そのまま状態で行なうのに対し、「SSH」はコンピュータ間の通信を暗号化して行ないます。「TELNET」での通信は暗号化が行なわれていないので、パケットキャプチャー(ネットワーク上に流れるパケットを解析、表示する)ソフトで「パスワードの盗聴」等をされてしまう危険があります。それに対して「SSH」は暗号化した状態で通信を行なっているので、「TELNET」と比較するとセキュリティ面での信頼が高いです。そのため現状のLinux OSでは、リモート接続に「TELNET」ではなく「SSH」が標準で使用されます。
プロトコル | ポート番号 | 暗号化 |
SSH | 22 / TCP | 対応 |
TELNET | 23 / TCP | 非対応 |
Tera TermでLinuxにリモート接続する際に使うプロトコル
Tera TermでLinuxに接続する際に使用している通信プロトコルはSSHです。
LinuxのファイヤウォールでSSHが使用できなくなっている場合などにはTera TermでLinuxにリモート接続することができません。
SSHで使用する鍵
SSHは、暗号化アルゴリズムを使用します。
サーバー側で使用する暗号化アルゴリズムとクライアント側で使用する暗号化アルゴリズムが一致していないと、鍵の作成ができずにSSH接続に失敗します。
RHEL9.5では以下の暗号化鍵に対応しています。
RHEL9.5サーバー側で対応する暗号化アルゴリズム
RHEL9.5をサーバー側として使用する際に暗号鍵作成時に対応している暗号化アルゴリズムは以下のコマンドで出力できます。
# ssh d -T | grep Hostkey
RHEL9.5クライアント側で対応する暗号化アルゴリズム
RHEL9.5がクライアント側となってSSHで通信する際の鍵作成に対応している暗号化アルゴリズムは以下で表示できます。
# ssh -Q key
SSHが使用される場面
SSHが使用されているのは以下のような場面です。
- LinuxにTera Termでリモート接続する
- Ciscoのネットワーク機器にTera Termでリモート接続する
- Windows、Linux等にWinSCP等でファイルの転送を行う
- 他
SSH SCPとSSH SFTPの違い
Tera TermやWimSCPでファイルを転送する際にもSSHを使用します。厳密にはSSH SCP、SSH SFTPを使用します。SSH, SSH SCP, SSH SFTPはすべて同じポート番号22 / TCPです。
SSH SCP
SCP (Secure Copy Protocol)はファイル転送やリモートコマンドの実行ができるプロトコルです。
SSH SFTP
SFTP (Secure File Transfer Protocol) はSSHをベースにしたファイル転送プロトコルで、データの暗号化や認証機能があります。