Breument, descriurem els ports dins de la xarxa informàtica i, a més, parlarem de com podem enumerar tots els ports oberts a Linux.
Un port es pot definir com una entitat lògica en termes de xarxes d'ordinadors i programari.
Actua com a punt final de comunicació per identificar un procés o una aplicació determinats al sistema operatiu Linux . Un port és un 16 bits (o a 65535) número que diferencia una sola aplicació d'altres en diversos sistemes finals.
Dos dels protocols de transport d'Internet més famosos, Protocol de datagrama d'usuari (UDP) i Protocol de control de transmissió (TCP) i altres protocols apliquen números de port per a moltes sessions de comunicació (números de port de destinació i origen juntament amb les adreces IP de destinació i origen).
Una combinació d'un protocol, port i adreça IP com TCP/UDP s'anomena a endoll. Cal que tots els serveis tinguin un endoll específic.
tipus de dades primitius en java
Categories del Port
Aquests ports es divideixen en tres categories per facilitar-ne l'ús perquè la varietat de ports és gran. Totes les categories s'etiqueten com a interval de valors del port:
0-1023: Aquests ports ho són ben conegut i va trucar 'Sistema' ports. Estan reservats per als processos del sistema que proporcionen una àmplia gamma de serveis de xarxa. Un procés hauria de tenir els privilegis d'un superusuari per vincular-se amb qualsevol 'Ben conegut' port.
1024-49151: Aquests ports ho són 'Enregistrat' i va cridar el 'Usuari' ports. Estan designats via IANA per a serveis únics. Un procés pot tenir autenticació amb ells a petició. No necessita cap privilegi de superusuari per utilitzar aquests ports en la majoria dels casos de sistemes.
49152-65535: Aquests ports ho són 'Dinàmic' i va cridar el 'Privat' ports. No es poden registrar amb ells IANA. Aquests tipus de ports estan oberts per utilitzar-los per a serveis personalitzats i privats i també es poden assignar com a ports efímers (coneguts com vida curta ports aplicats per IP) automàticament.
Hi ha tantes maneres de comprovar els ports oberts a Linux. Per defecte, un port es tancarà tret que qualsevol aplicació l'apliqui. S'ha d'assignar un port a un procés o servei si està obert.
Llista de ports oberts
És més fàcil saber quin port està en ús en lloc de quin port està obert. Per tant, la secció següent proporcionarà mètodes per llistar tots els ports que s'utilitzen actualment.
Hi ha diverses eines presents per a aquesta tasca a Linux. La majoria d'ells disponibles incorporat en una distribució de Linux.
Aprendre quin port està obert actualment podria ser útil en molts escenaris. És possible determinar un port dedicat per a una aplicació assegurada. Un port obert pot ser una indicació forta d'intrusió a la xarxa.
S'utilitzen els mètodes Ubuntu 20.04 LTS que s'esmenten a continuació.
Llista els ports i protocols oberts mitjançant el fitxer /etc/services
El fitxer, és a dir, /etc/services conté detalls sobre els serveis en funcionament (actualment). És un fitxer gran.
$cat /etc/services | less
Llista els ports oberts amb netstat
El netstat L'eina es pot descriure com una utilitat per mostrar connexions de xarxa per a taules d'encaminament, TCP i diverses interfícies de xarxa. A més, facilita les estadístiques del protocol de xarxa. Podríem llistar tots els ports oberts d'un sistema mitjançant l'eina netstat.
Podem executar l'ordre següent:
$ netstat -atu
Expliquem ràpidament el desglossament de cada bandera que hem utilitzat a l'ordre anterior:
1.a: Aquest indicador informa a netstat de mostrar cada sòcol.
2. t: Aquest indicador informa a netstat de llistar els ports TCP.
3. a: Aquesta marca informa a netstat de llistar els ports UDP.
El netstat L'ordre té una altra variació que s'esmenta a continuació:
$ netstat -lntu
Dos indicadors són nous a l'ordre anterior, que s'explica de la següent manera:
1.l: Aquest indicador informa a netstat per imprimir només els endolls d'escolta.
2. n: Aquesta bandera informa a netstat per mostrar el número de port.
Podem utilitzar una bandera, és a dir, '-p' per mostrar el PID del procés que està utilitzant qualsevol port.
$ netstat -lntup
Comproveu els ports oberts localment
L'ordre netstat està disponible a tots els sistemes operatius d'ordinador per controlar les connexions de xarxa. L'ordre següent aplica netstat per mostrar cada port d'escolta amb el protocol TCP:
netstat -lt
Anem a definir breument les banderes que estan presents a l'ordre anterior:
1. -l: Enumera els ports d'escolta.
2. -t: Especifica el protocol TCP.
El resultat està ben ordenat en columnes que mostren el protocol, els paquets enviats i rebuts, l'estat del port, les adreces IP locals i remotes.
Si modifiquem el protocol TCP per al protocol UDP, la sortida només mostrarà els ports oberts. El resultat es mostrarà sense descriure l'estat a causa de la contradicció amb el protocol TCP.
netstat -lu
Podem ignorar la descripció dels protocols i aplicar només l'opció --listen o -l per obtenir detalls sobre cada port escoltant lliurement el protocol:
netstat --listen
L'opció anterior mostrarà els detalls dels protocols de socket Unix, UDP i TCP.
enumeracions java
Tots els exemples anteriors mostren com imprimir els detalls als ports d'escolta sense connexions autoritzades. Les ordres següents mostren com mostrar els ports d'escolta i les connexions autoritzades.
netstat -vatn
On:
1.-en: S'utilitza per a la verbositat.
2. -a: Mostra les connexions actives.
3. -t: Mostra les connexions tcp.
4. -n: Mostra els ports (valor numèric).
Suposem que reconeixem un procés sospitós dins del nostre sistema i volem comprovar els ports relacionats amb ell. Podem utilitzar l'ordre lsof que s'utilitza per llistar fitxers oberts relacionats amb processos.
lsof -i 4 -a -p
On,
1. -i: Enumera els fitxers que col·laboren amb Internet, el 6 opció està present per IPv6, i la 4 l'opció només indica per imprimir IPv4.
2. -a: Indica que el resultat sigui Vas donar.
3. -p: Especifica el número PID del procés que volem comprovar.
Llista els ports oberts amb ss
El ss L'eina es pot especificar com una utilitat per investigar el sòcol. L'ús d'aquesta eina és el mateix que el netstat comandament.
Podem executar l'ordre següent per llistar els ports oberts:
$ ss -lntu
Les banderes anteriors són les mateixes que les netstat comandament. Les funcions descrites per l'eina ss també són bastant les mateixes.
1.l: Aquesta bandera informa a ss per mostrar les preses d'escolta.
2. n: Aquest indicador informa a ss de no intentar concloure els noms de servei.
3. t: Aquest senyalador informa ss per als sockets TCP de visualització.
4. a: Aquest indicador informa ss per mostrar els sòcols UDP.
Llista els ports oberts amb lsof
L'ordre lsof es pot utilitzar per llistar fitxers oberts. Però també es pot utilitzar per mostrar els ports oberts.
Podem executar la següent comanda:
$ lsof -i
Per obtenir els ports oberts d'un protocol concret (UDP, TCP, etc.), especifiqueu-lo després d'utilitzar el '-i' flag, podem executar la següent comanda:
$ lsof -i
Llista els ports oberts amb nmap
L'ordre nmap es pot definir com a potent per a l'exploració de ports/seguretat i l'exploració de la xarxa. També pot informar de cada port obert dins del sistema.
Podem executar la següent comanda per llistar els ports TCP oberts.
$ sudo nmap -sT -p- localhost
Hi ha dues seccions d'aquesta comanda que s'esmenta més amunt:
1. -sT: Informa l'eina nmap per escanejar TCP ports.
2. -p-: Informa l'eina nmap per escanejar tots 65535 ports. L'eina nmap escanejarà 1000 ports només per defecte si no s'utilitzen.
Si necessitem llistar els ports oberts d'UDP, podem executar l'ordre següent:
$ sudo nmap -sU -p- localhost
També podem executar l'ordre següent per obtenir els ports UDP i TCP:
$ sudo nmap -n -PN -sT -sU -p- localhost
Llista els ports oberts amb netcat
L'eina netcat es pot descriure com una utilitat de línia d'ordres per llegir i escriure dades a través de moltes connexions de xarxa als protocols UDP i TCP. A més, es pot utilitzar per llistar els ports oberts. Aquesta eina pot implementar proves sobre un port determinat o una varietat de ports.
L'ordre netcat següent s'utilitza per escanejar el port des 1-1000. Per defecte, implementarà l'exploració mitjançant el protocol TCP:
$ nc -z -v localhost 1-1000
A més, es pot estendre a tota la llista de determinats ports:
$ nc -z -v localhost 1-65535
Anem a desglossar aquestes banderes ràpidament.
1. de: Informa l'ordre netcat només per escanejar ports oberts, sense transferir cap dada.
2. a: Informa l'ordre netcat per executar-se en mode detallat.
ordre d'autocad de línia
Podem filtrar el resultat amb l'ajuda de grep per a un terme 'encertat' per obtenir només els ports oberts a través d'aquesta llista.
$ nc -z -v 127.0.0.1 20-80 | grep succeeded
Si volem implementar l'exploració a través del protocol UDP, el. Podem incloure el '-en' bandera.
$ nc -z -v -u localhost 0-65535 2>&1 | grep succeeded