Ricerca nel sito web

12 comandi di rete di base che ogni utente Linux dovrebbe conoscere


Linux è un ottimo sistema operativo per il networking. È un sistema eccellente per i server per un motivo. Le distribuzioni Linux sono preinstallate con molti strumenti di rete e puoi installarne altri dal tuo gestore pacchetti. Ecco alcuni dei comandi di rete Linux che dovresti conoscere.

1 ping

Il comando di rete più importante in Linux potrebbe essere il ping. Questo comando ti consente di verificare se una macchina remota sta rispondendo alle tue richieste. Puoi vedere se la tua connessione Internet è attiva o se un server è inattivo.

L'utilizzo di base è il ping seguito da un indirizzo IP o DNS:

ping linux-console.net

ping verrà eseguito per sempre finché non premi Ctrl+C, quindi ti fornirà alcune statistiche. Puoi impostare un conteggio con l'opzione -c, seguita da un numero. ping eseguirà quindi il ping di una macchina solo per quel numero di volte:

Ad esempio, per eseguire il ping di linux-console.net quattro volte:

ping -c 4 linux-console.net

Non allarmarti se non ricevi risposta. Molti server sono configurati per ignorare le richieste di ping per motivi di sicurezza. Prova diverse macchine se vuoi assicurarti che la tua connessione Internet funzioni.

Fai attenzione a eseguire il ping su alcune macchine. Alcuni amministratori potrebbero interpretare i ping ripetuti come tentativi di intrusione.

2 traceroute

Mentre ping ti dirà se un server è attivo e ascolta le richieste ping, traceroute ti mostrerà i possibili percorsi che i tuoi pacchetti prenderanno dalla tua macchina alla loro destinazione.

Ad esempio, per trovare il percorso dal tuo computer a HTG:

traceroute linux-console.net

Vedrai un elenco di hop riempire il terminale. Probabilmente vedrai molte voci vuote. Ciò è dovuto anche al fatto che molte macchine non ascoltano i comandi ping. traceroute funziona impostando il TTL di un pacchetto Internet, o "Time To Live", in quantità crescenti in modo che falliscano e restituiscano la posizione dei server lungo un possibile percorso. I percorsi possono cambiare ogni volta che esegui traceroute.

3 mtr

Potresti essere confuso se utilizzare ping o traceroute. Perché non usarli entrambi? Questo è ciò che fa mtr, o My Traceroute. mtr combina ping e traceroute in un unico programma. Ottieni il percorso seguito dai tuoi pacchetti mentre puoi vedere le statistiche. mtr funziona continuamente. Funziona anche a schermo intero o come finestra della GUI.

Ciò che è affascinante è osservare le statistiche aggiornarsi continuamente. mtr mostra il massimo e il minimo, nonché la media e la deviazione standard, ovvero la distribuzione di questi valori attorno alla media. Lungo il percorso vedrai spesso uno o due salti più lenti degli altri. Ciò significa che c'è un collo di bottiglia che blocca il traffico lungo il percorso.

mtr può anche illustrare come i percorsi attraverso la rete tra le macchine possono cambiare ad ogni esecuzione.

4 ip

ip ha sostituito ifconfig come strumento di configurazione Internet nella maggior parte delle principali distribuzioni Linux. Non dovrai farci molto, poiché la tua distribuzione gestirà da sola la maggior parte dei dispositivi di rete. Puoi vedere alcune informazioni utili con ip. Ad esempio, per mostrare i tuoi indirizzi IP attuali sui tuoi dispositivi di rete:

ip address

Puoi anche vedere il percorso verso il quale andranno i tuoi pacchetti:

ip route

Eseguito da solo, ip mostrerà i nomi dei dispositivi di rete collegati, gli indirizzi IP attualmente assegnati, nonché la maschera di sottorete, la parte che appartiene alla rete. Le interfacce Ethernet di solito iniziano con "en".

5 netstat

netstat mostrerà le connessioni aperte sul tuo computer senza argomenti. L'opzione -r mostrerà la tabella di routing.

Molto probabilmente dovrai essere root per eseguirlo per sicurezza:

sudo netstat

netstat mostrerà i socket aperti sulla tua macchina e quali sono in ascolto. Puoi usarlo per monitorare le tue connessioni e indagare su tutto ciò che sembra sospetto.

6 percorso

route, come suggerisce il nome, mostrerà la tabella di routing di tutte le interfacce di rete sul tuo computer. Di solito si tratta del router o dello switch più vicino. Puoi anche aggiungere o eliminare percorsi manualmente, ma probabilmente non sarà necessario in circostanze normali su un computer desktop standard.

