zoukankan      html  css  js  c++  java
  • Linux--nc(netcat)

    参考:

    https://www.cnblogs.com/hxsyl/p/6118078.html

    https://www.oschina.net/translate/linux-netcat-command

    https://blog.csdn.net/qq_29499107/article/details/82384393 

    nc提供的功能:可以通过Tcp和Udp在网络中读写数据。它所作的工作就是在两台电脑之间建立连接并返回两个数据流,基于这样的功能可以有很多的使用场景。

    nc使用场景1--端口扫描

    用于发现机器上开放的端口

    $ nc -v -z -w2 127.0.0.1 1-100
    Connection to 127.0.0.1 22 port [tcp/ssh] succeeded!
    Connection to 127.0.0.1 53 port [tcp/domain] succeeded!
    Connection to 127.0.0.1 80 port [tcp/http] succeeded!
    ...
    nc: connect to 127.0.0.1 port 100 (tcp) failed: Connection refused

    这个命令打印1-100的开发端口。

    z 参数告诉netcat使用0 IO,连接成功后立即关闭连接, 不进行数据交换(谢谢@jxing 指点)

    v 参数显示执行过程

    n 参数告诉netcat 不要使用DNS反向查询IP地址的域名

    一旦发现开放端口,就可以使用nc连接服务抓取banner。Banner是一个你连接的服务发送给你的文本信息。当你试图鉴别漏洞或者服务的类型和版本的时候,Banner信息是非常有用的。但是,并不是所有的服务都会发送banner。

    nc -v 172.31.100.7 21

    netcat 命令会连接开放端口21并且打印运行在这个端口上服务的banner信息。

    nc应用场景2--文件传输

    如果只是临时一次文件传输,使用nc就不用麻烦的配置ftp等。

    首先在接收端192.168.1.3上: nc -l 1234 > file.txt

    然后在发送端192.168.1.2上: nc 192.168.1.3 < file.txt

    server    $nc -l 1567 < file.txt 

    client     $nc -n 172.31.100.7 1567 > file.txt 

    这里在A上创建了一个服务器,并且重定向netcat的输入为文件file.txt,如有有连接连接到1234端口,nc会发送file的文件内容。

    在客户端我们重定向输出到file.txt,当B连接到A,A发送文件内容,B保存文件内容到file.txt.

    没有必要创建文件源作为Server,我们也可以相反的方法使用。像下面的我们发送文件从B到A,但是服务器创建在A上,这次我们仅需要重定向netcat的输出并且重定向B的输入文件。

    B作为Server

    Server        $nc -l 1567 > file.txt 

    Client          nc 172.31.100.23 1567 < file.txt 

    注意:先运行接收端,指定一个端口为1234,文件为test.txt,再执行发送端,并且发送端必须存在同名的文件test.txt

    -l 开启 监听模式,用于指定nc将处于监听模式。通常 这样代表着为一个 服务等待客户端来链接指定的端口。

    -p<通信端口> 设置本地主机使用的通信端口。有可能会关闭

    -k<通信端口>强制 nc 待命链接.当客户端从服务端断开连接后,过一段时间服务端也会停止监听。 但通过选项 -k 我们可以强制服务器保持连接并继续监听端口。

    nc应用场景3--目录传输

    从server1(192.168.16.233)拷贝nginx目录内容到server2(192.168.48.47)上。需要先在server2上,用nc激活监听,

    server2上运行:# nc -l 1234 | tar xzv-

    server1上运行:# tar czv- nginx | nc 192.168.48.47 1234 

    nc应用场景4--会话

    在Server(192.168.1.2)上:

    $nc -l 1567

    在Client(192.168.1.3)上:

    $nc 192.168.1.2 1567
  • 相关阅读:
    第三天 moyax
    mkfs.ext3 option
    write file to stroage trigger kernel warning
    download fomat install rootfs script
    custom usb-seriel udev relus for compatible usb-seriel devices using kermit
    Wifi Troughput Test using iperf
    learning uboot switch to standby system using button
    learning uboot support web http function in qca4531 cpu
    learngin uboot design parameter recovery mechanism
    learning uboot auto switch to stanbdy system in qca4531 cpu
  • 原文地址:https://www.cnblogs.com/Jing-Wang/p/11030152.html
Copyright © 2011-2022 走看看