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

linux vps端口转发一键脚本

23vps2年前 (2022-06-03)VPS教程756

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

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

阿里云限量代金券 | 此广告位出租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 vps小鸡是否支持观看各种流媒体

一键检测你的linux vps小鸡是否支持观看各种流媒体

脚本地址:https://github.com/lmc999/RegionRestrictionCheck脚本介绍:A bash script to check if your VPS’s IP is available for various OTT platforms,可用于检测VPS能否解锁N...

微软开发的手机远程桌面工具:RD Client

简介Microsoft Remote Desktop是微软官方发布的RDP远程桌面控制工具,方便在手机上控制电脑或服务器。有了这款神器,就可以在手机上控制windows vps服务器了!RD Client安卓客户端下载地址:https://m.pc6.com/mipd/103772.html或者可以...

手动更换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禁用ipv6方法

有些vps会同时存在ipv4和ipv6,如果我们不想用ipv6可以禁用ipv6地址。此方法在debian10和CentOS7下测试可用!用nano或vi命令编辑配置文件nano /etc/sysctl.conf在末尾添加如下两行:net.ipv6.conf.all.disable_ipv6...

linux vps如何查看网关

linux vps如何查看网关

我们在使用dd脚本来给vps网络重装系统之前,为了防止无法通过dhcp自动获取网关,首先记录下网关地址,这样等dd完后至少还能进vnc修改网关地址。linux vps可以查看网关命令:netstat -rn如果提示“-bash: netstat: command not found”,这仅...

锐速/BBRPLUS/BBR2一键脚本:Linux-NetSpeed

锐速/BBRPLUS/BBR2一键脚本:Linux-NetSpeed

项目地址:https://github.com/younasiqw/Linux-NetSpeed-New 原项目地址:https://github.com/ylx2016/Linux-NetSpeed/ 原作者博客:https://blog.ylx.me/archives/783...