在linux系统中安装yum install iptables-services。
然后 vi /etc/sysconfig/iptables。
# Generated by iptables-save v1.4.7 on Sun Aug 28 12:14:02 2016。
*filter
:INPUT ACCEPT [0:0]。
:FORWARD ACCEPT [0:0]。
:OUTPUT ACCEPT [0:0]。
#这里开始增加白名单服务器ip(请删除当前服务器的ip地址)。
-N whitelist
-A whitelist -s 8.8.8.8 -j ACCEPT。
-A whitelist -s x.x.x.x -j ACCEPT。
#这些 ACCEPT 端口号,公网内网都可访问。
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT #允许接受本机请求之后的返回数据 RELATED,是为FTP设置的。
-A INPUT -p icmp -j ACCEPT。
-A INPUT -i lo -j ACCEPT。
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT。
-A INPUT -m state --state NEW -m tcp -p tcp --dport 13020 -j ACCEPT。
-A INPUT -m state --state NEW -m tcp -p tcp --dport 1000:8000 -j ACCEPT #开放1000到8000之间的所有端口。
#下面是 whitelist 端口号,仅限 服务器之间 通过内网 访问。
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j whitelist。
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j whitelist。
-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j whitelist。
-A INPUT -m state --state NEW -m tcp -p tcp --dport 25 -j whitelist。
#为白名单ip开放的端口,结束。
-A INPUT -j REJECT --reject-with icmp-host-prohibited。
-A FORWARD -j REJECT --reject-with icmp-host-prohibited COMMIT。
登录后复制

解释:
添加防火墙过滤规则步骤如下;
1、查看现有防火墙过滤规则:
iptables -nvL --line-number。
登录后复制
2、添加防火墙过滤规则(设置白名单):
1)添加白名单
登录后复制
iptables -I INPUT 3 -s 136.6.231.163 -p tcp --dport 1521 -j ACCEPT。
登录后复制
命令详解:
-I:添加规则的参数
INPUT:表示外部主机访问内部资源。
登录后复制
规则链:
1)INPUT——进来的数据包应用此规则链中的策略。
2)OUTPUT——外出的数据包应用此规则链中的策略。
3)FORWARD——转发数据包时应用此规则链中的策略。
4)PREROUTING——对数据包作路由选择前应用此链中的规则 (记住!所有的数据包进来的时侯都先由这个链处理)
5)POSTROUTING——对数据包作路由选择后应用此链中的规则(所有的数据包出来的时侯都先由这个链处理)
3:表示添加到第三行(可以任意修改)
-s:指定作为源地址匹配,这里不能指定主机名称,必须是IP;
-p: 用于匹配协议的(这里的协议通常有3种,TCP/UDP/ICMP)
--dport: 用于匹配端口号。
-j: 用于匹配处理方式:
常用的ACTION:
登录后复制
DROP:悄悄丢弃,一般我们多用DROP来隐藏我们的身份,以及隐藏我们的链表。
REJECT:明示拒绝
ACCEPT:接受
2)查看添加结果
iptables -nvL --line-number。
登录后复制
然后重启防火墙即可生效
重启防火墙的命令:service iptables restart。
此时,防火墙规则只是保存在内存中,重启后就会失效。
使用以下命令将防火墙配置保存起来;
保存到配置中:service iptables save (该命令会将防火墙规则保存在/etc/sysconfig/iptables文件中。)
1、修改/etc/config/firewall文件,把WAN区域的input规则改为ACCEPT,原始配置为REJECT,WAN口网络无法访问openwrt。修改后执行:/etc/init.d/networkrestart重启网络。就可以访问openwrt虚拟机的web界面了。
2、通过web界面系统-管理权,修改Dropbear实例的接口为WAN口,改为未指定,就能连接openwrt虚拟机的SSH了。可通过修改文件/etc/config/dropbear实现,把optionInterfacelan改为optionInterfacewan即可进去界面。OpenWRT是一款第三方路由器固件,其特别在于开放性,它的文件系统可写,用户可在路由器上安装需要的第三方软件。
程序不兼容。PassWall是Lineol基于ShadowsocksR-Plus修改的OpenWrt访问国外网站插件。PassWall显示分流异常是由于程序不兼容,可以更换个版本试试。分流,就是除了该应用专用的下载器下载以外,还可以用别的下载方式下载。
passwall获取远程版本信息失败。
1、先从 Github 下载 V2ray-core 4.4 版本的组件,然后上传到软路由 /usr/bin/v2ray/ 目录内,下载前请确认路由器的架构,V2ray-core 组件下载地址:
# 需要提前进行网络代理,不然打不开。
https://github.com/v2fly/v2ray-core/releases。
2、然后打开终端工具(如果 OpenWrt 后台没有 TTYD 终端,可以尝试使用 Putty)连接软路由,如:你是内存运行就上传到 /usr/bin/v2ray/ ,并按顺序执行以下命令:
# 进入 /usr/bin/v2ray/ 目录。
cd /usr/bin/v2ray/。
# 注意 linux-arm64-v8a 为CPU架构。
unzip v2ray-linux-arm64-v8a.zip。
3、命令执行完成后,进入 OpenWrt 管理界面打开 PassWall 组件,点击组件更新,V2ray 版本就恢复到之前的 4.44 版本,这样就可以正常使用 V2ray 节点了,如下图:

最后总结
目前支持 arm64,X86,mips 等架构的路由器,下载一定要选择对 V2ray-core 组件包,不然无法成功更新。
最后在这里提醒各位,在 V2ray-core 没有发布 V2ray-core 5.0 正式版之前,请不要更新 PassWall 插件的 V2ray 组件,以免重蹈覆辙,折腾的是自己。