web-dev-qa-db-ja.com

Linuxで開いているポートの数を見つける方法は?

Linuxで開いているポートの数を見つける方法は?ポートが不足しているかどうかを確認したい。また、OSの制限を確認するにはどうすればよいですか?

17
erotsppa

最新のLinuxでは、ss(ソケット統計)ユーティリティを使用します。

$ ss -s
Total: 10160 (kernel 10262)
TCP:   10349 (estab 8886, closed 408, orphaned 0, synrecv 0, timewait 393/0), ports 3147

Transport Total     IP        IPv6
*         10262     -         -        
RAW       0         0         0        
UDP       5         5         0        
TCP       9941      9941      0        
INET      9946      9946      0        
FRAG      0         0         0        
27
Curtis Doty
netstat -an | grep ESTABLISHED | wc -l

開いているポートの数が表示されます。私の場合は32です。

cat /proc/sys/net/ipv4/ip_local_port_range

次のようなものを返します:

32768 61000

つまり、61000-32768-$ OPENPORTS = AvailablePorts

私の箱では、それ:

61000-32768-32 = 28200の使用可能なポート番号。

9
Grizly

他の人が述べたように、netstatは、現在使用されているポートを判別するために使用するツールです。制限については、使用可能なポートの数は16ビットの符号なし整数で、範囲は0〜65535です。アプリケーションがバインドするために使用できるポートは、予約済みの特権/ルートポート(0〜1024)に加えて、一時的なポート範囲でカバーされないものです。

cat /proc/sys/net/ipv4/ip_local_port_rangeを実行すると、エフェメラルポートを表示できます。

これを永続的に変更するには、/ etc/sysctl.confファイルに「net.ipv4.ip_local_port_range」を追加/変更するか、sysctl -n net.ipv4.ip_local_port_range="<start_port> <end_port>"を使用してインタラクティブに行う必要があります。

8
Alex

個人的に私はnmapを好みます。 nmap -P 1-65535 targetを発行すると、すべてのポートの状態を確認できます。ほとんどのディストリビューションでは、パッケージマネージャーからこのパッケージを入手できます。

1
ThaKidd KG5ORD

試す

# lsof -n -i -P 

完全を期すために:)

1
Yuri

端末で次のコマンドを使用して、すべてのポートを確認します

netstat -lntu

特定のポートのステータスを表示するには、次のコマンドを使用します

netstat -an | grep ':6060'

6060を特定のポート番号に置き換えます。

0
Samuel

netstatを使用すると、開いているポートを確認できます。「netstat-」を実行すると、ニーズに最適なポートを確認できます。

0
jer.salamon

'nmap localhost'は、開いているすべてのポートと、それらで実行されているサービスを提供します。

netstat -tulnp

Netstatプログラムの引数を以下に示します。

*

  t - Show TCP
*

  u - Show UDP
*

  l - Show only listening processes (netstat can show both listening and all established connections, i.e. as a client too)
*

  n - Do not resolve network IP address names or port numbers
*

  p - Show the process name that is listening on the port
0
Rajat