netcat

linux运维工具nc

一世执手 提交于 2020-04-06 06:09:39
Netcat被称为tcp/ip最好用的工具,也是linux开发/运维人员的必备技巧; 1.安装nc yum install nc -y 2.常用功能 2.1 端口测试 查看服务器的某个端口是否开启 nc -vz ip port nc -vz 192.168.1.1 80 -v:显示多点信息 -z:不发送数据 例如: 端口范围扫描 nc -v -v -w3 -z 192.168.1.1 80-88 两次-v显示更详细的内容; -w3:设置扫描超时时间 3秒; 2.2 传输测试 192.168.1.1 nc -l -p 8080 # 监听8080端口 192.168.1.2 nc 192.168.1.1 8080 这样两边就可以会话了,可以理解为远程聊天了 UDP会话 192.168.1.1 nc -u -l -p 8080 # 监听8080端口 192.168.1.2 nc -u 192.168.1.1 8080 2.3 文件传输 主机A想往主机B传输文件怎么办? 192.168.1.1 nc -l -p 8080 > aa.zip # 监听8080端口 192.168.1.2 nc 192.168.1.1 8080 < aa.zip #将aa.zip发送到指定主机+端口 2.4 测试网速 192.168.1.1 nc -l -p 8080 | pv 192.168.1.2 nc

能够勾起回忆的字符界面之美,一组上个世纪DOS软件的界面

徘徊边缘 提交于 2020-03-11 08:18:00
GW-BASIC,当年许多在pc上学编程的人最初接触到的编程环境。 这是微软为IBM开发的BASIC,微软开发的BASIC解释器最大的特点是支持浮点数,苹果早期的BASIC解释器不支持浮点数,后来也花了不少钱从微软手上购买BASIC解释器。 这个BASIC解释器最初应该是放在主板的ROM里面的,如果开机找不到操作系统就会进入ROM的BASIC,后来主板不内置BASIC解释器了,这个程序被搬到磁盘上。 Dos下著名的debug软件,就叫DEBUG,可以直接在上面输入汇编指令并执行,也可以装载一个可执行程序到内存并用汇编指令修改这个文件,因此也可以用来杀毒,用来研究系统,还可以用来做许多事情。 由于DEBUG可以即时往内存中输入汇编指令和保存指定内存的数据到文件,于是在那个年代用汇编语言开发一个小的程序不需要编译器,有人用dos的通管道重定向输入一个文本文件就能生成完整的.com程序,国内DOS上最早的汉字系统之一的2.13汉字系统就是作者吴晓军先生用DEBUG开发出来的。 Unix上的gdb虽然功能很强大,但是我想没人会通过gbd去开发程序,在MMU及各种机制的作用下内存已经不是那么容易随便修改了。 pctools 5.0 早期dos的dir命令是无法显示磁盘里隐藏文件和系统文件的,虽然可以用attrib修改一个文件的属性,可是如果连文件名字都看不到所以也不好改啊

Linux Netcat command – The swiss army knife of net

不羁岁月 提交于 2020-03-09 22:47:14
Swiss Army Knife of networking netcat is a versatile tool that is able to read and write data across TCP and UDP network . Combined with other tools and redirection it can be used in number of ways in your scripts. You will be surprised to see what you can accomplish with Linux netcat command. What netcat does it opens the connection between two machines and give back two streams. After that everything is up to your imagination. You can build a server, transfer files, chat with friends, stream media or use it as a standalone client for some other protocols. Here are some of the usage of netcat

linux centos7安装netcat

落花浮王杯 提交于 2020-03-09 22:45:04
在用swoole UDP服务器可以使用netcat -u 来连接测试时,报错-bash: netcat: command not found,网上一搜,才知道centos7未安装netcat 1、下载安装 下载页面:https://sourceforge.net/projects/netcat/files/netcat/0.7.1/ wget https://ncu.dl.sourceforge.net/project/netcat/netcat/0.7.1/netcat-0.7.1.tar.gz tar -zxvf netcat-0.7.1.tar.gz cd ./netcat-0.7.1/ ./configure --prefix=/opt/netcat make && make install 2、配置 vi /etc/profile 在文件中添加 NETCAT_HOME=/opt/netcat PATH=$PATH:$NETCAT_HOME/bin export PATH 再执行 source /etc/profile 这时候,netcat -help,若出现相关命令参数提示,则说明安装成功 来源: oschina 链接: https://my.oschina.net/u/3403514/blog/1606039

netcat ncat nc 常用功能介绍

梦想的初衷 提交于 2020-03-09 22:03:29
nc [选项] [主机] [端口(s)] -l 开启 listen 模式 -c 执行命令 nc 与 netcat、ncat 同义。 当作服务器或客户端 <!-- lang: shell --> $ nc -l 1234 # 服务器 $ nc 127.0.0.1 1234 # 客户端 端口扫描 <!-- lang: shell --> $ nc -z www.baidu.com 80-81 端口转发 <!-- lang: shell --> $ nc -l 80 -c "nc www.baidu.com 80" # 将发往本机 80 端口的数据转发给 google.com 的 80 端口 数据传输 文件从 client 传到 server;反过来也可以。 <!-- lang: shell --> $ nc -l 1234 > filename.out $ nc host.example.com 1234 < filename.in 参考 man nc Forwarding ports using netcat Netcat - Wikipedia 8 个实用的 Linux netcat 命令示例 比 man nc 多讲了些不常用的参数。 来源: oschina 链接: https://my.oschina.net/u/759266/blog/181783

nmap.org的21世纪的netcat(ncat)

耗尽温柔 提交于 2020-03-09 22:03:07
#echo server zhou@ubuntu:~$ cat test.py #!/usr/bin/env python import sys while True: s = sys.stdin.read(1) if s: sys.stdout.write(s) sys.stdout.flush() nc -l -k --sh-exec 'python test.py' 127.0.0.1 8086 zhou@ubuntu:~$ nc 127.0.0.1 8086 123 123 1444455 1444455 nmap.org的ncat支持--sh-exec和--lua-exec参数, 提供了这两个参数后, ncat会在appcet(-l)或connet后fork一个子进程,前者通过exec /bin/sh -c 来执行sh命令, 后者直接执行lua脚本. 同时,会生成两个pipe组, 将子进程的stdin和stdout分别重定向到两个pipe. ncat主进程在从socket收到数据后,会将数据发送到pipe中,由于子进程的stdin已经被重定向, 所以子进程中从stdin读相当于从pipe读,而pipe的数据就是socket过来的数据. 利用这个特性,我们就可以随意发挥了. 这将大大方便基于socket的服务的测试打桩. 以上就是简单的echo server的实现. 由于有

nc 命令详解

折月煮酒 提交于 2020-02-28 15:04:43
英文原文: Linux Netcat command – The swiss army knife of networking netcat是网络工具中的瑞士军刀,它能通过TCP和UDP在网络中读写数据。通过与其他工具结合和重定向,你可以在脚本中以多种方式使用它。使用netcat命令所能完成的事情令人惊讶。 netcat所做的就是在两台电脑之间建立链接并返回两个数据流,在这之后所能做的事就看你的想像力了。你能建立一个服务器,传输文件,与朋友聊天,传输流媒体或者用它作为其它协议的独立客户端。 下面是一些使用netcat的例子. [A(172.31.100.7) B(172.31.100.23)] Linux netcat 命令实例: 1,端口扫描 端口扫描经常被系统管理员和黑客用来发现在一些机器上开放的端口,帮助他们识别系统中的漏洞。 $nc -z -v -n 172.31.100.7 21-25 可以运行在TCP或者UDP模式,默认是TCP,-u参数调整为udp. z 参数告诉netcat使用0 IO,连接成功后立即关闭连接, 不进行数据交换(谢谢@jxing 指点) v 参数指使用冗余选项(译者注:即详细输出) n 参数告诉netcat 不要使用DNS反向查询IP地址的域名 这个命令会打印21到25 所有开放的端口。Banner是一个文本

【工具】Netcat(1)基本使用

一曲冷凌霜 提交于 2020-02-26 03:03:18
一.概述 netcat是一款基于tcp/ip协议(c/s模型的)的工具。 netcat的功能包括: 数据传输 文件传输 建立后门 端口转发 内外网突破 二.基础使用方法 创建一个服务器端: nc -l -p [ local_port ] nc -l -p 2222 //-l 表示启动监听模式,-p监听端口号 创建一个客户端: nc [ remote_addr ] [ remote_port ] nc 192.168.127.128 2222 演示: 注意:需要先创建服务器端,才能使用客户端,否则会自动断开。 三.命令执行 实现一个返回shell的通信,并能对机器ff nc -l -p [ local_port ] -e cmd.exe //-e表示 nc [ remote_addr ] [ remote_port ] 四.文件传输 使用场景: 取证:当目标机器被黑客攻击之后,取证人员可以利用nc的传输功能获取目标机器上的内容,避免直接在目标机器上进行操作造成取证的误差。 单纯获取目标机器敏感文件:当目标机器上有一些文件内容,无法正常下载时,可以利用nc进行文件传输。 nc中的数据传输使用的是标准的输入,输出流,所以可以直接利用nc来进行文件传输 //创建一个服务器,接受文件 nc - l - p [ local_port ] > outfile //创建一个客户端(连接服务端)

linux netcat命令

心不动则不痛 提交于 2020-01-26 00:38:37
netcat是网络工具中的“ 瑞士军刀” ,它能通过TCP和UDP在网络中读写数据。通过与其他工具结合和重定向,你可以在脚本中以多种方式使用它。使用netcat命令所能完成的事情令人惊讶。 netcat所做的就是在两台电脑之间建立链接并返回两个数据流, 在这之后所能做的事就看你的想像力了。你能建立一个服务器,传输文件,与朋友聊天,传输流媒体或者用它作为其它协议的独立客户端。 -a 显示所有socket,包括正在监听的。 netstat –apn |grep 进程名 查看所有的进程和端口使用情况。发现下面的进程列表,其中最后一栏是PID/Program name 下面是一些使用netcat的例子. [A(172.31.100.7) B(172.31.100.23)] Linux netcat 命令实例: 1,端口扫描 端口扫描经常被系统管理员和黑客用来发现在一些机器上开放端口,帮助他们识别系统中的漏洞。 $nc -z -v -n 172.31.100.7 21-25 可以运行在TCP或者UDP模式,默认是TCP,-u参数调整为udp. z 参数告诉netcat使用0 IO,指的是一旦连接关闭,不进行数据交换(译者注:这里翻译不准,如有其它更好的,请指出) v 参数指使用冗余选项(译者注:即详细输出) n 参数告诉netcat 不要使用DNS反向查询IP地址的域名

Proxy built with netcat not allowing http basic authentication

◇◆丶佛笑我妖孽 提交于 2020-01-25 06:38:16
问题 I made a simple proxy server using nc , here's the one-liner: mkfifo queueueue nc -l 8080 <queueueue | nc http://$JENKINS_HOSTNAME 80 >queueueue It listens on port 8080 and then forwards the data to a connection to our Jenkins server. Jenkins is behind a VPN, and the machine I am running this proxy on has VPN access. On my other machine (no VPN access), I would like to curl the Jenkins server, here's the command to initiate the request through the proxy: http_proxy=10.1.10.10:8080 curl --user