「ポート番号」はネットワーク通信において「どのアプリケーションへの通信か」を区別する番号です。サーバー構築・ファイアウォール設定・トラブルシューティングで必ず登場します。
ポート番号とは?
IPアドレスが「建物の住所」なら、ポート番号は「部屋番号」です。同じサーバー(IPアドレス)でもポート番号によってWebサーバー・SSH・データベースなど異なるサービスを区別できます。ポート番号は0〜65535の範囲で使われます。
| 範囲 | 名称 | 説明 |
|---|---|---|
| 0〜1023 | ウェルノウンポート | HTTP・SSH・FTPなど標準サービス用(root権限が必要) |
| 1024〜49151 | 登録済みポート | MySQL・PostgreSQL・Redisなどミドルウェア用 |
| 49152〜65535 | 動的ポート(エフェメラルポート) | クライアント側が一時的に使用 |
よく使うポート番号一覧
| ポート | プロトコル | 用途 | TCP/UDP |
|---|---|---|---|
| 22 | SSH | 安全なリモートログイン・ファイル転送(SCP・SFTP) | TCP |
| 25 | SMTP | メール送信 | TCP |
| 53 | DNS | 名前解決 | TCP・UDP |
| 67・68 | DHCP | IPアドレスの自動割り当て | UDP |
| 80 | HTTP | Web通信(暗号化なし) | TCP |
| 110 | POP3 | メール受信 | TCP |
| 143 | IMAP | メール受信(サーバー管理型) | TCP |
| 443 | HTTPS | Web通信(TLS暗号化あり) | TCP |
| 3306 | MySQL | MySQLデータベース | TCP |
| 5432 | PostgreSQL | PostgreSQLデータベース | TCP |
| 6379 | Redis | Redisキャッシュ | TCP |
| 8080 | HTTP Alternate | 開発環境・プロキシでよく使われる | TCP |
Linuxでポートを確認するコマンド
# 使用中のポートを一覧表示
ss -tlnp # TCP listening(プロセス名付き)
ss -ulnp # UDP listening
# 特定ポートの使用状況
ss -tlnp | grep :80
ss -tlnp | grep :443
# 古いlsofコマンドでも確認可能
lsof -i :80
# 外部から特定ポートが開いているか確認
nc -zv 192.168.1.10 22
nmap -p 22,80,443 192.168.1.10「サーバーを立てたのにアクセスできない」というトラブルの多くは、「サービスが起動しているか」「ポートがLISTEN状態か」「ファイアウォールで許可されているか」の3点で解決します。ss -tlnpは覚えておくと必ず役に立ちます。
hobbyshift管理人
まとめ
- ポート番号はサーバー上で動く複数サービスを区別するための番号(0〜65535)
- 0〜1023はウェルノウンポートで標準的なサービスが使用する
- ss -tlnpでLISTEN中のポートとプロセスを確認できる
- nc -zv・nmapで外部からポートの開放状態を確認できる


コメント