linux中的firewalld服务

firewalld是linux系统中的默认防火墙,也被称为动态防火墙,firewalld自身并不具备防火墙的功能,而是和iptables一样需要通过内核的netfilter来实现,也就是说firewalld和 iptables一样,他们的作用都是用于维护规则,而真正使用规则干活的是内核的netfilter,只不过firewalld和iptables的结构以及使用方法不一样。

firewalld通过将网络划分成不同的区域,制定出不同区域之间的访问控制策略来控制不同程序区域间的传送和访问功能,以下是firewalld划分的区域:

firewalld的配置方法主要有三种:firewall-config、firewall-cmd和直接编辑xml文件,其中 firewall-config是图形化工具,firewall-cmd是命令行工具。

下面简单介绍一下firewalld-cmd命令的使用以及伪装和转发功能的实现:

基本的firewall-cmd命令:

1.firewall-cmd --state 可查看当前firewalld服务的状态:


2.firewall-cmd --get-zones 可查看firewalld划分的域:

3.firewall-cmd --get-default-zone 为查看当前权限状态

   firewall-cmd --set-default-zone=trusted  为修改当前权限状态


4.firewall-cmd --list-all 查看当前firewalld允许的服务:

5.firewall-cmd --add-service=ftp 为临时添加ftp服务


重启服务后,之前允许的ftp服务策略失效:

想要永久生效,要在命令行中加上 --permanent ,然后输入firewall-cmd --reload重新加载即可

7.firewall-cmd --permanted --add-port=8080/tcp  添加tcp协议端口8080

然后将8080端口加入到http服务的配置文件当中:


systemctl restart httpd 然后重启http服务,即可通过8080端口访问http服务:


在firewalld服务中实现ip地址伪装和网络地址转换和iptables中是一样的,只是所用到的命令和操作不同:

1.首先,将一台主机配置两块网卡并配置ip为下图所示:

然后将一个主机ip设置为172.25.21.121,配置网关为172.25.21.221 用来测试策略效果:

第三台主机ip设置为172.25.254.88,用来测试策略效果

2.将双网卡主机的内核路由功能打开:

编辑文件: vim /etc/sysctl.conf  将内核路由功能打开,1为打开,0为关闭

 

然后sysctl -p 刷新生效

先将masquerade的状态改为yes,才可使用伪装和地址转换功能:

3.编写策略,如图所示:

第一条策略为当ip172.25.21.121通过ssh服务远程登陆ip172.25.254.88主机时,伪装ip为ip172.25.254.221;

第二条策略意为当ip为172.25.254.88的主机通过ssh服务远程登陆ip172.25.254.221时,ip172.25.254.221将其转换到

ip为172.25.21.121的主机上:

4.测试第一条策略:ip172.25.21.121的主机通过ssh服务远程登陆ip172.25.254.88的主机:

通过双网卡配置的内核路由功能和firewalld伪装策略登陆成功:


ip172.25.254.88的主机看到是ip为172.25.254.221的主机登陆痕迹,说明伪装策略配置生效:

测试第二个策略:ip172.25.254.88的主机通过ssh服务登陆ip172.25.254.221的主机:

访问的是ip172.25.254.221的主机,看到的却是ip172.25.21.121的主机,说明网络地址转换配置生效:



发布了51 篇原创文章 · 获赞 3 · 访问量 6万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章