netcat(nc)的替代产品 Socat

 socat是一��netcat(nc)的替代�a品,可以�Q得上nc++。socat的特�c就是在���流之�g建立一���p向的 通道。socat的地址�型很 多,有ip, tcp, udp, ipv6, pipe,exec,system,open,proxy,openssl,等等。看一��例子:

c:\>socat - tcp:192.168.1.18:80

�@��命令等同於 nc 192.168.1.18 80。 socat�e面,必�有���流,所以第一�����-代表��实妮�入�出,第二��流�B接到192.168.1.18的80端口。再看一��反向telnet的例子:

on server:
c:\>socat tcp-listen:23 exec:cmd,pty,stderr

�@��命名把cmd�定到端口23,同�r把cmd的Stderr重定向到stdout。

on client:
c:\>socat readline tcp:server:23

�B接到服�掌鞯�23端口,即可�@得一��cmd shell。readline是gnu的命令行��器,具有�v史功能。

再看文件�鬟f的例子。nc也�常用��鬟f文件,但是nc有一��缺�c,就是不知道文件什�N�r候�魍炅耍�一般要用Ctrl+c�斫K止,或者估�一���r�g,用-w���碜�他自�咏K止。用socat就不用�@�N麻�┝耍�

on host 1:
c:\>socat -u open:myfile.exe,binary tcp-listen:999

on host 2:
c:\>socat -u tcp:host1:999 open:myfile.exe,create,binary

�@��命令把文件myfile.exe用二�M制的方式,��host 1 �鞯�host 2。-u 表示����蜗蛄�樱��牡谝����档降诙�����担�-U表示�牡诙���到第一��。文件�魍炅耍�自�油顺觥�

再�硪��大家喜�g用的例子。在一��NAT�h境,如何�耐獠窟B接到�炔康囊��端口呢?只要能�蛟�炔窟\行socat就可以了。

外部:
c:\>socat tcp-listen:1234 tcp-listen:3389

�炔浚�
c:\>socat tcp:outerhost:1234 tcp:192.168.12.34:3389

�@�樱�你外部�C器上的3389就影射在�炔烤W192.168.12.34的3389端口上。

socat�具有一����特的�x��分流功能,比如:

c:\>socat open:read.txt!!open:write.txt,create,append tcp-listen:80,reuseaddr,fork

�@��命令���F一��假的web server,客�舳诉B�^�碇�後,就把read.txt�e面的�热莅l�^去,同�r把客�舻���保存到write.txt�e面。”!!”符�用�艉�阕x��流,前面的用於�x,後面的用於��。

你可能感兴趣的:(职场,休闲,socat)