La riga "predefinita" indica il percorso predefinito per la rete a cui verranno indirizzate le richieste. Di solito si tratta del router o del modem via cavo più vicino se è collegato direttamente al computer.

La maggior parte dei normali sistemi desktop gestirà il routing automaticamente e di solito c'è comunque un solo posto dove andare nelle reti residenziali, come il router Wi-Fi.

7 ss

ss è un'utilità per scaricare sul terminale le statistiche su qualsiasi socket della macchina. Questo è utile per trovare eventuali connessioni di rete aperte. Come con netstat, è uno strumento utile per indagare sulle connessioni di rete e vedere se al tuo computer è collegato qualcosa che non dovrebbe esserlo. Puoi approfondire le tue connessioni per protocollo o socket.

ss e netstat sono ottimi modi per saperne di più sui socket o sul networking in generale.

8 tcpdump

tcpdump è uno sniffer di pacchetti che è una controparte basata su terminale del popolare programma Wireshark. Con tcpdump puoi vedere i pacchetti che la tua macchina sta inviando. Poiché questo mostra tutto il traffico su un'interfaccia, di solito è necessario essere root per eseguirlo:

sudo tcpdump

Questo mostrerà in tempo reale tutti i pacchetti inviati e ricevuti sull'interfaccia di rete predefinita. Questa è una diagnostica utile, ma può anche essere utilizzata per spiare il traffico Internet. Fortunatamente, al giorno d'oggi è più comune che il traffico Internet sia crittografato, quindi se qualcuno riuscisse a impossessarsi delle tue trasmissioni, sarebbe inutile a meno che non trovassero un modo per decodificarlo.

9 scava

Se vuoi scoprire chi si nasconde dietro quel nome di dominio, puoi usare il comando dig:

dig linux-console.net

Quando inserisci un nome di dominio, dig interrogherà i server DNS e visualizzerà i risultati. Il DNS è ciò che collega i nomi di dominio all'indirizzo IP. I nomi di dominio saranno "autorevoli", nel senso che provengono dall'indirizzo IP del dominio richiesto, o "ricorsivi", nel senso che un server ha chiesto a un altro server DNS quale fosse l'indirizzo.

Il dig mostrerà l'indirizzo IP associato al dominio nella sezione "risposta". Mostrerà anche quando hai effettuato la richiesta e quanto tempo ha impiegato il server DNS per rispondere alla fine dell'output.

10 host

host ti fornirà anche ulteriori informazioni su un nome di dominio, ad esempio quali server gestiscono la posta elettronica. Come con dig, ti dirà l'indirizzo IP del nome di dominio e quali server gestiranno la sua posta elettronica.

Questo strumento è più semplice da leggere rispetto a scavare poiché contiene meno informazioni. Noterai che molti siti hanno più server di posta, incluso HTG. I server di posta multipli corrispondono in genere a sottodomini, come sales.example.com per il team di vendita example.com e engineering.example.com per il dipartimento di ingegneria e così via.

Ciò che probabilmente ti interessa di più è solo la prima riga, che ti dice quale indirizzo ha risposto alla richiesta DNS.

11 whois

whois restituirà i record ufficiali di un nome di dominio, il che può essere utile se hai bisogno di contattare un amministratore di un sito web per segnalare un problema. È anche possibile abusarne, per questo motivo è possibile registrare un nome di dominio in modo anonimo.

Vedrai molte delle stesse informazioni in dig o host, ma vedrai anche le informazioni di contatto di chi ha registrato il nome di dominio. Se il proprietario del sito non vuole che il proprio nome e indirizzo siano accessibili a chiunque sappia come eseguire una query whois, il nome di dominio verrà spesso registrato da una società che vende nomi di dominio, come GoDaddy. Vedrai anche quando il nome di dominio è stato registrato e quando scade.

12 curl o wget

curl e wget sono utilità popolari per scaricare file dai server utilizzando la riga di comando. wget seguirà automaticamente i reindirizzamenti, ma curl è popolare per gli script. Alcuni strumenti, come Oh My Zsh, ti faranno utilizzare uno di essi come parte del processo di installazione.

Per utilizzare curl per scaricare la home page da linux-console.net:

curl linux-console.net

E per wget:

wget linux-console.net

Se utilizzi una di queste utilità, fai attenzione alla scansione del sito di qualcun altro. È meglio eseguire download estesi da un computer di tua proprietà o da un altro computer autorizzato a farlo. In caso contrario, potrebbe essere interpretato come un attacco al sito.

La differenza principale tra i due è che curl è più adatto a scaricare singoli file, mentre wget può seguire i collegamenti in un sito per scaricare altre pagine. Puoi anche scaricare un'intera copia di un sito web usando wget, che è utile per fare un backup locale in caso di problemi.

Articoli correlati: