Molte applicazioni importanti come server di database, server Web, servizi di trasferimento file, ecc., utilizzare porte dedicate. Per rafforzare la sicurezza del sistema/server, gli amministratori di sistema di solito proteggono queste porte negando l'accesso a utenti/servizi sconosciuti o modificando il numero di porta predefinito con un altro valore.
Nelle reti di computer, la conoscenza della gestione delle porte è un compito molto vitale per l'amministrazione della sicurezza del server. Questa guida studierà vari metodi per analizzare una porta su Linux Ubuntu 20.04 sistema.
Cosa tratteremo?
In questa guida, utilizzeremo i seguenti strumenti per analizzare le porte sul nostro server Ubuntu.
- Telnet
- Nmap
- Netcat
Useremo un server Ubuntu per agire come server remoto e la workstation Fedora 34 come macchina client per connetterci al server. Cominciamo adesso.
Prerequisiti
- Account utente con accesso "sudo".
- Conoscenze di base di reti di computer.
- accesso ad Internet
1. Utilizzo del comando Telnet per verificare la porta aperta
TELNET è un'applicazione client/server per l'accesso remoto a un server con funzionalità di terminale virtuale attraverso una rete. Utilizza il numero di porta 23 di TCP su una rete TCP/IP. RFC 854 definisce le specifiche per il protocollo TELNET.
Per installare il server TELNET sul nostro server Ubuntu, usa il comando seguente:
sudo apt install telnetd
Il demone 'telnetd' è un programma server telnet che viene avviato dal inetd demone.
Useremo la workstation Fedora 34 come client telnet. Per installare il client telnet su Fedora, usa il comando:
$ sudo dnf install telnet
Ora useremo il client telnet su Fedora 34 per controllare le porte aperte sul sistema Ubuntu che esegue il server telnet. Vai alla workstation Fedora 34 e apri il terminale e digita il comando:
$ telnet 192.168.43.216 23Qui '192.168.43.216' è l'IP del server Ubuntu e '23' è la porta predefinita per il demone telnet in esecuzione su questo server.
Un accesso riuscito significa che la porta 23 è una porta aperta sul nostro server Ubuntu. Ora proviamo con un altro numero di porta "80" con telnet:
$ telnet 192.168.43.216 80
Possiamo vedere che la porta 80 non è aperta per effettuare una connessione telnet; quindi è chiuso in questo momento.
Installiamo il webserver Apache sul server Ubuntu. Apache, per impostazione predefinita, utilizza la porta 80 per i suoi servizi http. Eseguire nuovamente il comando:
$ telnet 192.168.43.216 80
Dall'etichetta 2 nella figura sopra, la porta 80 è ora in ascolto e aperta per la connessione http ma chiusa per altri tipi di connessione.
Telnet non fornisce la crittografia per i dati trasferiti; la password verrà trasmessa in formato testo normale plain.
2. Usare Nmap per controllare la porta aperta
Nmap è uno degli strumenti di scansione di rete più popolari e avanzati. È open-source e disponibile gratuitamente per sistemi Unix e Windows. NmapFE è una versione grafica del comando nmap basato su terminale. Ha un vasto set di funzionalità di operazioni come la scansione delle porte, la scansione del protocollo, il fingerprinting del sistema operativo (rilevamento del sistema operativo), ecc.
Installiamo Nmap sulla nostra macchina client Fedora 34 e cerchiamo le porte sul server Ubuntu. Per installare nmap su Fedora 34, usa il comando:
Dopo aver installato Nmap, apri un terminale sul sistema Fedora e cerca le porte usando:
$ sudo nmap -F [IP del server remoto]Prua, testa.g., nel nostro caso, l'IP del server remoto (Ubuntu) è 192.168.43.216, quindi il comando sarà:
$ sudo nmap -F 192.168.43.216
L'output del comando precedente mostra che la porta 23 e la porta 80 sono in uno stato aperto. Possiamo anche utilizzare il comando seguente per il rilevamento della porta aperta:
$ sudo nmap -sT 192.168.43.216
Con Nmap, possiamo anche controllare lo stato di una porta specifica. Per controllare lo stato della porta 80 che esegue il servizio apache e una porta 83 casuale, utilizzare il comando:
$ sudo nmap 192.168.43.216 -p 83$ sudo nmap 192.168.43.216 -p 80
Dall'immagine sopra, la porta 83 è chiusa e la porta 80 aperta è aperta per ascoltare le richieste http di apache.
3. Utilizzo del comando nc (netcat) per verificare la porta aperta
Netcat è un altro strumento che può essere utilizzato per la scansione delle porte. Può essere utilizzato anche per aprire connessioni TCP, inviare pacchetti UDP, ecc. Netcat viene fornito con nmap:
Per controllare una porta usando netcat, esegui il seguente comando:
$ sudo nc -zvw Porta indirizzo_IPAd esempio, per controllare la porta 22 e la porta 80, utilizzeremo:
$ sudo nc -zvw 100ms 192.168.43.216 22$ sudo nc -zvw 100ms 192.168.43.216 80
Possiamo vedere che la porta 22 è chiusa poiché la connessione viene rifiutata. Nel caso della porta 80 la connessione netcat ha esito positivo perché Apache è installato sul server Ubuntu.
Conclusione
In questa guida abbiamo esplorato vari metodi di scansione delle porte su un sistema remoto. Si prega di essere cauti durante l'esecuzione di questi comandi perché la scansione di altre reti senza la loro autorizzazione è un reato legale.