当前位置:首页 > VPS教程 > 正文内容

linux vps端口转发一键脚本

23vps3年前 (2022-06-03)VPS教程1387

什么是端口转发?为什么要转发?

准确来讲叫流量转发,因为流量是基于端口的,所以一般称为端口转发。

阿里云限量代金券 | 此广告位出租25元/月


比如电信到伯力很差,我买了个上海联通鸡做转发,那么就是

电信->联通:1200->伯力:4900,那么我访问联通的1200端口,等于访问伯力的4900端口

转发还可以用于公网frp,反代网站等用途


用什么转发?

推荐iptables或者firewalld,都是内核级别的转发,性能损耗极少。

如果用gost/brook等第三方工具转发,流量大或者连接数过多的时候cpu和负载压力变大,对于nat小鸡特别不友好。


但是无论是iptables还是firewalld这种内核命令对没有任何网络基础的新手用户来说太复杂了,下面推荐个vps端口转发一键脚本。


准备工作

centos7,默认使用firewalld,需要切换到iptables,将firewalld停掉。

查看firewalld状态

systemctl status firewalld

如果是活动状态就把它停掉

systemctl stop firewalld

关闭firewalld自启

systemctl disable firewalld

如果你是debian那可能无需这个准备工作,但是你要开启内核级别转发,请按下面操作:

基于iptables转发(适用于centos7,debian8)

#先安装iptables,debian换成 apt-get install

yum install -y iptables
yum install -y iptables-services

#开机启动

systemctl start iptables
systemctl enable iptables

#查看服务状态,显示绿色active就可以了

service iptables status

#避免不必要的麻烦所以要备份iptables规则

cp -a /etc/sysconfig/iptables /etc/sysconfig/iptables.bak

iptables-save > /etc/sysconfig/iptables.bak

恢复命令

iptables-restore < /etc/sysconfig/iptables.bak

#清空所有防火墙规则,避免因端口没开造成影响

iptables -F
iptables -X


到这里就准备工作结束,下面使用下面这个转发脚本

这是知名的转发脚本,支持debian和centos,这个脚本是帮你一键执行iptables命令,还是调用iptables,非第三方转发软件,支持ddns,感谢arloor   https://github.com/arloor/iptablesUtils

wget --no-check-certificate -qO natcfg.sh https://raw.githubusercontent.com/arloor/iptablesUtils/master/natcfg.sh && bash natcfg.sh

FB2F8302-2DCD-4DA5-BF08-775685BD4F70.jpeg

注意:有安装宝塔面板的vps安装iptables后会导致宝塔自带firewalld防火墙关闭,请重启iptables后手动放行网站80,443,8888端口

#删除转发端口后要重启iptables服务才能真正生效

systemctl restart iptables

#查看firewalld防火墙状态并关闭firewalld自启(这样做是为了确保宝塔不会再次把firewalld作为默认防火墙)

systemctl status firewalld

关闭firewalld自启

systemctl disable firewalld

#改用iptables放行网站和宝塔端口

/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
/sbin/iptables -I INPUT -p tcp --dport 443 -j ACCEPT
/sbin/iptables -I INPUT -p tcp --dport 8888 -j ACCEPT

#保存iptables规则

iptables-save > /etc/sysconfig/iptables

#查看已开放端口

iptables -L -n

这里我们会发现通过脚本增加的端口不会出现在这里,脚本作者考虑到了这一点,这样就防止我们管理自己网站端口时看起来凌乱了。

#删除已开放端口

比如我现在有 2 个相同的端口,我想删除一个:

C10F2C8F-F83D-4D57-A285-2269DC06434C.jpeg

可以用这个命令删除第二行的端口

iptables -D INPUT 2

结果:

8EB531F3-559F-4E6B-B7D7-99F20C2A38AB.jpeg

最后再保存一次规则

iptables-save > /etc/sysconfig/iptables


最后主机哥提醒:这个脚本好像有bug,第一次添加端口转发后要删除再重新添加才有效果。

本网站由提供服务

扫描二维码推送至手机访问。

版权声明:本文由主机测评网发布,如需转载请注明出处。

本文链接:https://23vps.com/post/12.html

分享给朋友:

“linux vps端口转发一键脚本” 的相关文章

手动更换linux软件源

Centos换源命令查看Centos系统版本cat /etc/system-release备份Centos系统源mv /etc/yum.repos.d/CentOS-Base.repo  /etc/yum.repos.d/CentOS-Base.repo.ba...

测试linux vps基础信息io和网络:SuperBench

测试linux vps基础信息io和网络:SuperBench

可测试linux vps基础信息io及网络,第一次运行需等待半分钟左右wget -qO- --no-check-certificate https://raw.githubusercontent.com/oooldking/script/master/superbenc...

消耗VPS流量命令

主机哥闲着无聊写了一个流量消耗命令,运行这个命令后可以把VPS流量全部都消耗光!这样不仅仅是无聊,而是一定程度上可以测试出主机商是否能否长期跑带宽,因为有些主机商会在你带宽持续占用一定时间后限制你的速度。此脚本适合所有linux vps系统使用方法:安装screen命令apt-get is...

回程路由测试工具nexttrace

回程路由测试工具nexttrace

这是一款追求轻量的开源可视化路由跟踪工具,使用 Golang 开发,主机哥最近在hostloc里发现的,测试回程路由的路由节点信息比较清晰明了,推荐使用!项目地址:https://github.com/sjlleo/nexttrace 中文Readme:https://github.com...

纯ipv6小机debian/ubuntu/centos及alpine系统的初始安装配置教程

纯ipv6小机debian/ubuntu/centos及alpine系统的初始安装配置教程

主机哥今天购买了一台纯IPV6的小机,自带系统是alpine而且没有其他诸如debian、centos之类的系统,由于之前一直没接触过这个系统,做个教程记录一下百度了一下才知道alpine是只用非常节省资源的Linux发行版,难怪我买的71MB内存2GB硬盘的LXC小机就只能用这个系统了首次开通机器...

linux vps压缩解压文件方法

压缩命令tar -zcvf 压缩文件名.tar.gz 被压缩文件名可先切换到当前目录下这样就不用加入路径便可压缩当前目录里的文件,可同时输入多个被压缩的文件名或目录,压缩文件名和被压缩文件名都可加入路径。例如tar -zcvf test.tar.gz...