Je voudrais voir quels ports sont ouverts sur ma machine, par exemple quels ports sont écoutés par ma machine. Par exemple, le port 80 si j'ai installé un serveur Web, etc.
Y at-il une commande pour cela?
networking
server
Jonas
la source
la source
nmap localhost
fonctionné.nmap localhost
etnmap 192.168.0.3
(ou ce que vous avez comme machine IP)netstat -ln
. Vous verrez instantanément tous les ports ouverts.nmap localhost
n'a pas trouvé de services qui étaient liés uniquement à localhost. Par exemple, je coursinfluxd
avecbind-address:localhost:8086
. Cela ne s'est pas manifestésudo nmap localhost
, mais s'est manifestésudo netstat -tulpn
.J'ai toujours utilisé ceci:
la source
sudo netstat -ntlp | grep LISTEN
... utilisersudo
autrement ... pid ne sera pas imprimé.-l
filtre déjà pour écouter.grep LISTEN
ne vous aidera pas à cacher deux lignes d’informations d’en-tête.-t
: tcp,:-l
socket d'écoute,:-p
show pid et nom du programme,:-n
print à la127.0.0.1:80
place delocalhost:http
. Référence: linux.die.net/man/8/netstatnetstat
avecsudo apt-get install net-tools
sudo netstat --tcp --listening --programs --numeric
. Il n'est pas nécessaire d'utilisergrep
sauf si vous souhaitez éliminer les en-têtes de colonnes.Voici d'autres moyens de connaître les ports en cours d'écoute et les règles de votre pare-feu:
sudo netstat -tulpn
sudo ufw status
la source
nmap
nouveau, la convivialité denetstat
est de la merde.Pour lister les ports ouverts, utilisez la
netstat
commande.Par exemple:
Dans l'exemple ci-dessus, trois services sont liés à l'adresse de bouclage.
Les services IPv4 liés à l'adresse de bouclage "127.0.0.1" ne sont disponibles que sur la machine locale. L'adresse de bouclage équivalente pour IPv6 est ":: 1". L'adresse IPv4 "0.0.0.0" signifie "toute adresse IP", ce qui signifie que d'autres machines pourraient éventuellement se connecter à l'une des interfaces réseau configurées localement sur le port spécifique.
Une autre méthode consiste à utiliser la
lsof
commande:Pour plus de détails, voir
man netstat
ouman lsof
.la source
-l
option était de listerLISTEN
les ports. Donc, le grep serait superflu ici?!Cela suffit pour montrer qu'il existe un processus d'écoute sur l'adresse IP
0.0.0.0
(nécessaire pour qu'il réponde à toute demande) sur le port 80 (numéro de port du serveur Web standard). Dans mon cas, cela montre que c'est le serveur Weblighttpd
Si vous souhaitez par la suite vous assurer que la seule chose que vous autorisez via votre pare-feu est le port 80, j'utilise souvent ShieldsUp de www.grc.com pour effectuer un test de pare-feu.
la source
sudo iptables -L
listera les règles de port pour votre pc. Notez que si vous utilisez des pare-feu ufw ou shorewall, la sortie peut être difficile à lire. Dans ce cas, utilisez plutôtsudo ufw status
par exemple.Ce n'est pas très utile en soi car même si un port est ouvert, l'accès sera toujours refusé s'il n'y a pas de processus en écoute sur ce port.
la source
Si vous recherchez une surveillance continue des ports pour les machines serveur ou locales, vous pouvez également utiliser la version graphique de nmap, par exemple Zenmap, pour obtenir une version plus détaillée.
Zenmap est l'interface graphique officielle pour le scanner de sécurité Nmap.
Prise en charge disponible (Linux, Windows, Mac OS X, BSD, etc.)
Jetez un coup d'œil à cette vue d'outil:
la source