Com es comprova si hi ha ports oberts a Linux

How Check Open Ports Linux



La comprovació de ports oberts és un dels primers passos per protegir el dispositiu. Els serveis d’escolta poden ser l’entrada dels atacants que puguin explotar les vulnerabilitats dels serveis per accedir o pertorbar un sistema. Un servei d’escolta o port d’escolta és un port obert amb una aplicació que espera que un client es connecti (per exemple, un servidor FTP que espera un client FTP) No té sentit mantenir un servidor web en funcionament si no esteu servint un lloc web, ni per mantenir el port 22 obert si no utilitzeu ssh. Aquest tutorial mostra com comprovar si hi ha ports oberts de forma remota i local i com es poden tancar.

L'ordre netstat està present a tots els sistemes operatius de l'ordinador (sistemes operatius) per controlar les connexions de xarxa. L'ordre següent utilitza netstat per mostrar tots els ports d'escolta mitjançant el protocol TCP:







netstat -lt



On:
netstat: crida al programa.
-el: llista els ports d'escolta.
-t: especifica el protocol TCP.



La sortida és compatible amb els humans, ben ordenada en columnes que mostren el protocol, els paquets rebuts i enviats, les adreces IP locals i remotes i l’estat del port.





Si canvieu el protocol TCP per UDP, el resultat, almenys a Linux, només mostrarà els ports oberts sense especificar-ne l'estat, perquè contràriament al protocol TCP, el protocol UDP no té estat .

netstat -lu



Podeu evitar especificar protocols i utilitzar només l'opció -l o -listen per obtenir informació de tots els ports que escoltin independentment del protocol:

netstat --escolta

L'opció anterior mostrarà informació sobre protocols de sòcol TCP, UDP i Unix.

Tots els exemples anteriors mostren com imprimir informació en ports d’escolta sense connexions establertes. L'ordre següent mostra com mostrar els ports d'escolta i les connexions establertes:

netstat -aigua

On:
netstat: crida al programa
-v: verbositat
-a: mostra connexions actives.
-t: mostra connexions tcp
-n: mostra els ports en valor numèric

Suposem que heu identificat un procés sospitós al vostre sistema i que voleu comprovar-ne els ports associats. Podeu utilitzar l'ordre lsof s'utilitza per llistar fitxers oberts associats als processos.

lsof-i 4 -a -p <Número de procés>

En el següent exemple comprovaré el procés 19327:

lsof-i 4 -a -p 19327

On:
lsof : crida al programa
-i: llista els fitxers que interactuen amb Internet, l'opció 4 indica que només s’imprimeix IPv4, l’opció 6 està disponible per a IPv6.
-a: indica la sortida que es vol ANDar.
-p: especifica el número PID del procés que voleu comprovar.

Com veieu, el procés s'associa amb el port SMTP d'escolta.

Com es comprova si hi ha ports oberts a Linux de forma remota


Si voleu detectar ports en un sistema remot, l'eina més utilitzada és Nmap (Network Mapper). L'exemple següent mostra un escaneig de port únic contra Linuxhint.com:

nmaplinuxhint.com

La sortida s’ordena en 3 columnes que mostren el port, l’estat del port i el servei que escolta darrere del port.

No es mostra:988ports tancats
SERVEI DE L’ESTAT PORTUARI
22/tcp obertssh
25/tcp smtp obert
80/tcp http obert
161/snmp filtrat tcp
443/tcp https obert
1666/tcp filtrat netview-aix-6
1723/tpp filtrat pptp
6666/tcp filtrat irc
6667/tcp filtrat irc
6668/tcp filtrat irc
6669/tcp filtrat irc
9100/tcp filtrat jetdirect

Per defecte, nmap analitza només els 1000 ports més comuns. Si voleu que nmap analitzi tots els ports, executeu:

nmap -p-linuxhint.com

Al Articles relacionats a la secció d’aquest tutorial podeu trobar tutorials addicionals a Nmap per escanejar ports i objectius amb moltes opcions addicionals.

Eliminació de serveis a Debian 10 Buster

A més de les regles del tallafoc, es recomana eliminar els serveis innecessaris per mantenir els ports bloquejats. A Debian 10 Buster això es pot aconseguir amb apt.
L'exemple següent mostra com eliminar el servei Apache 2 mitjançant apt:

apt elimina apache2

Si es demana premeu I per acabar la retirada.

Com es tanquen els ports oberts a Linux mitjançant UFW

Si trobeu ports oberts no cal que estigueu oberts, la solució més senzilla és tancar-lo amb UFW (Firewall sense complicacions)
Hi ha dues maneres de bloquejar un port mitjançant l’opció negar i amb l’opció rebutjar , la diferència és que la instrucció de rebuig informarà al segon costat de la connexió rebutjada.

Per bloquejar el port 22 mitjançant la regla negar només cal córrer:

ufw negar22

Per bloquejar el port 22 mitjançant la regla rebutjar només cal córrer:

ufw rebutjar22

A la Articles relacionats a la secció al final d’aquest tutorial podeu trobar un bon tutorial sobre el tallafoc sense complicacions.

Com tancar ports oberts a Linux mitjançant iptables

Tot i que UFW és la manera més senzilla de gestionar els ports, és un frontend per a Iptables.
L'exemple següent mostra com rebutjar les connexions al port 22 mitjançant iptables:

iptables-JoENTRADA-ptcp--port 22 -jREBUTJAR

La regla anterior indica que rebutgi totes les connexions entrants de tcp (INPUT) al port de destinació (dport).

La següent regla només elimina tots els paquets sense informar la font de la connexió rebutjada:

iptables-AENTRADA-ptcp--port 22 -jTIRAR

Espero que us sigui útil aquest breu tutorial. Seguiu seguint LinuxHint per obtenir actualitzacions i consells addicionals sobre Linux i xarxes.

Articles relacionats:

  • Treballar amb UFW (Firewall sense complicacions)
  • Tutorial bàsic de NMAP
  • Com s'enumeren els ports oberts a Firewalld
  • Escaneig de xarxa Nmap
  • Instal·lació i ús de Zenmap (Nmap GUI) a Ubuntu i Debian
  • Nmap: escaneja els intervals IP
  • Utilitzant scripts nmap: captura de pancarta Nmap
  • 30 exemples de Nmap