- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
socat使用手册
socat使用手册
目 录
目 录 2
1 引言 3
1.1 目的 3
1.2 对象 3
2 修订历史 3
3 参考资料 3
4 术语与缩写 3
4.1 术语 3
4.2 缩写 4
5 socat简介 4
6 socat的安装 4
6.1 下载软件包 4
6.2 编译安装 5
7 socat的使用 5
7.1 工作机理 5
7.1.1 初始化 5
7.1.2 打开连接 6
7.1.3 数据转发 6
7.1.4 关闭 6
7.2 地址类型 6
7.2.1 TCP 6
7.2.2 UDP 6
7.2.3 OPENSSL 6
7.2.4 TUN 7
7.3 典型使用 7
7.3.1 连接目标 7
7.3.2 反向连接 7
7.3.3 向远处端口发数据 7
7.3.4 本地开启端口 7
7.3.5 执行bash的完美用法 8
7.3.6 文件传递 8
7.3.7 转发 8
7.3.8 重定向 9
7.3.9 读写分流 10
7.3.10 通过openssl来加密传输过程 10
引言
目的
本手册的编写目的是对在Linux系统使用socat的相关步骤进行总结。
对象
本文档主要供下列人员使用:
实施人员――部署socat
修订历史
日期 版本 说明 作者 2012-10-25 1.0.0 初步整理 Marsleo 参考资料
术语与缩写
术语
序号 术语名称 术语定义 缩写
序号 缩写 缩写意义 socat简介
socat是一个多功能的网络工具,名字来由是” Socket CAT”,可以看作是netcat的N倍加强版,socat的官方网站:/socat/ 。
Socat是一个两个独立数据通道之间的双向数据传输的继电器。这些数据通道包含文件、管道、设备(终端或调制解调器等)、插座(Unix,IP4,IP6 - raw,UDP,TCP)、SSL、SOCKS4客户端或代理CONNECT。
Socat支持广播和多播、抽象Unix sockets、Linux tun/tap、GNU readline 和 PTY。它提供了分叉、记录和进程间通信的不同模式。多个选项可用于调整socat和其渠道,Socat可以作为TCP中继(一次性或守护进程),作为一个守护进程基于socksifier,作为一个shell Unix套接字接口,作为IP6的继电器,或面向TCP的程序重定向到一个串行线。
socat的主要特点就是在两个数据流之间建立通道;且支持众多协议和链接方式:ip, tcp, udp, ipv6, pipe,exec,system,open,proxy,openssl,socket等。
socat的安装
下载软件包
下载socat源代码包:/socat/download/ 。
编译安装
把下载的软件包解压后按照传统的方式编译安装:
./configure
make
make install
具体的细节可以参考安装文档 README 。
在编译的过程中可能遇到如下错误:
解决方法有两种:
第一种是禁用fips,使用如下命令配置:
./configure --disable-fips
第二种是安装fips,首先到网站/source/ 下载openssl-fips安装包,然后解压安装:
./config
make
make install
socat的使用
socat的具体文档参见网站:/socat/doc/socat.html 。
工作机理
socat的运行有4个阶段:
初始化
解析命令行以及初始化日志系统。
打开连接
先打开第一个连接,再打开第二个连接。这个单步执行的。 如果第一个连接失败,则会直接退出。
数据转发
谁有数据就转发到另外一个连接上, read/write互换。
关闭
其中一个连接掉开,执行处理另外一个连接。
地址类型
参数由2部分组成,第一个连接和第二个连接,最简单的用法就是 socat - - 其效果就是输入什么,回显什么其用法主要在于地址如何描述, 下面介绍几个常用的。
TCP
TCP:host:port 目标机器host对应端口portTCP-LISTEN:port 本机监听端口。
UDP
UDP:host:port 目标机器host对应端口portUDP-LISTEN:port 本机监听端口。
OPENSSL
需要一个证书,否则会失败提示: 2012/04/06 11:29:11 socat[1614] E SSL_connect(): errorSSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failureOPENSSL:host:port 目标机器host对应端口portOPENSSL-LISTEN:port 本机监
文档评论(0)