netcat又叫做瑞士军刀,是黑客和系统管理员常用的网络工具,最初开发的目的是文件传输,后来发展出很多强大的功能,比如也可以完成批量主机服务扫描。
之前介绍了另一个更常用的批量主机服务扫描工具:nmap。
netcat的安装也非常简单,直接yum安装:
yum install nc
一般不建议在生产环境安装nc,因为nc除了可以批量主机服务扫描外,还支持端口代理、文件传输,容易造成安全隐患。
netcat之批量主机服务扫描
netcat在扫描时常用的参数:
-w 设置超时时间
-z 输入输出模式
-v 显示命令执行过程
常用命令:
TCP协议
nc -v -z -w2 192.168.2.224 1-50
UDP协议
nc -v -z -w2 -u 192.168.2.224 1-50
netcat之文件传输
netcat可以指定一个本地端口号开启监听模式,客户端可以使用相同的netcat连接开启的端口发送信息,信息将在服务端显示出来。
开启监听
nc -l 2389
建立连接
nc localhost 2389
如果将服务端的输出重定向到文件,就可以用于文件传输:
nc -l 2389 > test
传输文件
cat testfile | nc localhost 2389
如果在一台服务器上测试,可以使用把nc切换到后台任务,在运行客户端的命令。