防火墙设置

Linux 系统上常用的防火墙命令代码。

常用命令

systemctl status firewalld   #查看系统自带防火墙是否运行
iptables -L -n               #查看防火墙规则
systemctl stop firewalld     #停止firewall防火墙
systemctl disable firewalld  #禁止firewall开机启动
systemctl mask firewalld     #禁用firewalld服务
yum install  -y iptables  iptables-services   #安装iptables防火墙
systemctl start iptables         #启动防火墙
systemctl status iptables        #查看防火墙是否启动

firewall-cmd --list-ports  #查看已经开放的端口
firewall-cmd --zone=public --add-port=80/tcp --permanent  #开启端口

#配置文件目录 /etc/sysconfig/iptables
iptables -P INPUT ACCEPT   #先允许所有,不然有可能会杯具
iptables -F      #清空所有的防火墙规则
iptables -X      #清空所有自定义规则
iptables -Z      #所有计数器归0
iptables -A INPUT -p tcp --dport 22 -j ACCEPT   #开放22端口
iptables -A INPUT -p tcp --dport 21 -j ACCEPT   #开放21端口(FTP)
iptables -A INPUT -p tcp --dport 80 -j ACCEPT   #开放80端口(HTTP)
iptables -A INPUT -p tcp --dport 443 -j ACCEPT  #开放443端口(HTTPS)
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT  #允许ping
iptables -A INPUT -i lo -j ACCEPT    #允许来自于lo接口的数据包(本地访问)
iptables -P INPUT DROP  #其他入站一律丢弃
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT   #允许由服务器本身请求的数据通过
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -P OUTPUT ACCEPT  #所有出站一律绿灯
iptables -P FORWARD DROP   #所有转发一律丢弃
iptables -A OUTPUT -j ACCEPT         #允许所有本机向外的访问
service iptables save                #保存上述规则
systemctl restart iptables.service   #重启服务
systemctl enable iptables            #设置开机启动
systemctl start iptables.service    #启动服务
systemctl status iptables.service   #查看服务状态

屏蔽IP段

iptables -I INPUT -s 123.45.6.7 -j DROP       #屏蔽单个IP的命令
iptables -I INPUT -s 123.0.0.0/8 -j DROP      #封整个段即从123.0.0.1到123.255.255.254的命令
iptables -I INPUT -s 124.45.0.0/16 -j DROP    #封IP段即从123.45.0.1到123.45.255.254的命令
iptables -I INPUT -s 123.45.6.0/24 -j DROP    #封IP段即从123.45.6.1到123.45.6.254的命令是

相关链接:Centos 7 firewall 命令