centos 端口测试之nc使用

摘要:
服务器端口测试正常。操作和维护通常使用telnet进行检查,但它有局限性。服务器端口必须运行服务。Nc是netcat工具的缩写,这是一种可以用于端口扫描、文件传输和其他功能的网络工具。centos的安装也很简单:yumeinstallnc sync通用功能1。它可以监听任何TCP/UDP端口。nc可以作为服务器监听TCP或UDP模式下的指定端口。2.端口扫描。nc可以作为客户端启动TCP或UDP连接。3.机器之间的文件传输。4.机器之间的网络速度测量。NC仅用于TCP/UDP协议的端口测试。其他功能很少使用!

服务器端口测试是否正常,运维一般使用telnet来检查,但它有局限性,服务器的端口必须存在服务运行。
这时使用nc可以在服务端模拟开启一个端口,再通过nc测试此端口,好用!
nc是netcat工具的简称,一个网络工具,可以用来端口扫描、文件传输等功能。
centos上面安装也很简单:

yum install nc -y

nc常用功能

1、实现任意TCP/UDP端口的侦听,nc可以作为server以TCP或UDP方式侦听指定端口
2、端口的扫描,nc可以作为client发起TCP或UDP连接
3、机器之间传输文件
4、机器之间网络测速

一般nc只用来做TCP/UDP协议的端口测试,其它功能少用!

nc帮助说明

