当前位置:首页 > 电脑技术

在Debian 12上使用socat进行端口转发

一往无前3个月前 (01-17)电脑技术591

在Debian 12上使用socat进行端口转发

socat是一个强大的网络工具,可以建立两个双向数据流通道,常用于端口转发、协议转换等场景。下面是在Debian 12上配置socat进行端口转发的详细指南。

1. 安装socat

sudo apt update
sudo apt install socat -y

2. 基本端口转发示例

2.1 本地端口转发(TCP)

将本地8080端口的流量转发到本地80端口:

socat TCP-LISTEN:8080,fork TCP:127.0.0.1:80

2.2 转发到远程服务器

将本地8080端口的流量转发到远程服务器192.168.1.100的80端口:

socat TCP-LISTEN:8080,fork TCP:192.168.1.100:80

2.3 远程端口映射到本地

将远程服务器的3306端口映射到本地3307端口:

socat TCP-LISTEN:3307,fork TCP:remote-server-ip:3306

3. 常用参数说明

  • fork:使socat保持运行并处理多个连接
  • reuseaddr:允许重用本地地址
  • bind=IP:指定绑定的IP地址
  • tcp4/tcp6:指定使用IPv4或IPv6
  • -d -d:增加详细输出级别(调试用)

4. 后台运行socat

4.1 简单后台运行

nohup socat TCP-LISTEN:8080,fork,reuseaddr TCP:192.168.1.100:80 >/dev/null 2>&1 &

4.2 创建systemd服务

创建服务文件 /etc/systemd/system/socat-forward.service

[Unit]
Description=Socat Port Forwarding
After=network.target

[Service]
Type=simple
ExecStart=/usr/bin/socat TCP-LISTEN:8080,fork,reuseaddr TCP:192.168.1.100:80
Restart=always

[Install]
WantedBy=multi-user.target

启用并启动服务:

sudo systemctl daemon-reload
sudo systemctl enable socat-forward
sudo systemctl start socat-forward

5. 其他有用示例

5.1 UDP端口转发

socat UDP-LISTEN:53,fork UDP:8.8.8.8:53

5.2 SSL/TLS端口转发

socat TCP-LISTEN:443,fork,reuseaddr OPENSSL:example.com:443,verify=0

5.3 转发到多个目标(负载均衡)

socat TCP-LISTEN:8080,fork TCP:server1:80,sndbuflen=4096 || TCP:server2:80,sndbuflen=4096

6. 安全注意事项

  1. 仅转发必要的端口
  2. 使用防火墙限制访问源IP:
    sudo ufw allow from 192.168.1.0/24 to any port 8080
  3. 避免以root用户运行socat(可以使用非特权端口>1024)
  4. 定期检查socat进程和日志

7. 验证端口转发

# 检查监听端口
sudo netstat -tuln | grep 8080

# 测试连接
telnet localhost 8080
# 或
nc -zv localhost 8080

以上就是在Debian 12上使用socat进行端口转发的基本方法。根据具体需求,您可以调整参数和配置来满足不同的网络转发场景。

相关文章

在 Debian 12 上挂载其它服务器的 SMB 服务

在 Debian 12 上挂载其它服务器的 SMB 服务

在 Debian 12 上挂载其它服务器的 SMB 服务要在 Debian 12 上挂载其他服务器的 SMB/CIFS 共享,需要执行以下步骤: 1. 安装必要的软件包sudo apt update…

Debian 12 挂载SMB共享教程

Debian 12 挂载SMB共享教程

Debian 12 挂载SMB共享:简单易懂的保姆级教程如何在Debian 12系统上挂载SMB(Windows共享)网络驱动器。 📋 什么是SMB共享?简单来说,SMB(Server Messag…

三心两意讲故事法:让你的故事自带吸引力

三心两意讲故事法:让你的故事自带吸引力

在演讲和表达中,如何让故事深入人心?柳婉琴老师的 “三心两意讲故事法” 提供了一个高效模板,帮助你用清晰的逻辑和情感打动听众。 一、三心两意讲故事法的核心框架 初心明确你为什么做这件事,故事的起点和动…

逃离宏大叙事陷阱,回归真实信任构建

逃离宏大叙事陷阱,回归真实信任构建

在内容创作领域,普通人往往容易陷入宏大叙事的陷阱,试图通过分析行业趋势、预测宏观经济或讲述人生大道理来吸引观众。然而,这种做法常常适得其反,观众会觉得内容不真诚甚至傲慢。 传播学的基本规律告诉我们,信…

叙事破局:如何用电影解说的「技术流」讲好日常故事?

叙事破局:如何用电影解说的「技术流」讲好日常故事?

你是否遇到过这种情况:明明经历了一件有趣的事,讲给朋友听却像白开水一样平淡?而别人讲同样普通的小事,却能让全场哈哈大笑、听得入迷。差距不在故事本身,而在于叙事能力。 一、电影解说:叙事技术的「最佳训练…

赞美夺权

赞美夺权

视频核心观点围绕“阶差性僵化”展开,提出通过“赞美夺权”实现心理翻盘。结合心理学原理与实用技巧,其方法论具有较强说服力,具体可分为三点: 一、现象洞察:社交中的「能量差陷阱」 视频指出,当面对外貌、财…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。