22番ポートは、SSH(通信を暗号化してサーバーや機器を遠隔操作するしくみ)の既定のポートです。ファイル転送のSCPやSFTPも同じTCPの22番を通ります。つながるかはWindowsならTest-NetConnection、Linuxならncやssh -vで確かめられます。
この記事でわかること
- 22番ポートが何に使われているかと、23番(Telnet)との違い
- 相手の22番につながるかを確かめるコマンド(Windows・Linux)
- サーバーやCisco機器で22番が待ち受けているかの確かめ方
- 「Connection refused」などのエラー表示別の原因
- 22番を別の番号へ変えるときの手順と、締め出されないための順番
一次情報: RFC 4253「The Secure Shell (SSH) Transport Layer Protocol」(参照)/IANA「Service Name and Transport Protocol Port Number Registry」(参照)/Microsoft Learn「Get started with OpenSSH Server for Windows」(参照)※2026年10月時点
SSHでの機器操作は、CCNAの試験範囲にも入っている基本の作業です。CCNAの受験料・勉強時間と、取得後に求人の見え方がどう変わるかは別の記事にまとめました。
22番ポートとは?SSHの既定のポート
22番ポートとは、SSHの通信に使う既定のポート番号です。SSHは、離れた場所にあるサーバーやルーター・スイッチへログインし、コマンドで操作するためのしくみです。通信はすべて暗号化されます。
SSHの通信方式を定めたRFC 4253には、TCPで使うときサーバーは「ふつう22番で接続を待つ」と書かれています。sshコマンドで番号を書かなければ、自動でTCPの22番へつなぐのはこのためです。
IANAの登録簿でも22番はsshという名前で登録済みで、0〜1023番のウェルノウンポートに入ります。
SCP・SFTPも22番を通る
SCP(ファイルのコピー)とSFTP(ファイルの転送)は、SSHの暗号化された通り道の上で動くしくみです。専用の番号は持たず、同じ22番を使います。
「SFTPだけ通したい」と思っても、ファイアウォールで許可する対象は22番そのもの。逆に22番を閉じると、ログインとファイル転送が一緒に止まります。
23番(Telnet)・3389番(RDP)との違い
| 番号 | 名前 | 中身の暗号化 | 主な使い道 |
|---|---|---|---|
| 22(TCP) | SSH | あり | サーバー・ネットワーク機器のコマンド操作、SCP・SFTP |
| 23(TCP) | Telnet | なし(パスワードも読める) | 古い機器の操作、ポートの疎通確認 |
| 3389(TCP) | RDP | あり | Windowsの画面ごとの遠隔操作 |
ネットワーク機器の操作は、昔はTelnetが主流でした。今は中身が読めない22番のSSHへ切り替え、23番は閉じておく運用が一般的です。
相手の22番につながるか確かめる
「SSHでつながらない」と言われたら、最初に「22番まで届いているか」を見ます。ここで届いていなければネットワークの問題、届いていればログインや鍵の問題に分かれます。
| OS | コマンド | 成功の目印 |
|---|---|---|
| Windows | Test-NetConnection 192.0.2.10 -Port 22 | TcpTestSucceeded : True |
| Linux・Mac | nc -zv 192.0.2.10 22 | succeeded/open の表示 |
| Linux・Mac | nc 192.0.2.10 22 | 「SSH-2.0-」で始まる1行が返る |
| Windows・Linux・Mac | ssh -v user@192.0.2.10 | 「Connection established」の行 |
アドレスは説明用の値です。Test-NetConnectionはPowerShellで打つコマンドです。-Portで番号を指定すると、そのポートにTCPでつながるかを試して結果を返します。
「SSH-2.0-」の1行で、相手がSSHかがわかる
ncで-zを付けずに22番へつなぐと、相手のSSHサーバーが最初に名乗りの1行を送ってきます。この1行の書き出しは、RFC 4253で「SSH-2.0-」と決められた形式です。
$ nc 192.0.2.10 22
SSH-2.0-OpenSSH_9.6
この1行が出れば、22番で待っているのは確かにSSHのサーバーだと判断できます。末尾はソフトの名前と版で、機器ごとに違う部分です。何も返らずに切れる場合は、途中の機器が通信を止めているか、22番で別のソフトが待っている可能性があります。
ssh -vで、どこで止まったかを見る
ssh -vは、接続の途中経過を1行ずつ表示するオプションです。「Connecting to」の後に「Connection established」が出ればTCPはつながっています。その後で止まれば、鍵のやり取りかログインの段階です。
サーバー側で22番を確かめる
SSHサーバーを立てる側で見るのは、22番で待ち受けているかと、OSのファイアウォールが22番を通しているかの2点です。
| 環境 | コマンド | 見るところ |
|---|---|---|
| Linux | ss -tlnp(「:22」の行を探す) | LISTENの行と、プロセス名のsshd |
| Linux | systemctl status sshd(Ubuntuはssh) | active (running) の表示 |
| Windows(PowerShell) | Get-Service sshd | StatusがRunning |
| Windows(PowerShell) | Get-NetFirewallRule -Name OpenSSH-Server-In-TCP | EnabledがTrue |
| Cisco IOS | show ip ssh | SSH Enabled の表示 |
Windowsは、10(1809以降)とWindows Server 2019以降でOpenSSHサーバーを追加できます。Microsoftの資料によると、入れたときに自動で作られるのが「OpenSSH-Server-In-TCP」という受信規則で、22番の受信を許可する規則です。この規則が無効だと、接続は拒否されるかリセットされます。
Cisco機器はvtyでSSHを許可しているかを見る
ルーターやスイッチでは、遠隔ログインの入口を「line vty」で設定します。ここに「transport input ssh」があればSSHだけを受け付け、Telnetの23番は使えません。
Router# show running-config | section line vty
line vty 0 4
login local
transport input ssh
show ip sshでSSHが無効と出る場合は、ホスト名・ドメイン名の設定と、鍵(crypto key generate rsa)の作成が済んでいないことが多いです。
22番につながらないときの切り分け|エラー表示別
SSHのエラー表示は、どの段階で止まったかを教えてくれます。表示をそのまま読むのが一番の近道です。
| 表示 | 何が起きているか | 次に確かめること |
|---|---|---|
| Connection refused | 相手には届いたが、22番で誰も待っていない | sshdが動いているか、別の番号で待っていないか |
| Connection timed out | 返事が来ない。途中で捨てられている | ファイアウォール、ルーターの転送、IPアドレスの誤り |
| No route to host | 相手までの道が無い | 同じネットワークか、ゲートウェイの設定 |
| Permission denied | 22番まではつながっている | ユーザー名、パスワード、鍵の置き場所 |
| Host key verification failed | 相手の鍵が前回と違う | 機器の入れ替え・OSの入れ直しがあったか |
SSHが止まる段階は3つに分かれる
- ssh user@相手 を打ったとき
- 122番まで届くかrefused・timed out・No route が出る段階。ネットワークとサーバーの待ち受けを見る
- 2相手の鍵を受け入れるかHost key verification failed はこの段階で出る。相手が本当に同じ機器かを確かめる
- 3ログインできるかPermission denied はここで出る。ネットワークの問題ではない
1で止まるならネットワーク担当、3で止まるならアカウントの担当に回す。
図:エラー表示から、届く・鍵・ログインのどこで止まったかを読む
refusedとtimed outの違いは、切り分けで一番役に立ちます。refusedは相手のOSが「その番号は空いていない」と返事をしている状態です。届いてはいるので、ネットワークより先にサーバーの設定を疑います。timed outは返事そのものが無いので、途中のファイアウォールが先です。
「REMOTE HOST IDENTIFICATION HAS CHANGED」が出たとき
この警告は、前回つないだときと相手の鍵が変わったことを示します。機器の交換やOSの入れ直しが理由なら、手元の記録を消してつなぎ直せば解決します。
ssh-keygen -R 192.0.2.10
理由に心当たりがないときは、そのまま進めないでください。別の機器が同じアドレスを名乗っている可能性もあります。
22番を別の番号へ変えるときの手順
インターネットに出したサーバーの22番には、世界中からログインの試みが届きます。番号を変えるとその数は大きく減りますが、守りの本体は鍵での認証と接続元の制限です。番号の変更はログを静かにする補助と考えてください。
変えるときに一番怖いのは、自分が締め出されることです。新しい番号でつながるのを確かめてから22番を閉じる順番を守ります。
- sshd_configにPort 22とPort 2222の2行を書き、両方で待ち受ける
- sshd -tで設定の書き間違いがないかを確かめる
- ファイアウォールで新しい番号を許可する(ufw allow 2222/tcp、firewall-cmd –permanent –add-port=2222/tcp など)
- RHEL系でSELinuxが有効なら、semanage port -a -t ssh_port_t -p tcp 2222で番号を登録する
- sshdを再起動し、今の画面は閉じずに別の画面から ssh -p 2222 でつなぐ
- つながったら、Port 22の行を消して再起動し、ファイアウォールの22番も閉じる
番号は1024番以上で、ほかのソフトが使っていないものを選びます。2222番は例として使われることが多い番号です。
Ubuntu 22.10以降は、再起動のしかたが違う
Ubuntuの新しい版では、待ち受けをsystemdのソケット(ssh.socket)が受け持っています。sshd_configの番号を変えても、sshだけを再起動したのでは反映されません。
sudo systemctl daemon-reload
sudo systemctl restart ssh.socket
変えたあとはss -tlnpで、新しい番号のLISTENが出ているかを確かめておきます。
よくある質問
22番ポートはTCPですか、UDPですか?
SSHが使うのはTCPの22番です。ファイアウォールで許可するのもTCPの22番だけで足ります。IANAの登録簿にはUDPの22番も載っていますが、普段のSSHの通信では使われません。
SFTPだけを許可して、SSHのログインは禁止できますか?
ポート番号では分けられません。どちらも22番を通るためです。分けたいときは、sshd_configでユーザーごとにSFTP専用(ForceCommand internal-sftp など)に絞る方法を使います。
22番が開いているかを外から確かめるには?
Windowsなら「Test-NetConnection 相手のアドレス -Port 22」で、TcpTestSucceededがTrueなら開いています。自宅のサーバーなら、家のネットワークの中ではなく、スマホのモバイル回線など外側から試すと確実です。
22番ポートを開けたままにしても大丈夫ですか?
開けること自体が、ログインの入口を作ることになります。パスワードでのログインを止めて鍵だけにし、接続元のアドレスを絞り、使わない時期は閉じておく。これらを組み合わせて守るのが基本です。
ネットワーク機器でTelnetを止めてSSHだけにするには?
Cisco IOSなら、line vtyの設定で「transport input ssh」と書きます。これでvtyの入口はSSHだけになり、23番のTelnetは受け付けません。設定の前に、SSHでログインできることを先に確かめておきます。
まとめ
- 22番ポートはSSHの既定のポート。SCP・SFTPも同じTCPの22番を通る
- 届くかはTest-NetConnection -Port 22やnc、相手がSSHかは「SSH-2.0-」の1行で確かめる
- サーバー側はss -tlnpやGet-Service sshd、Cisco機器はshow ip sshとline vtyを見る
- refusedはサーバーの待ち受け、timed outは途中の経路、Permission deniedはログインを疑う
- 番号を変えるときは、新旧の両方で待ち受けてから22番を閉じる
SSHで機器に入れたら、次は経路表や設定の読み方です。ログイン後に打つコマンドを順に覚えていくと、障害の切り分けが速くなります。
SSHでサーバーにもネットワーク機器にも入る仕事は、ネットワークとサーバーの境目にあります。2つの職種で業務・年収・キャリアがどう違うかを整理した記事です。
免責事項
※本記事はRFC・IANAの登録簿・Microsoftの公式ドキュメントなどの公開情報をもとに整理したものです。コマンドの表示や挙動は、OSや機器のバージョン・環境によって変わる場合があります。業務で使う機器では、所属先の手順と各製品の最新資料をあわせてご確認ください。

