Installazione di netcat in Linux
Per iniziare, sulle distribuzioni Linux con sede a Debian, eseguire il comando di seguito per installare NetCAT.
SUDO APT Installa NetCatSu Distribuzioni Linux basate su Red Hat, è possibile installare NetCat eseguendo il comando di seguito.
yum install -y ncScansionare una porta usando NC
Netcat o NC possono essere utilizzati per scansionare le porte. La sintassi per scansionare una singola porta è la seguente.
nc -zvnCome puoi vedere, la sintassi chiama NetCat con le opzioni scelte (spiegate di seguito) seguite dall'indirizzo IP di destinazione e dalla porta target, come mostrato nel seguente esempio pratico.
NC -ZVN 172.67.209.252 80Dove:
Scansionare più porte con NC
È inoltre possibile utilizzare NetCat/NC per scansionare più porte. La sintassi è la stessa di mostrare in precedenza; Basta aggiungere uno spazio e le porte che si desidera scansionare, come mostrato nell'esempio seguente in cui sono scansionate le porte 80, 22 e 53.
NC -ZVN 172.67.209.252 80 22 53Le porta di scansione vanno con netcat
È possibile scansionare gli intervalli di porta implementando un trattino, come mostrato nel seguente esempio in cui vengono scansionate tutte le porte da 80 a 89 (incluse).
NC -ZVN 172.67.209.252 80-89Banner che afferra con netcat
Banner Grabbing è una tecnica utilizzata per apprendere la versione software in esecuzione su un target. Gli amministratori di sistema lo usano per mantenere un inventario del software sul dispositivo. Gli hacker lo usano anche come parte del processo di footprint.
Banner che afferra analizza le risposte della rete per cercare di indovinare o apprendere il software dietro il nostro obiettivo. L'esempio seguente mostra come utilizzare NC o NetCAT senza opzioni (o utilizzando il -v opzione) porta a informazioni sulla versione del server FTP di destinazione.
NC 198.54.116.197 21Come puoi vedere, Netcat ha rilevato puro-ftpd sul target. L'output ci consente inoltre di sapere che è vietato l'accesso anonimo e il server supporta IPv6.
NC 172.67.209.252 80Trasferimento di file utilizzando NC (directory corrente)
NetCat (NC) è anche utile per trasferire i file tra i dispositivi. Nell'esempio seguente, un file chiamato Linuxhint.txt verrà trasferito da un dispositivo a un altro.
Il dispositivo al file verrà inviato sul dispositivo di ricezione, eseguire il comando in basso, in cui l'opzione -l indica a NetCat di rimanere in modalità di ascolto in attesa di connessioni in entrata. L'opzione -P definisce il numero di porta e > [Nome file] Specifica il file da ricevere. Esegui il comando di seguito sul dispositivo di ricezione, sostituendo Linuxhint.TXT con il nome del file che si desidera trasferire.
NC -l -p 9899> LinuxHint.TXTIl computer da cui viene inviato il file sul dispositivo di invio, eseguire il comando in basso dove il -w l'opzione specifica il timeout (2 secondi in questo caso). Sul dispositivo di invio, la porta non richiede l'opzione -P. IL < [FileName] Specifica il file da inviare.
NC -W 2 192.168.1.102 9899 < linuxhint.txtCome puoi vedere sul dispositivo di destinazione, il file è stato trasferito correttamente.
lsInvio di file archiviati in una directory diversa utilizzando NC
L'esempio precedente mostra come inviare un file che viene archiviato nella directory corrente. Se il mittente desidera inviare un file che non viene archiviato nella directory corrente, può specificare un percorso da inviare.
Sul dispositivo di ricezione, eseguire lo stesso comando dell'esempio precedente senza modifiche, come mostrato di seguito.
NC -L 9899> Linuxhint.TXTL'unica modifica che applicheremo sul dispositivo di invio è l'inclusione della directory in cui viene memorizzato il file. Per questo esempio, ho spostato il Linuxhint.TXT al Linuxhintdir directory. Come puoi vedere, l'intero percorso del file è specificato come < linuxhintdir/linuxhint.txt, where Linuxhintdir è una sottodirectory della directory corrente.
NC -W 2 192.168.1.102 9899 < linuxhintdir/linuxhint.txtIl file che desideri inviare è all'interno della tua home directory e la tua directory corrente è diversa; Il comando eseguito sul dispositivo mittente sarebbe il seguente.
NC -W 2 192.168.1.102 9899 < /home/linuxhint/linuxhint2.txtRicevere file e archiviarli in una directory diversa usando NC
Contrariamente allo scenario precedente, il ricevitore potrebbe non voler archiviare il file trasferito nella directory corrente. Quando si abilitano la modalità di ascolto per le connessioni in entrata sul computer ricevente, è possibile definire la directory per archiviare i file. La sintassi è la stessa di quando si inviano file da una sottodirectory; Basta specificare la sottodirectory e il nome del file come mostrato di seguito.
NC -L -P 8999> Sottodirectory/LinuxHint.TXTSul secondo computer, usa gli stessi comandi spiegati in precedenza; In questo esempio, il file da inviare viene archiviato in casa, non nella directory corrente.
NC -W 2 192.168.1.102 9899 < /home/linuxhint/linuxhint2.txtE come puoi vedere, il file viene archiviato nella directory definita. Inoltre, il nome del file è cambiato Linuxhint2.TXT A Linuxhint.TXT Come definito nel comando di ricezione del computer.
Mostrando progressi di trasferimento di file quando si utilizza NC
IL Pv L'implementazione del comando visualizza l'avanzamento del transfert attraverso il tubo. Con questo comando, possiamo aggiungere informazioni sui progressi quando si utilizza NetCat.
Installare Pv Nelle distribuzioni Linux con sede a Debian, esegui il comando di seguito.
SUDO APT Installa PVAggiungi un tubo dopo la porta sul dispositivo di ricezione, seguito dal Pv comando, il percorso e il nome del file che si desidera salvare, come mostrato nell'esempio seguente.
Netcat -l 9899 | PV> LinuxHint2.TXTInvia il file dal dispositivo mittente:
Vedrai i progressi nel dispositivo di ricezione in cui hai aggiunto il Pv comando.
Compriming e trasferimento di file al volo con NC
È inoltre possibile comprimere i file durante l'invio tramite netcat con una singola esecuzione usando il tubo. L'esempio seguente mostra come comprimere il Linuxhint2 directory e invialo tramite netcat.
Lascia NC ad ascoltare connessioni in entrata; È possibile implementare il comando fotovoltaico per vedere i progressi.
NC -l -p 9899 | PV> LinuxHint2Sul mittente, comprimere la directory o il file utilizzando il comando TAR con le opzioni corrette e mostrato di seguito. Quindi aggiungi il tubo e invia normalmente senza specificare il file, già specificato durante la compressione.
TAR CFVZ - LinuxHint2 | NC -W 2 192.168.1.102 9899Come puoi vedere, il file è stato trasferito ed estratto correttamente.
Trasferimento di un disco intero o partizione usando NC
L'ultimo esempio di questo tutorial mostra come trasferire un'intera partizione o disco utilizzando NetCat.
Sul dispositivo di ricezione, eseguire il comando di seguito.
NC -P 9899 -L | bzip2 -d | dd di =/dev/sda1Sul mittente, digitare il comando seguente, sostituire /dev /sda1 per il disco o la partizione che si desidera trasferire.
bzip2 -c /dev /sda1 | NC 192.168.1.102 9899Conclusione
NetCat è uno strumento molto semplice che qualsiasi utente Linux o utente che si tratta di networking deve sapere. Usarlo è piuttosto semplice, come mostrato in questo tutorial. NetCat è progettato per essere utilizzato da altri programmi o script; È un buon aiuto per gli sviluppatori.
Spero che questo tutorial Netcat che spiega 10 diversi usi sia stato utile per te. Continua a seguire il suggerimento Linux per ulteriori suggerimenti e tutorial Linux.