先珍藏一篇好的防火墙先容地址:iptables先容

学习总结

查看防火墙规则

iptables -L


清空防火墙规则

iptables -F


允许来自192.168.10.1/24网段接见tcp 22端口

iptables -I INPUT -s 192.168.10.1/24 -p tcp --dport 22 -j ACCEPT


删除某条计谋

iptables -D INPUT 计谋序号

克制接见端口号12345

# iptables -I INPUT -p tcp --dport 1234 -j REJECT
# iptables -I INPUT -p udp --dport 1234 -j REJECT

允许所有

# iptables -P INPUT ACCEPT

服务firewalld
firewall-cmd 命令行设置工具

firewall-config 图形化设置工具

zone的寄义就是防火墙模板

  1. public 默认使用
  2. drop 拒绝所有
  3. trusted 允许所有


查看当前系统默认的zone,设置默认zone为work

# firewall-cmd --get-default-zone 
public
# firewall-cmd --get-zones
block dmz drop external home internal public trusted work
# firewall-cmd --set-default-zone=work
Warning: ZONE_ALREADY_SET: work


runtime 当前生效,重启后失效

permanent 当前不生效,重启后永远生效

切断网络连接

firewall-cmd --panic-on

恢复网络连接

firewall-cmd --panic-off
# firewall-cmd --zone=public --query-service=ssh
yes
# firewall-cmd --zone=public --query-service=https
no
# firewall-cmd --zone=public --query-service=http
no
# firewall-cmd --zone=public --add-service=http
success
# firewall-cmd --zone=public --query-service=http
yes

开启public这个zone的https服务,而且重启后永远生效。
通过reload立刻生效。

# firewall-cmd --permanent --zone=public --add-service=https
success  
# firewall-cmd --reload 
success

拒绝某个服务

# firewall-cmd --zone=public --query-service=http
no
# firewall-cmd --zone=public --add-service=http
success
# firewall-cmd --zone=public --query-service=http
yes
# firewall-cmd --zone=public --remove-service=http
success
# firewall-cmd --zone=public --query-service=http
no


基于端口号的开启和拒绝

# firewall-cmd --zone=public --query-port=80/tcp
no
# firewall-cmd --zone=public --add-port=80/tcp
success
# firewall-cmd --zone=public --query-port=80/tcp
yes
# firewall-cmd --zone=public --remove-port=80/tcp
success
# firewall-cmd --zone=public --query-port=80/tcp
no


端口转发

# firewall-cmd --permanent --zone=public --add-forward-port=port=888:proto=tcp:toport=22:toaddr=192.168.10.10
success
# firewall-cmd --reload 
success

富规则
只拒绝192.168.10.0/244的ssh服务

# firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="192.168.10.1/24" service name="ssh" reject"
success