Centos6防火墙配置 #重启iptables服务 service iptables restart #查看iptables规则 iptables -L -n #查看iptables规则文件 cat /etc/sysconfig/iptables #开启22端口 iptables -A INPUT -p tcp --dport 22 -j ACCEPT #如果OUTPUT设置成DROP需要添加 iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT #关闭22端口 iptables -D INPUT -p tcp --dport 22 -j ACCEPT #开启常用端口 iptables -A INPUT -p tcp --dport 80 -j ACCEPT iptables -A INPUT -p tcp --dport 3306 -j ACCEPT #iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT #iptables -A OUTPUT -p tcp --sport 3306 -j ACCEPT #iptables -A INPUT -p tcp --dport 20 -j ACCEPT #iptables -A INPUT -p tcp --dport 21 -j ACCEPT #iptables -A INPUT -p tcp --dport 10000 -j ACCEPT #iptables -A INPUT -p tcp --dport 25 -j ACCEPT #iptables -A INPUT -p tcp --dport 110 -j ACCEPT #iptables -A INPUT -p udp --dport 53 -j ACCEPT #允许ping iptables -A INPUT -p icmp -j ACCEPT #如果OUTPUT设置成DROP需要添加 iptables -A OUTPUT -p icmp -j ACCEPT #允许loopback iptables -A INPUT -i lo -p all -j ACCEPT #如果OUTPUT设置成DROP需要添加 iptables -A OUTPUT -o lo -p all -j ACCEPT #屏蔽指定ip #iptables -A INPUT -p tcp -s 192.168.10.1 -j DROP #减少不安全的端口连接 #iptables -A OUTPUT -p tcp --sport 31337 -j DROP #iptables -A OUTPUT -p tcp --dport 31337 -j DROP #允许某个IP远程连接 #iptables -A INPUT -s 192.168.101.1 -p tcp --dport 22 -j ACCEPT #允许某个网段的IP远程连接 iptables -A INPUT -s 192.168.101.0/24 -p tcp --dport 22 -j ACCEPT #允许指定网段通过、指定网口通过SSH连接本机 #iptables -A INPUT -i eth0 -p tcp -s 192.168.101.0/24 --dport 22 -m state --state NEW,ESTABLESHED -j ACCEPT #iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT #iptables -A INPUT -i eth0 -p tcp -s 192.168.101.0/24 --dport 22 -m state --state ESTABLESHED -j ACCEPT #iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state --state NEW,ESTABLISHED -j ACCEPT #开启转发功能 #iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT #iptables -A FORWARD -i eth1 -o eh0 -j ACCEPT #处理IP碎片数量,防止攻击,允许每秒100个 #iptables -A FORWARD -f -m limit --limit 100/s --limit-burst 100 -j ACCEPT #设置ICMP包过滤,允许每秒1个包,限制触发条件是10个包 #iptables -A FORWARD -p icmp -m limit --limit 1/s --limit-burst 10 -j ACCEPT #丢弃非法连接 iptables -A INPUT -m state --state INVALID -j DROP iptables -A OUTPUT -m state --state INVALID -j DROP iptables -A FORWARD -m state --state INVALID -j DROP #允许所有已经建立的和相关的连接 iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT #防止外网用内网IP欺骗 #iptables -t nat -A PREROUTING -i eth0 -s 10.10.0.0/8 -j DROP #iptables -t nat -A PREROUTING -i eth0 -s 172.16.10.0/12 -j DROP #iptables -t nat -A PREROUTING -i eth0 -s 192.168.10.0/16 -j DROP #禁止与某个IP的所有连接 #iptables -t nat -A PREROUTING -d 192.168.101.1 -j DROP #禁用80端口 #iptables -t nat -A PREROUTING -p tcp --dport 80 -j DROP #禁用某个IP的80端口 #iptables -t nat -A PREROUTING -p tcp --dport 21 -d 192.168.101.1 -j DROP 添加*nat规则,连接服务器的1668端口,转发到22端口上
Centos7防火墙配置CentOS7使用的是Linux Kernel 3.10.0的内核版本,新版的Kernel内核已经有了防火墙netfilter,并且firewalld的使用效能更高,稳定性更好。CentOS7配置防火墙的两种方法: 一、使用xml配置文件的方式配置; 方法一 cp /usr/lib/firewalld/services/http.xml /etc/firewalld/services/ firewall-cmd reload 二、使用命令的方式配置; 方法二 ##Add firewall-cmd --permanent --zone=public --add-port=7001/tcp ##Remove firewall-cmd --permanent --zone=public --remove-port=7001/tcp ##Reload firewall-cmd reload 其中,方法二的配置方式是间接修改/etc/firewalld/zones/public.xml文件,方案一也需要在public.xml里面新增,否则http的防火墙规则不会生效,而且两种配置方式都需要重新载入防火墙。 附:查看防火墙状态 systemctl status firewalld.service 启动防火墙 systemctl start firewalld.service 关闭防火墙 systemctl stop firewalld.service 重新启动防火墙 |
|