Avviso importante: tutti i testi di questo sito web sono stati tradotti da diverse lingue. Ci scusiamo per la loro qualità, potrebbe essere di qualità inferiore al solito. Saluti, l'Amministrazione del sito. E-mail: info@itbookmac.com

Invia dati attraverso computer collegati in rete con Netcat utilizzando la riga di comando

Netcat è un potente strumento a riga di comando in grado di leggere e scrivere dati attraverso una connessione di rete tramite TCP / IP, è comunemente usato per i relè, il trasferimento di file, la scansione delle porte, tra le altre cose. Sebbene le origini di netcat derivino dai mondi unix e linux, netcat è anche integrato in Mac OS X e utilizzeremo l’utility nc come un modo semplice per inviare dati e altro testo su due computer collegati in rete.

Usando netcat per inviare dati con una relazione client e server abbastanza semplice, offre un’alternativa potenzialmente più veloce alla tradizionale condivisione di file quando gli utenti preferiscono rimanere nella riga di comando mentre inviano e ricevono dati e dove la connessione tramite SSH o SFTP non è t pratico.

Si noti che netcat non richiede login o autenticazione, l’unico requisito è che il client sia a conoscenza dell’indirizzo IP del server e del numero della porta di ascolto. Ciò ovviamente aumenta il potenziale di abuso della sicurezza, quindi l’uso di netcat per l’invio di dati e il testo è generalmente preferibile per gli utenti avanzati o per l’utilizzo esclusivo dietro una rete locale protetta in cui vi sono pochi rischi. Le situazioni in cui la sicurezza è importante da sottolineare sarebbe meglio usare SSH.

Per comodità, faremo riferimento al computer 1 che ascolta con netcat come “Server” e faremo riferimento al computer 2 che invia i dati al computer 1 come “client”.

Imposta Netcat su Listen on Server (Computer 1) e Porta

Lanceremo netcat e lo ascolterà sulla porta 2999, quindi reindirizzare qualsiasi dato ricevuto in un file denominato “received.txt” con la seguente stringa di comando:

nc -l 2999> received.txt

Prima di chiamarlo spostato sul client, ti consigliamo di avere l’indirizzo IP Mac sulla rete locale. Puoi ottenerlo dal pannello di controllo della Rete, o dal momento che sei già al Terminale, tramite la riga di comando con la seguente sintassi:

ipconfig getifaddr en0

I moderni Mac con Wi-Fi useranno solo en0, i Mac con ethernet e wifi potrebbero usare en1. Se non si visualizza nulla, provare l’altra interfaccia per ottenere l’IP LAN. Supponiamo che questo IP Mac sia segnalato come “192.168.1.101”, ovviamente è probabile che il tuo sia diverso. Ne avrai bisogno sul computer client per inviare i dati, che tratteremo in seguito.

Trasferire i dati dal client (computer 2) al server di ascolto

Ora sul client da cui desideri inviare i dati, puoi utilizzare un comando simile al seguente. Useremo cat per scaricare un file di testo dalla rete al server di netcat in ascolto, ma puoi reindirizzare tutto ciò che vuoi:

cat sendthisdataover.txt | nc 192.168.1.101 2999

Affinché questo funzioni correttamente, accertarsi di inserire il proprio indirizzo IP dal server e inserire il file o il testo appropriato che si desidera inviare.

Supponendo che la rete locale sia anche marginalmente veloce, i dati dovrebbero arrivare abbastanza velocemente se non istantaneamente. Una volta completato il trasferimento dei dati, entrambi i lati della connessione cesseranno e il server interromperà l’ascolto, quindi chiuderà la porta. Ciò lo rende efficace per l’invio una tantum di dati come i file di registro o un documento di testo di grandi dimensioni, ma non è necessariamente pratico per lo spostamento su molti file.

Come già accennato, è possibile reindirizzare quasi tutti i dati, quindi se si tratta dell’output di un’altra app, tail, cat o anche scaricati direttamente dagli appunti con pbcopy e pbpaste, verrà trasferito tramite netcat.

Va notato che ci sono modi più convenienti per condividere un blocco appunti tra Mac o tra un Mac e Linux o macchine Windows, e in quelle situazioni è meglio usare strumenti gratuiti come Teleport per la condivisione di input Mac-to-Mac o Utilità Synergy gratuita se utilizzi una piattaforma incrociata tra Mac e PC. Entrambi consentono a un utente di condividere i dati degli appunti così come i dispositivi di input come mouse e tastiera.

Per la cronaca, mentre questa dimostrazione è mostrata su due Mac con OS X, non c’è motivo per cui non si possa usare netcat per inviare dati tra un computer Mac e Linux, o viceversa.

Ci sono un sacco di altri grandi usi per netcat là fuori, se hai dei preferiti, faccelo sapere nei commenti!

Like this post? Please share to your friends: