linux系统中部署防火墙服务

防火墙

  防火墙:动态防火墙后台程序FireWalld提供了一个动态管理防火墙,来支持网络的zones,以分配对一个网络及相关连接和界面一定程度的信任;它支持以太网桥,并有分离运行时间和永久行配置选择。

 防火墙的域:

1.trusted:允许所有的数据包

2.block:拒绝所有网络连接

3.public:用于公共区域使用,仅接受dhcpv6-client,ssh服务

4.dmz:仅接受ssh服务连接

5.drop:任何接受的网络数据包都被丢弃,没有任何恢复

防火墙:企业7版本用firewalld

一.图形化配置防火墙:

firewall-config

linux系统中部署防火墙服务_第1张图片

二.使用命令配置防火墙

命令:

1. systemctl start firewalld    打开防火墙

2. firewall-cmd --state                                        查看防火墙状态

3. firewall-cmd --get-active-zones                   查看正在使用的域

4. firewall-cmd --get-default-zone                   查看默认域是哪个

5. firewall-cmd --get-zones                             查看

6. firewall-cmd --zone=public --list-all           查看public域的信息

7. firewall-cmd --get-services                         查看域的所有服务

8. firewall-cmd --list-all-zones                        查看所有的域

9. firewall-cmd --set-default-zone=dmz        将默认域改为dmz

10.firewall-cmd --remove-interface=eth1     删除eth1网卡

1. systemctl start firewalld    打开防火墙

2.firewall-cmd --stat查看防火墙状态

linux系统中部署防火墙服务_第2张图片

3. firewall-cmd --get-active-zones  查看正在使用的域

linux系统中部署防火墙服务_第3张图片

4. firewall-cmd --get-default-zone   查看默认域是哪个

5. firewall-cmd --get-zones     查看

linux系统中部署防火墙服务_第4张图片

6. firewall-cmd --zone=public --list-all  查看public域的信息

linux系统中部署防火墙服务_第5张图片

7. firewall-cmd --get-services  查看域的所有服务

linux系统中部署防火墙服务_第6张图片

8. firewall-cmd --list-all-zones  查看所有的域

linux系统中部署防火墙服务_第7张图片

9. firewall-cmd --set-default-zone=dmz  将默认域改为dmz

10.firewall-cmd --zone=trusted  --add-source=172.25.254.107   将107主机添加进trusted域

linux系统中部署防火墙服务_第8张图片

11.firewall-cmd  --zone=trused  --remove-source=172.25.254.107  将107从trusted域移出

linux系统中部署防火墙服务_第9张图片

12.firewall-cmd --add-interface=eth1    添加eth1网卡

firewall-cmd --remove-interface=eth1   删除eth1网卡

三.接口控制访问不同域:

1.eth0IP:172.25.254.107

   eth1IP:172.25.71.107

2.将eth0和eth1两个网卡都加在public域:

linux系统中部署防火墙服务_第10张图片

两块网卡都可ping通:

linux系统中部署防火墙服务_第11张图片

linux系统中部署防火墙服务_第12张图片

将eth1网卡从public域移出,加入block域,eth1会ping不通:

移出:

linux系统中部署防火墙服务_第13张图片

加入block域:

linux系统中部署防火墙服务_第14张图片

rth1网卡ping不通:

linux系统中部署防火墙服务_第15张图片

四.添加端口:(默认端口为80,改为8080)可以改配置文件,也可以通过命令修改

1)通过配置文件修改:

1.firewall-cmd --list-all                   查看默认域详细信息

linux系统中部署防火墙服务_第16张图片

2.firewall-cmd --add-service=http           添加http服务

linux系统中部署防火墙服务_第17张图片

3.vim /etc/httpd/conf/httpd.conf   编辑配置文件更改端口

内容:

Listen   8080       将默认端口改为8080

4.systemctl restart httpd    重启服务

5.vim /use/lib/firewalld/services/http.xml     更改http端口


测试:在浏览器输入:http://172.25.254.107:8080  可以访问

linux系统中部署防火墙服务_第18张图片

2)通过命令修改

1.firewall-cmd --set-default-zone=public    更改默认域为public
2.firewall-cmd --list-all                   查看默认域详细信息

linux系统中部署防火墙服务_第19张图片
3.firewall-cmd --add-service=http           添加http服务
4.firewall-cmd --list-all                   查看默认域详细信息
8.firewall-cmd --add-port=8080/tcp    更改端口
9.firewall-cmd --list-all             查看端口

linux系统中部署防火墙服务_第20张图片
测试:在浏览器输入:http://172.25.254.107:8080  可以访问

linux系统中部署防火墙服务_第21张图片


