火墙配置

2024-01-28 20:18
文章标签 配置 火墙

本文主要是介绍火墙配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在计算中,防火墙是基于预定安全规则来监视和控制传入和传出网络流量的网络安全系统。该计算机流入流出的所有网络通信均要经过此防火墙。防火墙对流经它的网络通信进行扫描,这样能够过滤掉一些攻击,以免其在目标计算机上被执行。防火墙还可以关闭不使用的端口。而且它还能禁止特定端口的流出通信,封锁特洛伊木马。最后,它可以禁止来自特殊站点的访问,从而防止来自不明入侵者的所有通信。(来源于百度百科)
  在linux系统里,防火墙其实就是一张表iptables,在数据包传输的时侯,如果表中允许通过的话,数据包就可以通过,如果表中不允许通过的话,就会被拒绝。配置火墙其实就是给表中写入数据。写入数据有两种模式,一种是firewalld的模式,另一种是iptables模式。下来就逐一进行介绍。
  fireword模式:
firewalld的图形管理:

  安装并打开firewalld服务,执行以下命令,就会进入firewalld的图形管理界面:


  进入图形管理界面后,如下所示:


  注释:
    1.zone(网络区):
    block(限制)        #拒绝所有网络连接      
    dmz(非军事区)        #仅接受ssh连接
    drop(丢弃)        #任何接受的网络数据包都会被丢弃
    external(外部)    #出去的ipv4网络连接通过此区域伪装和转发,仅接受ssh'服务
    home(家庭)        #用于家庭网络,仅接受ssh,mdns,ipp-client,samba-clien或者dhcpv6-client服务
    internal(内部)    #用于内部网络连接,仅接受ssh,mdns,ipp-client,samba-clien,dhcpv6-client服务
    public(公共)        #在公共区域使用,仅接受ssh或dhcpv6-client服务连接,为firewalld的默认区域
    trusted    (信任)    #可接受所有网络连接
    work(工作)        #用于工作区,仅接受ssh,ipp-client或dhcpv6-client服务连接
    2.configuration中有两种模式,一种是Runtime临时设置,一种是Permanent永久设置。临时设置的直接启用,永久设置在重启后才会被启用。

  可以用以下命令对火墙进行监控:


  在临时设置时,直接被启用,如图中的dns服务:


  在永久设置时,只有在服务被重启之后才会被启用:


  如果要修改网络域的话,点击右上角的option-->change defaultzone,如下:

         

  在默认情况下firewalld是不支持http服务的,但是在service加入hhtp服务之后就被允许,如下:


  在默认情况下,火墙支持http服务的端口是80,如果在服务端将http的端口改为8080的话,火墙就不允许访问apache如下:



  要能够访问apache的话,需要在火墙对http服务的配置文件中修改端口为8080,如下:


除了以配置文件的方式修改端口,还可以通过图形界面修改端口,如下:


  查看firewall状态,如下:


  查看火墙支持的网段:


  查看火墙的默认网络域:


  查看trusted网络区的信息:


  查看firewalld所支持的服务:


  修改默认网络区:


  查看所有的网络区:


  列出所有的网络区:


  添加trusted支持的地址,添加后172.25.254.60所有的数据包都可以通过:


  移除trusted支持的地址:


  列出默认的网络区:


  通过火墙设置控制网络接口的开合:

    服务器有两个网络接口eth0和eth1,eth0的ip地址为172.25.254.160.eth1的ip地址为172.25.60.160,通过以下设置可以使172.25.60.160无法访问。


    首先将eth1从public网络区移除,然后将eth1添加到block网络区,这样就可以实现网络接口的控制,如下:



  添加public网络区的端口,永久添加后,需要重新加载:


  除了命令形式,还可以在/etc/firewalld/zones/public.xml文件中添加端口,如下:


  拒绝所有来自172.25.254.60主机的数据包:


  除了172.25.254.60主机外拒绝其它地址访问tcp协议下22端口,即ssh服务:




  firewalld模式下路由功能的实现,因为firewall的智能化,172.25.60.161主机的网关设置为172.25.60.160,在服务端将火墙的伪装功能打开,它就可以访问172.25.254网段的主机。如下:




  除次之外还可以实现转接功能,将伪装功能关闭后,实行以下命令,就可以让所有访问22端口的转接到172.25.254.60主机上。

