Bonjour,
Je cherche à obtenir une liste de ports ouverts sur le serveur sous forme numérique uniquement, sous la forme
J'ai essayé la commande netstat avec du awk :
Code :
- netstat -lpt | awk -F ":" '{print $2}' | awk '{print $1}'
|
mais ca me retourne
Code :
- webcache
- 3128
- smtp
- ssh
- 8443
|
Comment pourrais je faire pour avoir une correspondance entre le nom et port sous forme numérique ?
J'ai essaye avec l'option --numeric-port
Code :
- netstat -lpt --numeric-port
|
Code :
- tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 7291/dansguardian
- tcp 0 0 0.0.0.0:3128 0.0.0.0:* LISTEN 17130/(squid)
- tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 3488/exim4
- tcp6 0 0 :::22 :::* LISTEN 3501/sshd
- tcp6 0 0 :::8443 :::* LISTEN 27615/apache2
|
le probleme est que les adresses sont sous forme tcp6 et :::xxx
bon quand je parses avec awk j'ai ca :
Code :
- netstat -lpt --numeric-port | awk -F ":" '{print $2}' | awk '{print $1}'
- 8080
- 3128
- 25
|
et il manque des ports
Faudrait il que je test si le premier champs est tcp6 et en fonctions je fait un awk sur un autre champs ?
d'autre idees ?
merci d'avance