it-swarm.com.de

So erhalten Sie die Liste der Ports, die auf einem Unix-Server frei sind

Ich muss wissen, welche Ports in meinem Solaris-Computer für jede Art von Netzwerkkommunikation frei sind.

Ich habe versucht, die netstat -a Befehl. Die zurückgegebenen Informationen haben jedoch kein überzeugendes Ergebnis geliefert, von dem alle Ports, die ich für eine neue Anwendung verwenden kann, die ich schreibe. Schätzen Sie jede diesbezügliche Unterstützung.

16
PSam

1 : Sie sollten keine anonymen Ports (a.k.a. kurzlebige Ports) verwenden, um einen UDP- oder TCP -Dienst) zu implementieren.

Standardmäßig liegen diese Ports im Bereich von 32768 bis 65535.

# ndd /dev/tcp tcp_smallest_anon_port
32768
# ndd /dev/tcp tcp_largest_anon_port 
65535

2 : Sofern Ihr Dienst nicht als Root ausgeführt wird oder über die erforderlichen RBAC-Berechtigungen verfügt, sollten Sie keinen privilegierten Port verwenden. Standardmäßig sind alle Ports von 1 bis 1024 privilegiert:

# ndd /dev/tcp tcp_smallest_nonpriv_port
1024

: Wenn Sie nicht wissen, was Sie tun, sollten Sie keinen bekannten Port verwenden, von dem erwartet wird, dass er einen anderen Dienst ausführt als den, den Sie planen. Bekannte Ports sind in /etc/services. z.B:

# tail /etc/services
dtspc           6112/tcp                        # CDE subprocess control
fs              7100/tcp                        # Font server
solaris-audit   16162/tcp                       # Secure remote audit logging
servicetag      6481/udp
servicetag      6481/tcp
wnn6            22273/tcp                       # Wnn6 jserver
wnn6            22273/udp                       # Wnn6 jserver
rdc             121/tcp                         # SNDR server daemon
snmpd           161/udp        snmp             # Net-SNMP snmp daemon
swat            901/tcp                         # Samba Web Adm.Tool

4 : Sie sollten keinen Port verwenden, der bereits von einem vorhandenen Dienst verwendet wird. Sie können diese mit Laufen bekommen:

# netstat -an | grep LISTEN | nawk '{$0=$1;gsub(".*\\.","");print}' | sort -un

5 : Schließlich sollten Sie keinen Port verwenden, der von einem derzeit deaktivierten Dienst verwendet wird, der jedoch möglicherweise in Zukunft aktiviert wird. Dies ist der schwierigste Teil, um ...

16
jlliagre

Sie können 1-65.535 Ports auf Ihrem System verwenden, in denen die ersten 1024 Root-Berechtigungen haben.

Anstatt den freien Port zu finden, können Sie mit dem folgenden Befehl eine Liste der verwendeten Ports abrufen

netstat -tunlep | grep LISTEN | awk '{print $4}'

Dann können Sie jeden Port von 1-65535 außer diesen Ports verwenden.

10
Vaibhav Panmand