iptables模式:


 


  首先安装iptables,然后将firewall关闭,并锁住,打开iptables,如下:



  iptables命令中所有参数:
  -A    #添加        -m    #状态
  -D    #删除        -i    #输入
  -p    #协议        -o    #输出
  -dport #目的地端口    -sport    #源地址端口
  -j    #动作        -t    #表
  -n    #不解析        -L    #显示
  -F    #刷新        -I    #插入
  -N    #添加一个链    -E    #替换链名
  -X    #删除链        -s    #源
  -P            -R    

 查看iptables:


  刷新iptables,将里面的内容全部刷掉,列出filter表:


  保存所写入的内容:


  拒绝所有访问:


  使已经访问过和正在访问过的数据包通过,允许新的数据访问tcp协议的22(ssh服务)端口,和80(http服务)端口,其它的数据包不允许通过:


  iptables的路由功能:

    使从eth0网络接口出去的数据,都转到172.25.254.160主机上,并编辑该文件:


    写入如下内容:


    刷新:


    此时172.25.254.60.161的主机就可以连接上172.25.254.160的主机:


  火墙设置的两种模式中,iptables模式比较经典,较稳定。firewalld模式属于主流模式,比较智能,但相比于iptables不够稳定,我们可以通过自己的喜好选择。

除了以配置文件的方式修改端口,还可以通过图形界面修改端口.


这篇关于火墙配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/654691

相关文章

nginx 负载均衡配置及如何解决重复登录问题

《nginx负载均衡配置及如何解决重复登录问题》文章详解Nginx源码安装与Docker部署,介绍四层/七层代理区别及负载均衡策略,通过ip_hash解决重复登录问题,对nginx负载均衡配置及如何... 目录一:源码安装:1.配置编译参数2.编译3.编译安装 二,四层代理和七层代理区别1.二者混合使用举例

Java JDK1.8 安装和环境配置教程详解

《JavaJDK1.8安装和环境配置教程详解》文章简要介绍了JDK1.8的安装流程,包括官网下载对应系统版本、安装时选择非系统盘路径、配置JAVA_HOME、CLASSPATH和Path环境变量,... 目录1.下载JDK2.安装JDK3.配置环境变量4.检验JDK官网下载地址:Java Downloads

Linux下进程的CPU配置与线程绑定过程

《Linux下进程的CPU配置与线程绑定过程》本文介绍Linux系统中基于进程和线程的CPU配置方法,通过taskset命令和pthread库调整亲和力,将进程/线程绑定到特定CPU核心以优化资源分配... 目录1 基于进程的CPU配置1.1 对CPU亲和力的配置1.2 绑定进程到指定CPU核上运行2 基于

Spring Boot spring-boot-maven-plugin 参数配置详解(最新推荐)

《SpringBootspring-boot-maven-plugin参数配置详解(最新推荐)》文章介绍了SpringBootMaven插件的5个核心目标(repackage、run、start... 目录一 spring-boot-maven-plugin 插件的5个Goals二 应用场景1 重新打包应用

Java中读取YAML文件配置信息常见问题及解决方法

《Java中读取YAML文件配置信息常见问题及解决方法》:本文主要介绍Java中读取YAML文件配置信息常见问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录1 使用Spring Boot的@ConfigurationProperties2. 使用@Valu

Jenkins分布式集群配置方式

《Jenkins分布式集群配置方式》:本文主要介绍Jenkins分布式集群配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装jenkins2.配置集群总结Jenkins是一个开源项目,它提供了一个容易使用的持续集成系统,并且提供了大量的plugin满

SpringBoot线程池配置使用示例详解

《SpringBoot线程池配置使用示例详解》SpringBoot集成@Async注解,支持线程池参数配置(核心数、队列容量、拒绝策略等)及生命周期管理,结合监控与任务装饰器,提升异步处理效率与系统... 目录一、核心特性二、添加依赖三、参数详解四、配置线程池五、应用实践代码说明拒绝策略(Rejected

SQL Server配置管理器无法打开的四种解决方法

《SQLServer配置管理器无法打开的四种解决方法》本文总结了SQLServer配置管理器无法打开的四种解决方法,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录方法一:桌面图标进入方法二:运行窗口进入检查版本号对照表php方法三:查找文件路径方法四:检查 S

Linux中SSH服务配置的全面指南

《Linux中SSH服务配置的全面指南》作为网络安全工程师,SSH(SecureShell)服务的安全配置是我们日常工作中不可忽视的重要环节,本文将从基础配置到高级安全加固,全面解析SSH服务的各项参... 目录概述基础配置详解端口与监听设置主机密钥配置认证机制强化禁用密码认证禁止root直接登录实现双因素

嵌入式数据库SQLite 3配置使用讲解

《嵌入式数据库SQLite3配置使用讲解》本文强调嵌入式项目中SQLite3数据库的重要性,因其零配置、轻量级、跨平台及事务处理特性,可保障数据溯源与责任明确,详细讲解安装配置、基础语法及SQLit... 目录0、惨痛教训1、SQLite3环境配置(1)、下载安装SQLite库(2)、解压下载的文件(3)、