五.firewall-cmd --reload与firewall-cmd --complete-reload

1.firewall-cmd --permanent --remove-service=ssh    删除ssh服务
2.firewall-cmd --reload            刷新,当前正在使用的服务不会断

linux系统中部署防火墙服务_第22张图片
测试:ssh [email protected]       连不上


1.firewall-cmd --complete-reload   刷新,当前正在使用的服务会断


测试:ssh [email protected]       连不上


六.Iptables命令管理

内核的3张表,5条列

filter表:经本机内核的数据:input,forward,ouput

nat表:不经过本机内核的数据:input,ouput,prerouting,postrouting

mangel表:所有经过主机的数据:input,forward,ouput,prerouting,postrouting

1.显示内核三张表信息

iptables  -nL            默认为filter表

linux系统中部署防火墙服务_第23张图片


Direct Rules   详细规则

1.firewall-cmd --direct --add-rule ipv4 filter INPUT 2 -p tcp --dport 8080 -s 172.25.254.71 -j ACCEPT    允许71访问

测试:ssh [email protected]         可以连接

linux系统中部署防火墙服务_第24张图片

-p:类型   -s:转化成   -j:有三种: ACCEPT(接收),REJUCT(拒绝),DROP(丢弃)

Rich Rules   高级规则

伪装:在路由前

1.firewall-cmd --add-forward-port=port=22:proto=tcp:toport=22:toaddr=172.25.254.207   目的地转化到207

2.firewall-cmd --add-masquerade       打开伪装功能

linux系统中部署防火墙服务_第25张图片

测试:ssh [email protected]       会连接207

linux系统中部署防火墙服务_第26张图片

查看内核路由功能是否打开:

1. sysctl -a | grep ip_forward

net.ipv4.ip_forward = 1      1表示打开,0表示没打开

2.vim /etc/sysctl.conf         编辑配置文件打开内核路由功能

linux系统中部署防火墙服务_第27张图片

七.端口转换:

服务端:

1.firewall-cmd --permanent --change-interface=eth1 --zone=public   将eth1端口加入域

2.systemctl restart firewalld            重启防火墙

3.firewall-cmd --add-masquerade    打开伪装功能

linux系统中部署防火墙服务_第28张图片 linux系统中部署防火墙服务_第29张图片

4. ifconfig       查看网卡和IP

linux系统中部署防火墙服务_第30张图片

客户端:

1.更改ip为:172.25.254.207,网关为:172.25.254.107

2.ping  172.25.71.107  可以ping通

linux系统中部署防火墙服务_第31张图片

八.企业7之前用:iptables

1.管理命令:

1.systemctl stop firewalld           关闭firewalld

2.systemctl mask firewalld          冻结firewalld

3.yum search iptables                 查找iptables软件包

linux系统中部署防火墙服务_第32张图片

4.yum install iptables-services.x86_64 -y   安装软件

5.systemctl start iptables.service               打开软件

6.systemctl enable  iptables.service          设置开机打开

7.iptables -nL                                               列出信息-n不做解析

linux系统中部署防火墙服务_第33张图片

8.iptables -t nat -nL                                     查看nat表

linux系统中部署防火墙服务_第34张图片

9.iptables -t mangle -nL                              查看mangle表

linux系统中部署防火墙服务_第35张图片



2.制定策略:制定规则从前往后逐渐收缩:服务端

1.iptables -A INPUT -p tcp --dport 22 -j ACCEPT     允许所有访问ssh

2.iptables -A INPUT -s 172.25.254.107 -p tcp --dport 80 -j ACCEPT   允许107访问http

3.iptables -A INPUT ! -s 172.25.252.107 -p tcp --dport 53 -j REJECT  除了107访问dns全部拒绝

!:除了      REJECT:拒绝

4.iptables -A INPUT -j REJECT     全部拒绝

5.service iptables save       保存当前

linux系统中部署防火墙服务_第36张图片

3.地址转发:(207)

1.sysctl -a | grep ip_forward             查看内核路由功能状态

2.vim /etc/sysctl.conf                       编辑配置文件

内容:

net.ipv4.ip_forward = 1     打开内核路由功能

3.iptables -t nat -nL       查看nat表

linux系统中部署防火墙服务_第37张图片

4.iptables -t nat -A PREROUTING -i eth0 -j DNAT --to-dest 172.25.254.207    连接107转化到207上

-i:进来时转化到107

5. iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 172.25.0.107   207看到的ip为0.107

-o:出去时转化到172.25.0.107上

linux系统中部署防火墙服务_第38张图片

测试:ssh [email protected]   连接107会转化到207上,207看到的IP为172.25.0.107






你可能感兴趣的:(linux系统中部署防火墙服务)