日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

【Linux学习笔记】用nc实现两台主机间的文件传输(不需要输密码)

發布時間:2023/11/29 54 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Linux学习笔记】用nc实现两台主机间的文件传输(不需要输密码) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

? ? ? ? 通常,可以用scp完成兩臺主機間的文件傳輸任務,但在主機間未建立信任關系的情況下,scp每次都需要輸入密碼,用起來感覺不是很方便,之前這篇筆記介紹過不用輸入密碼執行腳本或傳輸文件的方法,但對于一些臨時性的任務,準備工作還是比較麻煩。
? ? ? ? 本筆記介紹一種簡單的不用密碼即可實現兩臺主機間的文件傳輸的技巧—借助Linux的nc工具,方便之處:1) Linux系統通常默認安裝nc工具,不需額外安裝;2) 傳輸文件時不需輸入密碼。不足之處:需要在兩臺機器上分別輸入一條命令。^_^

1. what is nc ?
? ? ? ? nc是netcat的簡寫,關于nc是什么,man如是說:arbitrary TCP and UDP connections and listens
? ? ? ? nc可以方便地實現任意TCP/UDP端口的偵聽,連接的建立,端口的掃描,等等。也即,nc既可以作為server以TCP或UDP方式偵聽指定端口,也可以作為client發起TCP連接或方式UDP包。下面要介紹的技巧就是借助其TCP連接來實現主機間文件傳輸的。
? ? ? ? nc的控制參數不少,常用的幾個參數如下所列:
? ? ? ? 1) -l
? ? ? ? 用于指定nc將處于偵聽模式。指定該參數,則意味著nc被當作server,偵聽并接受連接,而非向其它地址發起連接。
? ? ? ? 2) -p <port>
? ? ? ? 指定nc要使用的端口。若之前已指定-l,則這里的-p指定具體的偵聽端口;若未指定-l,則表示向這個端口發起連接。
? ? ? ? 備注:nc要連接的目的端口可以是具體的整數,也可以直接通過服務名指定,這種情況下,nc會負責將name映射至某個well-known port(可用cat /etc/services查看這些端口跟服務名的映射關系)
? ? ? ? 3) -s <hostname/ip-address>
? ? ? ? 指定發送數據的源IP地址,適用于多網卡機器
? ? ? ? 4) -u
? ? ? ? 指定nc使用UDP協議,默認為TCP
? ? ? ? 5) -v
? ? ? ? 輸出交互或出錯信息,新手調試時尤為有用
2. use nc to transmit data between hosts
? ? ? ? 經過上面對nc的簡介,估計不少同學已經知道怎么用nc來實現兩臺機器間的文件傳輸了。這里對實現流程做簡單說明。
? ? ? ? 1)在數據接收方的機器上偵聽指定端口

nc -l -p 8210 > demo.txt # 在本機8210端口偵聽TCP連接,將收到的數據寫入文本文件nc -l -p 8210 > demo.tar.bz2 # 在本機8210端口偵聽TCP連接,將收到的數據寫成壓縮文件

? ? ? ?? 2)在數據發送方機器上向指定地址(ip+port)以TCP方式發送數據 ?

nc dest_ip 8210 < demo.txt # 向ip為dest_ip的機器的8210端口發送demo.txt文件nc dest_ip 8210 < $(tar -jcvf demo.tar.bz2 demo.txt) # 壓縮后發送

? ? ? ? 3)-v打印出錯信息
? ? ? ? 接收方:nc -v -l -p 8210?
? ? ? ? 發送方:nc -v dest_ip 8210

? ? ? ? 注意:使用nc傳文件時,需注意操作次序,receiver先偵聽端口,sender向receiver所在機器的該端口發送數據。否則發送失敗。 ? ??

=============== EOF ===============

?

總結

以上是生活随笔為你收集整理的【Linux学习笔记】用nc实现两台主机间的文件传输(不需要输密码)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。