GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Fermer manuellement les ports ouverts dans Ubuntu

Ouvrir les ports

Lorsque vous faites beaucoup de programmation de socket, il arrive souvent qu'un programme serveur lors de la recompilation/réexécution ne parvienne pas à se lier à un numéro de port particulier car ce numéro de port est déjà utilisé.

Pour fermer manuellement le numéro de port, il faut d'abord trouver le nom/id du processus qui maintient le port ouvert, puis utiliser la commande kill sur ce processus.

lsof

$ lsof -i :8888
COMMAND  PID        USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
java    8461 enlightened   11u  IPv6 138527      0t0  UDP *:8888

Dans l'exemple ci-dessus, on voit que le port 8888 est utilisé par la commande java avec le pid 8461.
Tuez maintenant le processus en faisant l'une des choses suivantes

$ kill 8461
$ killall -9 8461
$ killall -9 java

netstat

La commande netstat peut également être utilisée pour savoir quel processus détient un certain numéro de port

$ netstat -u -ap
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
udp        0      0 *:18347                 *:*                                 -
udp        0      0 localhost:11211         *:*                                 -
udp        0      0 localhost:36254         localhost:36254         ESTABLISHED -
udp        0      0 localhost:domain        *:*                                 -
udp        0      0 *:ipp                   *:*                                 -
udp        0      0 *:42038                 *:*                                 -
udp        0      0 *:17500                 *:*                                 4090/dropbox
udp        0      0 *:mdns                  *:*                                 -
udp        0      0 localhost:58797         localhost:7777          ESTABLISHED 9831/ncat
udp        0      0 localhost:42724         localhost:domain        ESTABLISHED -
udp6       0      0 [::]:46282              [::]:*                              -
udp6       0      0 [::]:mdns               [::]:*                              -
udp6       0      0 [::]:9999               [::]:*                              11598/java

Le port que nous voulons fermer ici est 9999. Et netstat montre que le pid =11598 et le nom de la commande =java
Ici, nous avons utilisé le -u pour le port udp. S'il s'agit d'un port tcp, le commutateur u n'est pas nécessaire.

$ sudo netstat -ap | grep :9050
tcp        0      0 localhost:9050          *:*                     LISTEN      1613/tor

Une fois l'identifiant/nom du processus trouvé, terminez-le avec la commande kill.

$ kill 11598

fuseur

La commande fuser peut également être utilisée pour connaître le pid du programme. La syntaxe est

fuser -k -n protocol portno

Exemple rapide

$ fuser -k -n udp 7777
7777/udp:            11774

Ubuntu
  1. Comment installer Open Real Estate sur Ubuntu 16.04

  2. Comment ouvrir des ports dans Ubuntu / Debian

  3. Ouvrir un port sur Ubuntu 20.04 - Guide étape par étape ?

  4. Comment ouvrir des ports dans Ubuntu et CentOS à l'aide d'IPtables

  5. Comment ouvrir AppImage dans Ubuntu

Comment installer Open Visual Traceroute sur Ubuntu 16.04

Comment ouvrir un port sur Ubuntu 20.04

Comment rechercher et fermer des ports ouverts sous Linux

Comment ouvrir un terminal dans Ubuntu Linux

Comment ouvrir ou fermer des ports dans AlmaLinux 8 ou Rocky Firewall

Comment ouvrir plusieurs terminaux ?