之前从记不得名字的大佬博客看到的方法,本人很惭愧,只是做了点微小的补充 检查是否安装了 iptables
- service iptables status
安装 iptables
- yum install -y iptables
升级 iptables
- yum update iptables
安装 iptables-services
- yum install -y iptables-services
查看默认防火墙状态
- firewall-cmd –state
停止 firewall
- systemctl stop firewalld.service
禁止 firewall 开机启动
- systemctl disable firewalld.service
禁用 firewalld 服务
- systemctl mask firewalld
查看 iptables 现有规则
- iptables -L -n
先允许所有
- iptables -P INPUT ACCEPT
清空所有默认规则
- iptables -F
清空所有自定义规则
- iptables -X
所有计数器归 0
- iptables -Z
禁止来自 IPv4 的所有 HTTP/S 访问请求
- iptables -I INPUT -p tcp –dport 80 -j DROP
- iptables -I INPUT -p tcp –dport 443 -j DROP
对 Cloudflare CDN IPv4 地址开放 HTTP/S 入站访问
- for i in
curl https://www.cloudflare.com/ips-v4
; do iptables -I INPUT -s $i -p tcp –dport 80 -j ACCEPT; done - for i in
curl https://www.cloudflare.com/ips-v4
; do iptables -I INPUT -s $i -p tcp –dport 443 -j ACCEPT; done
禁止来自 IPv6 的所有 HTTP/S 访问请求
- ip6tables -I INPUT -p tcp –dport 80 -j DROP
- ip6tables -I INPUT -p tcp –dport 443 -j DROP
对 Cloudflare CDN IPv6 地址开放 HTTP/S 入站访问
- for i in
curl https://www.cloudflare.com/ips-v6
; do ip6tables -I INPUT -s $i -p tcp –dport 80 -j ACCEPT; done - for i in
curl https://www.cloudflare.com/ips-v6
; do ip6tables -I INPUT -s $i -p tcp –dport 443 -j ACCEPT; done
保存 iptables 配置
- iptables-save
- ip6tables-save
保存规则(路径:/etc/sysconfig/iptables 和 ip6tables)
- service iptables save
- service ip6tables save
开启 iptables 服务
- systemctl enable iptables.service
- systemctl enable ip6tables.service
自动载入规则
- chkconfig iptables on
- chkconfig ip6tables on
开启服务
- systemctl start iptables.service
- systemctl start ip6tables.service
查看状态
- systemctl status iptables.service
- systemctl status ip6tables.service
重启 iptables
- systemctl restart iptables.service
- systemctl restart ip6tables.service
最终效果

© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
喜欢就支持以下吧
请登录后发表评论
注册
社交帐号登录