繼續Netcat 這個命令吧
?
1:遠程拷貝文件
在本地輸出 文件debian.img 到 192.168.5.40 主機12345端口監聽
nc -v 192.168.5.40 12345 < debian.img
在192.168.5.40 主機12345端口監聽,將文件指定為debian-copy.img
nc -l ?-v 12345 > debian-copy.img
?
2.?克隆硬盤或分區
這個命令真的蠻喜歡的,以前備份操作制作好的debian系統,尤其是用dd備份磁盤,例,你可以通過dd ,然后nc 進行網絡傳輸,不需要兩次操作
操作與上面的拷貝是雷同的,只需要由dd獲得硬盤或分區的數據,然后傳輸即可。
克隆硬盤或分區的操作,不應在已經mount的的系統上進行。所以,需要使用安裝光盤引導后,比如LiveUSB模式,
在server2上進行類似的監聽動作:
# nc -l -p 1235 | dd of=/dev/sda(你可以不指定為/dev/sda,可以是任何格式,比如debian.image,這樣就把server1 /dev/sda的磁盤拷貝為debian.image)
?
server1上執行傳輸,即可完成從server1克隆sda硬盤到server2的任務:
# dd if=/dev/sda bs=1M ?| nc 192.168.5.40 12345
?
3:批量檢測服務器指定端口開放情況
a:假如我們要監控一堆指定的IP和端口,可新建一個文件(第1列服務器IP,第2列要監控的端口)。
# vim /scripts/ip-ports.txt
192.168.5.100 80
192.168.5.101 80?
192.168.5.102 80?
192.168.5.103 80?
b:我們可以寫這樣一個腳本來批量檢測端口是否開放:
# vim /scripts/ncports.sh
#!/bin/bash
#檢測服務器端口是否開放,成功會返回0值顯示ok,失敗會返回1值顯示fail
cat /scripts/ip-ports.txt | while read line
do
nc -w 10 -z $line > /dev/null 2>&1
if [ $? -eq 0 ]
then
echo $line:ok
else
echo $line:fail
fi
done
?