Cos'è netcat?
NetCat è un'utilità di networking che consente ai suoi utenti di scrivere e leggere i dati da e verso le reti di computer. Comunemente, utilizza TCP o UDP per questa funzione. NetCat semplifica l'invio e la ricezione di messaggi su Linux e sulla sua natura simile a un back-end, che gli consente di essere utilizzato da altri script e programmi. Inoltre, è multipiattaforma e di solito preinstallata su molte famose Distri Linux come Debian, Ubuntu e Centos. È uno strumento utile che rende la condivisione delle informazioni, o più in generale, il networking per computer, possibile e facile.
Installazione di netcat
Diamo un'occhiata a quali sono le basi di NetCat e come puoi iniziare a usarlo per il networking. Come accennato in precedenza, è per lo più preinstallato in Ubuntu (la Distro Linux che useremo per dimostrare l'uso di NC) e altri sistemi Linux popolari, quindi non dovrai installarlo probabilmente. Tuttavia, se sei un centesimo 7/8 o l'utente Redhat, il seguente breve tutorial sulla sua installazione è per te.
Il primo passo è assicurarsi di avere il comando yum già installato sul tuo computer, in quanto è quello che saremo utilizzati principalmente per installare NetCat. Detto questo, poi, devi aggiornare tutti i pacchetti prima di procedere ulteriormente.
$ yum update -y
Una volta fatto ciò, tutto ciò che rimane da fare è installare il pacchetto netcat. Esegui il seguente comando per farlo.
$ yum install -y nc
Infine, è possibile verificare se l'installazione è andata senza intoppi eseguendo un comando RPM.
$ rpm -qa | grep -i rmap -ncat
Su Ubuntu, se per qualche motivo non lo hai già preinstallato, esegui il comando qui sotto per ottenerlo.
$ sudo apt install netcat
Questo dovrebbe essere per le istruzioni di installazione. Quando sei sicuro, hai netcat attivo e funzionante sul tuo sistema Linux, procedi alla sezione successiva.
Come usare netcat?
Se sei un principiante Linux o qualcuno che non ha mai usato NetCat prima, potrebbe essere leggermente confuso e intimidatorio all'inizio. Ma non preoccuparti, poiché ti accompagneremo attraverso ogni passaggio del processo. Quindi, prima di tutto, qual è la sintassi generale del comando netcat?
$ nc [-46cddfhklnnrstuuvz] [-c certfile] [-e name] [-h hash] [-i lunghezza] [-i intervallo] [-k keyfile] [-m ttl] [-m minttl] [-o lunghezza] [-o lunghezza ] [-o staplefile] [-p proxy_username] [-p source_port] [-r cafile] [-s source] [-t key word] [-v rtable] [-w timeout] [-x proxy_protocol] [-x proxy_address [: port]] [destinazione] [porta]
Certo, sembra terrificante se stai appena iniziando con il networking per computer. Semplificiamo un po 'e lo portiamo a un livello più accessibile, più accessibile.
Porta host $ NC [opzioni]
Così va meglio. Ora, non utilizzerai tutte le opzioni contemporaneamente, quindi i comandi con cui ci occuperemo non saranno così complicati. L'obiettivo principale di questo tutorial è mostrarti come puoi inviare e ricevere messaggi con NetCat, che arriveremo non appena conoscerai le basi.
Abbiamo tre argomenti nella sintassi generale, vale a dire opzioni, host e porta. Per impostazione predefinita, NetCAT stabilirà una connessione TCP con l'host e la porta che si inserisce, ma puoi cambiarla in UDP passando al comando, come mostrato di seguito.
Porta host $ NC -U
Successivamente, possiamo testare se NetCat funziona correttamente o meno cercando di connettersi a Google.
$ nc -vz Google.com 443
Qui, -v specifica il livello di verbosità, z sta per zero modalità di input/output, Google è l'host e 443 è la porta. Abbastanza semplice, giusto?
Impostazione di un server di chat
Ora che abbiamo esaminato le basi di NetCat e abbiamo avuto una buona comprensione di come funziona, è tempo che iniziamo a impostare un server di chat. È più semplice di quanto si pensi. Per una rete a due vie, avremo bisogno di un server e un client. Una volta che il server è in esecuzione, siamo in attività non appena il client si collega ad esso.
Possiamo avviare un server netcat in modalità di ascolto eseguendo il comando seguente. (-P Specifica la porta)
$ nc -l -p 12345
Ai fini dimostrativi, imposteremo il server e il client sullo stesso computer, rendendo quindi LocalHost il nome host. Ora per connetterci al server, dobbiamo inserire in modalità client. Questo può essere fatto con un comando con la sintassi generale di
porta host $ nc
Collegiamo il nome host e la porta del nostro server precedentemente definito eseguendo il comando seguente.
$ NC Localhost 12345
Fatto ciò, il server di chat è tutto impostato e pronto per andare. Tutto ciò che rimane è inviare e ricevere messaggi avanti e indietro tra il server e il client. Vediamo come farlo.
Invio e ricezione di messaggi
Come abbiamo accennato in precedenza, il server e il client, nel nostro caso, sono sulla stessa macchina. Ciò significa che possiamo inviare e ricevere messaggi tramite diverse finestre del terminale e inserire modalità diverse: server e client. Quindi, avvia un'altra finestra del terminale e iniziamo a inviarti alcuni messaggi di testo.
Tutto quello che devi fare è digitare il tuo messaggio e premere Invio; Questo è mostrato nelle immagini sottostanti.
C'è anche un altro modo per farlo, che potrebbe rivelarsi più breve del metodo descritto in precedenza. Questo metodo utilizza la funzione Echo per inviare messaggi. La sintassi generale di questa soluzione di comunicazione è la seguente.
$ echo [testo] | Porta host Netcat
Simile, ma non lo stesso. Nell'opzione di testo, è possibile inserire cifre, caratteri, stringhe; lo chiami. Quindi, ad esempio, se si desidera inviare la cifra 2 al server localhost che abbiamo appena impostato sulla porta 12345, digitare:
$ echo 2 | Netcat Localhost 12345
E questo è tutto. È possibile inviare e ricevere messaggi con NetCAT tramite uno dei metodi descritti come entrambi funzionano altrettanto bene; È una questione di scelta personale più di ogni altra cosa.
Conclusione
In questa guida, inizialmente abbiamo descritto cos'è NetCat, come installarlo e i suoi fondamentali. Più tardi, abbiamo mostrato come è possibile impostare un server di chat e iniziare a inviare e ricevere messaggi in pochissimo tempo. Spero che avrai imparato come utilizzare NetCat per fare rete con altri sistemi Linux.