CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙
1、修改默认firewall→iptables
关闭并禁用firewalld
# 关闭并禁用firewalld
systemctl stop firewalld.service
systemctl disable firewalld.service
安装并启用iptables
yum install iptables-services -y
depmod -a
modprobe ip_tables
modprobe iptable_filter
systemctl enable iptables
systemctl start iptables
2、修改防火墙规则
文件修改方式编辑规则
# 打开防火墙文件
vi /etc/sysconfig/iptables
# 比如说添加3306、10080端口放行(在配置文件中增加)
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 10080 -j ACCEPT
# 注意开放端口的配置位置在icmp-host-prohibited 这一行上面
:wq! #保存退出
# 重启
systemctl restart iptables.service
命令方式编辑规则
# 查看iptables现有规则
iptables -L -n
# 先允许所有,不然有可能会杯具
iptables -P INPUT ACCEPT
# 清空所有默认规则
iptables -F
# 清空所有自定义规则
iptables -X
# 所有计数器归0
iptables -Z
# 允许来自于lo接口的数据包(本地访问)
iptables -A INPUT -i lo -j ACCEPT
# 开放22端口
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
# 开放21端口(FTP)
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
# 开放80端口(HTTP)
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
# 开放443端口(HTTPS)
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
# 允许ping
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT
# 允许接受本机请求之后的返回数据 RELATED,是为FTP设置的
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# 其他入站一律丢弃
iptables -P INPUT DROP
# 所有出站一律绿灯
iptables -P OUTPUT ACCEPT
# 所有转发一律丢弃
iptables -P FORWARD DROP
评论区