firewalld 2

firewalld

1. firewalld的开启

iptables  切换    firewalld

# systemctl stop iptables.service 
# systemctl disable iptables.service  关闭firewalld并且开机关闭
# systemctl mask iptables.service   为确保关闭可以冻结
# systemctl enable --now firewalld.service  开启iptables并且开机启动

2. 关于firewalld的域

trusted            接受所有网络连接

home              用于家庭网络,允许接受ssh,dns,ipp-client,samba-client,dhcp-client

work               工作网络 ssh ipp-client,dhcp-client

public             公共网络 ssh,dhcp-client

dmz                军级网络 ssh

block               拒绝所有

drop                丢弃,任何数据没有回复

internal            内部网络 ssh,mdns,ipp-client,dhcp-client

external           ipv4网络地址伪妆转发

# firewall-cmd --get-zones   获取域名

   

3. 关于firewalld的设定原理及数据

/etc/firewalld       火墙配置目录

/usr/lib/firewalld/  火墙模块目录

添加自定义服务      

# cd /etc/firewalld/zones/ 
# vim public.xml            添加

 

# cd /usr/lib/firewalld/services/
# cp http.xml yueyue.xml
# vim yueyue.xml        添加描述
# firewall-cmd --reload  刷新服务

 

测试

# firewall-cmd --get-services | grep yueyue
# firewall-cmd --list-all

 

4.firewalld的管理命令

firewall-cmd --state            查看火墙状态
firewall-cmd --get-active-zones 查看生效的域
firewall-cmd --get-default-zone 查看默认域
firewall-cmd --list-all         查看默认域中的火墙策略
firewall-cmd --list-all zone=work  查看指定域的火墙策略
firewall-cmd --get-services        查看所有可以设定的服务
firewall-cmd --permanent --remove-service=cockpit    移除服务
firewall-cmd --reload           刷新服务
# firewall-cmd --permanent --add-source=192.168.1.0/24  --zone=block 指定数据来源访问指定域
# firewall-cmd --permanent --remove-source=192.168.1.0/24 --zone=block  移除

 

# firewall-cmd --permanent --change-interface=ens224 --zone=block  更改指定域网络接口
# firewall-cmd --reload

 

5. firewalld的高级规则

# firewall-cmd --direct --add-rule ipv4 filter INPUT 1 -s 172.25.254.0/24 -p tcp --dport=22 -j ACCEPT
# firewall-cmd --direct --get-all-rules 

6. firewalld中的NAT

SNAT

# firewall-cmd --permanent --add-masquerade 
# firewall-cmd --reload  重启服务

测试

# ifconfig
# ssh -l root 192.168.1.33

 

 

DNAT

# firewall-cmd --permanent --add-forward-port=port=22:proto=tcp:toaddr=172.25.254.33
# firewall-cmd --reload

测试

# ssh -l root 192.168.1.32

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章