# nc --help 
Ncat 7.50 ( https://nmap.org/ncat )
Usage: ncat [options] [hostname] [port]

Options taking a time assume seconds. Append 'ms' for milliseconds,
's' for seconds, 'm' for minutes, or 'h' for hours (e.g. 500ms).
  -4                         Use IPv4 only
  -6                         Use IPv6 only
  -U, --unixsock             Use Unix domain sockets only
  -C, --crlf                 Use CRLF for EOL sequence
  -c, --sh-exec <command>    Executes the given command via /bin/sh
  -e, --exec <command>       Executes the given command
      --lua-exec <filename>  Executes the given Lua script
  -g hop1[,hop2,...]         Loose source routing hop points (8 max)
  -G <n>                     Loose source routing hop pointer (4, 8, 12, ...)
  -m, --max-conns <n>        Maximum <n> simultaneous connections
  -h, --help                 Display this help screen
  -d, --delay <time>         Wait between read/writes
  -o, --output <filename>    Dump session data to a file
  -x, --hex-dump <filename>  Dump session data as hex to a file
  -i, --idle-timeout <time>  Idle read/write timeout
  -p, --source-port port     Specify source port to use
  -s, --source addr          Specify source address to use (doesn't affect -l)
  -l, --listen               Bind and listen for incoming connections
  -k, --keep-open            Accept multiple connections in listen mode
  -n, --nodns                Do not resolve hostnames via DNS
  -t, --telnet               Answer Telnet negotiations
  -u, --udp                  Use UDP instead of default TCP
      --sctp                 Use SCTP instead of default TCP
  -v, --verbose              Set verbosity level (can be used several times)
  -w, --wait <time>          Connect timeout
  -z                         Zero-I/O mode, report connection status only
      --append-output        Append rather than clobber specified output files
      --send-only            Only send data, ignoring received; quit on EOF
      --recv-only            Only receive data, never send anything
      --allow                Allow only given hosts to connect to Ncat
      --allowfile            A file of hosts allowed to connect to Ncat
      --deny                 Deny given hosts from connecting to Ncat
      --denyfile             A file of hosts denied from connecting to Ncat
      --broker               Enable Ncat's connection brokering mode
      --chat                 Start a simple Ncat chat server
      --proxy <addr[:port]>  Specify address of host to proxy through
      --proxy-type <type>    Specify proxy type ("http" or "socks4" or "socks5")
      --proxy-auth <auth>    Authenticate with HTTP or SOCKS proxy server
      --ssl                  Connect or listen with SSL
      --ssl-cert             Specify SSL certificate file (PEM) for listening
      --ssl-key              Specify SSL private key (PEM) for listening
      --ssl-verify           Verify trust and domain name of certificates
      --ssl-trustfile        PEM file containing trusted SSL certificates
      --ssl-ciphers          Cipherlist containing SSL ciphers to use
      --version              Display Ncat's version information and exit

nc常用案例

TCP监听测试

  • nc可作为server端192.168.10.11启动一个tcp的监听

nc -l 80

  • 客户端测试方法:直接telnet该机器ip+端口

telnet 192.168.10.11 80
或:nmap 192.168.10.11 -p 80

UDP监听测试

  • nc作为server端启动一个udp的监听

nc -lu 80

通过netstat可以看到udp协议已经监听:

> # netstat -tunlp
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:80      0.0.0.0:*                15401/nc  
  • 客户端测试方法:(telnet只能测试tcp协议)

nc -vuz 192.168.10.11 80
(u表示udp端口,v表示可视化输出,z表示扫描时不发送数据)

使用nc传输文件

使用nc传输文件不用scp或rsync那种输入密码的操作,当然也存在一定安全性。

例如:要把A机器上的一个sql文件发送到B机器上
(需要先开启侦听B机器端口,再到A机器发送数据到该端口)

步骤1,先在B机器上启动一个接收文件的监听,格式如下

nc -l 888 > zabbix.sql

步骤2,在A机器上往B机器的888端口发送数据,把下面sql包发送过去

nc 192.168.10.11 888 < zabbix.sql

也可通过nc传输目录,但这里不推荐使用,暂不举例。

网络测试

这里也不推荐使用nc,直接使用speedtest,简单:

wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py
chmod +x speedtest-cli
./speedtest-cli

解决telnet 无法断开问题

CTRL+]键,这时会强制退到telnet命令界面下,再输入quit退出就行。

----by 钢铁 648403020@qq.com

免责声明:文章转载自《centos 端口测试之nc使用》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇不同linux禁用nouveau驱动方法10.免证书真机调试下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

关于tomcat无法启动问题详解

通常情况tomcat无法启动,有这么几个原因?(1)代码有问题; (2)tomcat有问题; (3)端口被占; (4)动态web项目为3.0; (5)java环境运行内存不足; 这是比较常见的问题。解决方案基本都可以在网上找的到。但是我们有的时候不仅仅要学会通过恰当的关键字得到有效的信息,同时再面对问题的时候,也要知道该问题为什么会发生,知道问题的产生原因...

Ubuntu16.04 同时连接无线网络和以太网端口

背景: 激光雷达VLP16通过以太网线连接电脑。在本博客所述的设置之前,一旦连接以太网线,本机(dell笔记本)的无线网络立即断开,即无法同时连接无线网络和以太网端口。 问题查找: 命令行  $ ip route show  或者  $ ifconfig  ,查看本机的有线网络和无线网络IP。 有线网络标记为,enp2s0;无线网络标记为,wlp3s0;...

[无线路由] “免费”斐讯K2路由器刷OpenWRT(实战MWAN多宽带网速叠加)

(阿财首发于什么值得买)斐讯K2可以算是一个非常另类的跨界数码产品,其产品完全的醉翁之意不在酒。最多值99元的 MT7260硬件架构和用料,售价399元,金额激活K码后自动转入合作理财P2P平台,等待一个月可以全额返还路由器金额的“免费”模式,让阿财的小 伙伴们在群里讨论差不多大半个月。心痒痒又怕上了贼船,因为阿财的家中实际上有2条宽带 ——线路一、联通2...

centos 7.9下载地址

http://isoredirect.centos.org/centos/7/isos/x86_64/ In order to conserve the limited bandwidth available, ISO images are not downloadable from mirror.centos.org The following mirr...

Linux后台执行脚本 &amp;amp;与nohup

Linux后台执行脚本的方式: 0、脚本代码 [root@VM_1_3_centos apps]# cat test.php <?php sleep(5); echo "hello world! "; 1、& 符号当在前台运行某个作业时,终端被该作业占据;可以在命令后面加上& 实现后台运行。示例1、 [root@VM_1_3_c...

信息安全期末复习

一、米特尼克的圣诞攻击 1、攻击背景 在Unix世界中,可以很容易地给予信任。 假设用户在机器A和机器B上都有一个帐户,为了使两者之间的麻烦最小,就可以在它们之间建立全双工的信任关系。 在A的主目录中,创建一个 .rhosts 文件:echo "hostB 用户名" > .rhosts,在B的主目录中做同样的操作,现在,用户可以使用任何 r* 命令来...