linux端口转发神器Socat一键配置脚本

发布时间:2020-09-09 作者: 来源: 浏览量(20953)
一、概述目前常用的端口转发工具有rinetd、Haproxy、iptables、Socat前面2种只能转发TCP,后面TCP/UDP都可以转发。如果是需要udp转发的话,只能选择iptables、Socat。iptables方面的转口转发配置这里就不多讲了,网上资料一大堆。下面分享一下Socat使用和配置。二、安装配置Socat可以通过rpm包的方式安装,然后配置,下面分享一个更简单的方法,一键部署安装部署脚本。2.1 系统要求及说明系统要求:支持CentOS 6+ 、Deb...

一、概述

目前常用的端口转发工具有rinetd、Haproxy、iptables、Socat前面2种只能转发TCP,后面TCP/UDP都可以转发。如果是需要udp转发的话,只能选择iptables、Socat。iptables方面的转口转发配置这里就不多讲了,网上资料一大堆。下面分享一下Socat使用和配置。


 二、安装配置

Socat可以通过rpm包的方式安装,然后配置,下面分享一个更简单的方法,一键部署安装部署脚本。


2.1 系统要求及说明


系统要求:支持CentOS 6+ 、Debian 7+、Ubuntu 14+。


脚本说明:脚本默认开启UDP、TCP转发,带开机自启功能,且一次只能转发单个端口,如果想转发多个端口请重复运行本脚本。


2.2 安装配置


1、脚本安装


wget https://raw.githubusercontent.com/iiiiiii1/Socat/master/socat.sh && bash socat.sh


注:以root用户执行上面的命令


2、输入的参数说明:


输入本地端口:指定本机未被占用的端口,用户可自定义。 输入远程端口:远程主机的真实的端口。 远程主机:远程主机的真实的IP地址。 

3、配置保存位置


配置保存在/etc/rc.local文件中。


[root@localhost128 ~]# cat /etc/rc.local


#!/bin/bash


# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES


#


# It is highly advisable to create own systemd services or udev rules


# to run scripts during boot instead of using this file.


#


# In contrast to previous versions due to parallel execution during boot


# this script will NOT be run after all other services.


#


# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure


# that this script will be executed during boot.




touch /var/lock/subsys/local


nohup /usr/local/inception/bin/Inception --defaults-file=/etc/inc.cnf &


nohup socat TCP4-LISTEN:13022,reuseaddr,fork TCP4:192.168.42.130:22 >> /root/socat.log 2>&1 &


nohup socat -T 600 UDP4-LISTEN:13022,reuseaddr,fork UDP4:192.168.42.130:22 >> /root/socat.log 2>&1 &


2.3 软件卸载


yum remove socat


2.4 使用展示


1、环境说明


192.168.42.128:配置socat的机器,监听本地端口:13022 192.168.42.130:跳板远程连接的机器。ssh的监听端口为:22

2、配置


3、通过跳板连接到远程机器


三、小结

1、socat是继rinetd、Haproxy、iptables之后,端口转发和跳板的又一神器,同时支持tcp和udp。通过此一键配置脚本配置,非常简单便捷。


以上文章来源于网络,如有侵权请联系创一网的客服处理。谢谢!

现在注册,立享价值上万元的新人专属礼包

运营交流大会门票&运营宝典

注册有礼