firewalld
区域:
drop(丢弃)
任何接收的网络数据包都被丢弃,没有任何回复,仅能有发送出去的网络连接
block(限制)
任何接收的网络连接都被拒绝
public(公共)
在公共区域里使用,不能呢个相信网络内的其他计算机不会对你的计算机造成危害,只能接收经过选取的连接
external(外部)
特别是为路由器启用了伪装功能的外部网。您不能信任来自网络的其他计算,不能相信它们不会对您的计算机造成危害,只能接收经过选择的连接。
dmz(非军事区)
用于您的非军事区内的电脑,此区域内可公开访问,可以有限地进入您的内部网络,仅仅接收经过选择的连接。
work(工作)
用于工作区。您可以基本相信网络内的其他电脑不会危害您的电脑。仅仅接收经过选择的连接。
home(家庭)
用于家庭网络。您可以基本信任网络内的其他计算机不会危害您的计算机。仅仅接收经过选择的连接。
internal(内部)
用于内部网络。您可以基本上信任网络内的其他计算机不会威胁您的计算机。仅仅接受经过选择的连接。
可接受所有的网络连接
一、服务的开启及firewalld域的了解
274 systemctl stop iptables 关闭iptables
275 systemctl disable iptables 开机自动关闭iptables
276 systemctl start firewalld 打开防火墙277 systemctl enable firewalld 开机自启防火墙
280 firewall-cmd --get-active-zone 查看当前活跃的域
282 firewall-cmd --get-zones 查看firewalld所有的域
283 firewall-cmd --zone=public --list-all 查看域为public的
284 firewall-cmd --list-all
285 firewall-cmd --zone=block --list-all 查看域为block的
286 firewall-cmd --list-all-zones 列出所有区域的设置:
287 yum install httpd -y
288 systemctl start httpd
289 echo westos > /var/www/html/index.html
290 firewall-cmd --set-default-zone=trusted 将其设置为信任域
291 firewall-cmd --get-default-zone
292 firewall-cmd --get-service
二、添加两块网卡(网络接口访问域的设置)
[root@client ~]# firewall-cmd --add-source=172.25.254.13 --zone=trusted 火墙将172.25.254.13访问通过信任域(此时172.25.254.13可以访问其他不行)success
[root@client ~]# firewall-cmd --add-source=172.25.254.13/24 --zone=trusted (172.25.254网端的可以访问)
success
[root@client ~]# firewall-cmd --list-interfaces 列出网络接口
eth0 eth1
[root@client ~]# firewall-cmd --get-zone-of-interface=eth1 查看网络接口eth1的访问域
public
[root@client ~]# firewall-cmd --get-zone-of-interface=eth0 查看网络接口eth0的访问域
public
[root@client ~]# firewall-cmd --change-interface=eth0 --zone=trusted 更改网络接口eth0的访问域为trusted
success
[root@client ~]# firewall-cmd --get-zone-of-interface=eth0 查看网络接口eth0的访问域
trusted
[root@client ~]# firewall-cmd --remove-interface=eth0 --zone=trusted 将网络接口eth0从trusted移除
success
[root@client ~]# firewall-cmd --get-zone-of-interface=eth0
no zone
[root@client ~]# firewall-cmd --add-interface=eth0 --zone=public 将eth0添加到public域中
success
[root@client ~]# firewall-cmd --get-zone-of-interface=eth0 查看网络接口eth0的访问域
public
[root@client ~]# firewall-cmd --add-source=172.25.254.13 --zone=trusted
火墙将172.25.254.13访问通过信任域(此时172.25.254.13可以访问其他不行)
success
[root@client ~]# firewall-cmd --add-source=172.25.254.13/24 --zone=trusted
(172.25.254网端的可以访问)
success
[root@client ~]# firewall-cmd --list-interfaces 列出网络接口
eth0 eth1
[root@client ~]# firewall-cmd --get-zone-of-interface=eth1
查看网络接口eth1的访问域
public
[root@client ~]# firewall-cmd --get-zone-of-interface=eth0
查看网络接口eth0的访问域
public
[root@client ~]# firewall-cmd --change-interface=eth0 --zone=trusted
更改网络接口eth0的访问域为trusted
success
[root@client ~]# firewall-cmd --get-zone-of-interface=eth0
查看网络接口eth0的访问域
trusted
[root@client ~]# firewall-cmd --remove-interface=eth0 --zone=trusted
将网络接口eth0从trusted移除
success
[root@client ~]# firewall-cmd --get-zone-of-interface=eth0
no zone
[root@client ~]# firewall-cmd --add-interface=eth0 --zone=public
将eth0添加到public域中
success
[root@client ~]# firewall-cmd --get-zone-of-interface=eth0
查看网络接口eth0的访问域
public
三、临时和永久更改火墙的部分信息
5 firewall-cmd --add-source=172.25.254.250 (临时)6 firewall-cmd --list-all
public (default, active)
interfaces: eth0 eth1
sources: 172.25.254.250
services: dhcpv6-client ssh
ports:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
7 systemctl restart firewalld
8 firewall-cmd --list-all
public (default, active)
interfaces: eth0 eth1
sources:
services: dhcpv6-client ssh
ports:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
[root@client ~] irewall-cmd --add-source=172.25.254.250 (临时)
[root@client ~] firewall-cmd --list-all
public (default, active)
interfaces: eth0 eth1
sources: 172.25.254.250
services: dhcpv6-client ssh
ports:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
[root@client ~] systemctl restart firewalld 重启
[root@client ~] firewall-cmd --list-all
public (default, active)
interfaces: eth0 eth1
sources:
services: dhcpv6-client ssh
ports:
masquerade: no
forward-ports:
icmp-blocks:
rich rules
9 firewall-cmd --permanent --add-source=172.25.254.250(永久)
11 firewall-cmd --reload
12 cd /etc/firewalld/
13 ls
14 cd zones/
15 ls
16 vim public.xml(添加成功) 域内容的设置
17 systemctl restart firewalld
18 firewall-cmd --list-all
19 firewall-cmd --add-port=8080/tcp --zone=public(临时,重启服务后失效)
20 firewall-cmd --list-all
21 firewall-cmd --reload
22 firewall-cmd --list-all
23 firewall-cmd --permanent --remove-service=ssh (永久)
24 firewall-cmd --reload
25 firewall-cmd --list-all
26 firewall-cmd --permanent --add-service=ssh (永久)
27 firewall-cmd --reload (以前连接着的还可以使用)
firewall-cmd --comlete-reload (会直接中断)
28 firewall-cmd --list-all
30 cd /usr/lib/firewalld
31 ls
32 cd services/
33 ls
34 vim http.xml 某个服务的属性小设置
一、direct rules
[root@client ~]# systemctl start httpd 开启http服务
[root@client ~]# firewall-cmd --permanent --remove-service=http
success
[root@client ~]# firewall-cmd --reload
success
[root@client ~]# firewall-cmd --direct --add-rule ipv4 filter INPUT 1 -p
(协议类型) tcp --dport 80(http服务) -s(源地址) 172.25.254.55 -j(动作) ACCEPT
(允许172.25.254.13访问)添加规则
success
[root@client ~]# firewall-cmd --direct --get-all-rules 列出规则
ipv4 filter INPUT 1 -p tcp --dport 80 -s 172.25.254.55 -j ACCEPT
[root@client ~]# firewall-cmd --direct --remove-rule ipv4 filter INPUT 1 -p
(协议类型) tcp --dport 80(http服务) -s(源地址) 172.25.254.55 -j(动作) ACCEPT
(删除规则)
success
二、端口转发:
firewall-cmd --permanent --add-forward-port=port=22:proto=tcp:toport=22:toaddr
=172.25.254.213
将此电脑的22端口(ssh)服务,当别人连接时会自动转到172.25.254.213的22端口服务
firewall-cmd --permanent --add-masquerade 打开masquerade
firewall-cmd --reload
firewall-cmd --list-all
public (default, active)
interfaces: eth0 eth1
sources:
services: dhcpv6-client ssh
ports:
masquerade: yes
forward-ports: port=22:proto=tcp:toport=22:toaddr=172.25.254.213
icmp-blocks:
rich rules:
三、端口伪装:
我们设置其中一台虚拟机ip为172.25.254.213,为其另一台虚拟机他网段(172.25.0.113)
我们让172.25.0.113的虚拟机可以通过172.25.254.213来访问这个网端的机子,
查询记录时查询到是172.25.254.213访问的。
设置172.25.254.213为路由器给此虚拟机配置两个网卡设置一个ip为172.25.254.213,
另一个ip为172.25.0.213
对于172.25.254.213的虚拟机设置:
firewall-cmd --permanent --add-masquerade 打开masquerade
vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
对于172.25.0.113虚拟机设置;
vim /etc/sysconfig/network-scripts/ifcfg-eth0
GATEWAY=172.25.0.213
此时172.25.0.113就可以ping通172.25.254网段的ssh时连接到别人时此时查看记录只会显示为
172.25.254.213连接过