Linux防火墙

 netfilter:内核态,直接调用Linux内核进行防火墙设置
   firewalld:用户态,面向用户的防火墙管理工具(第六版本iptables)
防火墙工作流程
   数据来时先检测数据的源IP地址
   1.若源地址关联到某个区域,则执行该区域规则
   2.若源地址未关联到区域,则应用接口所在区域的规则
   3.若接口没有规则,则应用默认规则
firewalld区域:
   internal:内部区域 允许ssh,samba-client,dhcpv6-client,其他拒绝
   external:外部区域 允许ssh,其他全部拒绝
   trusted:信任区域  允许所有
   public :公共区域  允许ssh和dhcp通过
   drop :丢弃区域   禁止所有并丢弃
   dmz :非军事管理区 默认ssh通过
firewalld的作用是为包过滤机制提供匹配规则,通过各种不同的规则,告诉netfilter对来自指定源,前往指定目的或具有某些协议特征的数据包采取何种处理方式
firewall-config   //图形化管理工具
命令行管理   
systemctl enable firewalld    #开机自启
systemctl start firewalld     #启动防火墙
firewall-cmd --state          #查看工具状态
firewall-cmd --get-zones      #查看预定义区域
firewall-cmd --get-services   #查看预定义服务
firewall-cmd --get-default-zone  #查看默认区域
firewall-cmd --list-all          #查看默认区域的规则
firewall-cmd --zone=区域名 --list-all  #查看某区域规则
firewall-cmd --get-zone-of-interface=ens33  #查看接口所在区域
firewall-cmd --zone=external --change-interface=ens33 #改变区域
firewall-cmd --zone=external --list-interfaces  #查看区域下接口
 
服务管理
firewall-cmd --zone=internal --add-icmp-block=echo-request  //拒绝ping
firewall-cmd --zone=external --list-services        //查看区域下服务
firewall-cmd --zone=external --add-service=http     //添加服务进区域
firewall-cmd --zone=external --add-port=10050/tcp     //添加端口进区域
firewall-cmd --zone=external --remove-service=http  //删除服务
firewall -cmd --zone=external --remove-port=443/tcp  //删除端口
将ens33接口加入到dmz区域,DMZ区域允许http,https,mysql,1234端口通过
全部改成永久配置
命令后接 --permanent 为永久配置
firewall-cmd --runtime-to-permanent   //全部转 换为永久配置
firewall-cmd --reload                 //重载防火墙
 
 
web:
搭建web+ssl服务
   挂光盘
   yum源
   静态IP
   yum -y install httpd mod_ssl
   vim /var/www/html/index.html
       <h1>www.baidu.com</h1>
   systemctl start httpd
   https://localhost
更改ssh服务端口
    setenforce 0                       
   vim /etc/ssh/sshd_config
       port 12345    
   systemctl restart sshd
   netstat -anpt | grep sshd
防火墙配置
firewall-cmd --change-interface=ens33 --zone=internal
firewall-cmd --zone=internal --add-service=https
firewall-cmd --zone=internal --add-ports=12345/tcp
 
出口服务器:
    配置IP
   systemctl start firewalld
   firewall-cmd --change-interface=ens33 --zone=trusted
   firewall-cmd --change-interface=ens37 --zone=external    
   firewall-cmd --get-active-zones          //查看当前使用的区域及接口
   vim /etc/sysctl.conf                     //开启路由功能
       net.ipv4.ip_forward = 1                  
   sysctl -p                                //检查
   firewall-cmd --zone=external --add-service=https
    firewall-cmd --zone=external --add-ports=12345/tcp

相关推荐