LoginSignup
0
0

More than 1 year has passed since last update.

[Linux]ポート疎通確認

Posted at

概要

  • ある特定のポートでリッスンする(はずの)サービスをEC2上で起動している
  • EC2にはEIPを割り当てて外部公開もしている。
  • セキュリティグループ,ネットワークACL,iptablesも設定して、特定のIPをアクセス元とする特定のポートに対するアクセスのみを許可している。

というような状態で、外部からの疎通確認をしたいときに。

1. サーバー内での各ポートのリッスン状況を確認

# リッスンしているポート番号の確認
netstat -atn | grep LISTEN
=>
Proto Recv-Q Send-Q Local Address   Foreign Address   State
tcp        0      0 0.0.0.0:22      0.0.0.0:*         LISTEN
tcp6       0      0 :::22           :::*              LISTEN
※↑はIPv4, IPv6のポート22でリッスンしてるものがある状態

# ポートをリッスンしているコマンドの確認
lsof -i:<ポート番号> | grep LISTEN
COMMAND PID   USER   FD   TYPE  DEVICE   SIZE/OFF NODE NAME
sshd    2600  root   3u   IPv4  19658    0t0      TCP  *:ssh (LISTEN)
sshd    2600  root   4u   IPv6  19660    0t0      TCP  *:ssh (LISTEN)
※↑はsshdというプロセスが入力したポート番号のポートをリッスンしている状態

※tcp6やIPv6のみが表示されていても、IPv4側のポートも空いている可能性あり(サービスによる)
参考: https://qiita.com/fetaro/items/d5164ba8271114d8a0c8

2. 外部 → EC2 へ特定ポートでアクセスできるかを確認

# 許可しているアクセス元のIPから
nc -vz <EC2インスタンスのパブリックIPアドレス> <ポート番号>

# 特定ポートをリッスンするサービスの起動前に、そもそも特定IPから特定ポートへのアクセスが可能であるかを確認する場合は、
# サーバー内で↓を実行しておいた上で、↑を実行する。正常にアクセスできたら↓のプロセスが終了する
nc -l <ポート番号>
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0