Savoir quels programmes écoutent sur quels ports de votre serveur avec Netstat

Comme je teste pas mal d’applications je me retrouve souvent à avoir nginx, apache, cherokee installés sur la même machine, or des fois j’oublie sur quels ports ils écoutent et m’étonne de ne pouvoir lancer ma nouvelle config nginx toute fraîche alors que l’un des deux autres écoute sur le même port.

Heureusement la plupart des applications vous préviennent que quelqu’un est déjà sur ce port, oui mais qui ?

Pour avoir un rapide coup d’oeil sur les ports utilisés faites:

netstat -ntpul
 
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name
tcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      26586/lighttpd
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      30945/sshd
tcp        0      0 127.0.0.1:199               0.0.0.0:*                   LISTEN      715/snmpd
tcp        0      0 88.234.212.132:3306         0.0.0.0:*                   LISTEN      15186/mysqld
tcp        0      0 127.0.0.1:6379              0.0.0.0:*                   LISTEN      31841/redis-server
tcp        0      0 :::8080                     :::*                        LISTEN      6951/java
tcp        0      0 :::8181                     :::*                        LISTEN      29022/cherokee-work
tcp        0      0 :::22                       :::*                        LISTEN      30945/sshd
tcp        0      0 :::3399                     :::*                        LISTEN      11438/(squid)
udp        0      0 0.0.0.0:161                 0.0.0.0:*                               715/snmpd
udp        0      0 0.0.0.0:50931               0.0.0.0:*                               11438/(squid)
udp        0      0 :::43815                    :::*                                    11438/(squid)

les options:

-n, –numeric

affiche les adresses en format numérique au lieu d’essayer de déterminer le nom symbolique d’hôte, de port ou d’utilisateur.

-p, –programs

affiche le nom et le PID des processus propriétaires de chaque socket décrite. Vous devez être le propriétaire d’un processus pour visualiser les sockets qui lui appartiennent ou être l’utilisateur root pour disposer de toutes les informations.

-l, –listening

Affiche les sockets en écoute

-t

Affiche les connexion TCP

-u

Affiche les connexion UDP

EDIT: On me signale un super moyen mémotechnique de retenir un panel d’options (merci Gardouille):

netstat -lapute

A vous Cognack-Jay

No related posts.

flattr this!

8 comments

  1. Gaffe, pour les options longues, les doubles tirets sont collés dans le texte ;)

    Sinon j’utilise `netstat -taupeln`, similaire mais avec 2 infos de plus. D’autres l’aiment bien parce qu’il y a un petit moyen mnémotechnique pour celui là: `netstat -lapute` ^^

  2. génial, ça mérite un EDIT de mon psot pour le rajouter, merci :)

  3. netstat mettonpull

    $netstat -ntpul
    netstat: illegal option -t

    (FreeBSD 9)

  4. ha bon à savoir, aurais-tu l’équivalent ? l’option -t étant pour afficher les cnx TCP

  5. netstatmettonpull

    Hello, non mais en fouillant vite fait sur le net j’ai trouvé ceci netstat -a | egrep ‘Proto|LISTEN’ ici http://www.techrepublic.com/blog/security/list-open-ports-and-listening-services/443. J’ai découvert aussi la commande sockstat: un sockstat -4 -l renvoie pas mal d’infos également: http://uppix.net/c/e/4/9712e96b4f780eaf06ec40d1516f7.jpg

    A approfondir !

  6. Comment ça ça colle bien aux thèmes du site??? :þ

  7. ouais y’a netstat -anpe aussi xD mais -lapute est plus sexy, j’avoue!

  8. foxmask

    lsof -i

    imbattable :)
    montre toutes les connexions actuelles en meme temps

Flux RSS des commentaires

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">

Jouer à mario en attendant que les autres répondent