Nosūtiet datus starp tīkla datoriem, izmantojot Netcat, izmantojot komandrindu
Netcat ir jaudīgs komandrindas rīks, kas var nolasīt un rakstīt datus, izmantojot tīkla savienojumu, izmantojot TCP/IP. To cita starpā parasti izmanto relejiem, failu pārsūtīšanai, portu skenēšanai. Lai gan netcat izcelsme ir no unix un Linux pasaules, netcat ir iebūvēts arī operētājsistēmā Mac OS X, un mēs izmantosim utilītu nc kā vienkāršu veidu, kā nosūtīt datus un citu tekstu divos tīklā savienotos datoros.Izmantojot netcat datu sūtīšanai ar diezgan vienkāršām klienta un servera attiecībām, tas piedāvā potenciāli ātrāku alternatīvu tradicionālajai failu koplietošanai, kad lietotāji vēlētos palikt komandrindā, sūtot un saņemot datus, un ja savienojuma izveide, izmantojot SSH vai SFTP t praktiski.
Ņemiet vērā, ka netcat neprasa pieteikšanos vai autentifikāciju, vienīgā prasība ir, ka klientam ir jāzina servera IP adrese un klausīšanās porta numurs. Tas acīmredzami rada zināmu drošības ļaunprātīgas izmantošanas iespējamību, tāpēc netcat izmantošana datu un teksta sūtīšanai parasti ir vislabāk rezervēta pieredzējušiem lietotājiem vai lietošanai tikai aiz aizsargāta lokālā tīkla, kur ir mazs risks. Situācijās, kurās ir svarīgi uzsvērt drošību, labāk izmantot SSH.
Vienkāršības labad 1. datoru, kas klausās ar netcat, mēs dēvēsim par “serveri”, bet 2. datoru, kas nosūta datus uz 1. datoru, mēs sauksim par “klientu”.
Iestatiet Netcat klausīšanai serverī (1. datorā) un portā
Mēs palaidīsim netcat un liksim tam noklausīties portā 2999, un pēc tam visus saņemtos datus novirzīsim uz failu ar nosaukumu “received.txt” ar šādu komandu virkni:
nc -l 2999 > saņemts.txt
Pirms tā izsaukšanas un pārejas uz klientu, vēlēsities, lai Mac datora IP adrese būtu lokālajā tīklā. To var iegūt no tīkla vadības paneļa vai, tā kā jūs jau atrodaties terminālī, izmantojot komandrindu ar šādu sintaksi:
ipconfig getifaddr en0
Mūsdienu Mac datoros ar tikai Wi-Fi tiks izmantots en0, Mac datoros ar Ethernet un Wi-Fi var izmantot en1. Ja vienā no tiem nekas neparādās, izmēģiniet otru interfeisu, lai iegūtu LAN IP. Pieņemsim, ka šis Mac IP IP tiek ziņots kā “192.168.1.101”, protams, jūsu IP adrese, visticamāk, atšķirsies. Tas būs nepieciešams klienta datorā, lai pārsūtītu datus, ko mēs apskatīsim tālāk.
Pārvadiet datus no klienta (2. datora) uz klausīšanās serveri
Tagad klientam, no kura vēlaties sūtīt datus, varat izmantot šādu komandu. Mēs izmantosim cat, lai izmestu teksta failu tīklā uz klausīšanās netcat serveri, taču jūs varat pārsūtīt gandrīz visu, ko vēlaties:
cat sendthisdataover.txt | nc 192.168.1.101 2999
Lai tas darbotos pareizi, noteikti ievadiet savu IP adresi no servera un ievadiet atbilstošo failu vai tekstu, kuru vēlaties nosūtīt.
Pieņemot, ka vietējais tīkls ir pat nedaudz ātrs, datiem vajadzētu saņemt diezgan ātri, ja ne uzreiz. Kad datu pārsūtīšana ir pabeigta, abas savienojuma puses tiks pārtrauktas un serveris pārtrauks klausīšanos, pēc tam aizver portu. Tas padara to efektīvu vienreizējai datu, piemēram, žurnālfailu vai liela teksta dokumenta, nosūtīšanai, taču tas ne vienmēr ir praktiski, lai pārvietotu daudzus failus.
Kā jau minēts, varat pārsūtīt gandrīz jebkurus datus, tāpēc neatkarīgi no tā, vai tie ir citas lietotnes izvade, aste, kaķis vai pat izmests tieši no starpliktuves, izmantojot pbcopy un pbpaste, tie tiks pārsūtīti caur netcat.
Jāatzīmē, ka ir ērtāki veidi, kā koplietot starpliktuvi starp Mac vai starp Mac un Linux vai Windows iekārtām, un šādās situācijās labāk izmantot bezmaksas rīkus, piemēram, Teleport for Mac. Ievades koplietošana starp Mac datoriem vai bezmaksas Synergy utilīta, ja izmantojat platformas starp Mac un personālajiem datoriem. Abi ļauj lietotājam koplietot starpliktuves datus, kā arī ievades ierīces, piemēram, peli un tastatūru.
Lai gan šī demonstrācija tiek rādīta divos Mac datoros ar operētājsistēmu OS X, nav nekāda iemesla, lai izmantotu netcat, lai nosūtītu datus starp Mac un Linux datoru vai otrādi.
Tur ir daudz citu lielisku netcat izmantošanas veidu. Ja jums ir kādi favorīti, paziņojiet mums komentāros!