linux防火墙firewall使用简介

1、firewalld的基本使用
启动: systemctl start firewalld
查看状态: systemctl status firewalld
停止: systemctl disable firewalld
禁用: systemctl stop firewalld

2.systemctl是CentOS7的服务管理工具中主要的工具,它融合之前service和chkconfig的功能于一体。

启动一个服务:systemctl start firewalld.service
关闭一个服务:systemctl stop firewalld.service
重启一个服务:systemctl restart firewalld.service
显示一个服务的状态:systemctl status firewalld.service
在开机时启用一个服务:systemctl enable firewalld.service
在开机时禁用一个服务:systemctl disable firewalld.service
查看服务是否开机启动:systemctl is-enabled firewalld.service
查看已启动的服务列表:systemctl list-unit-files|grep enabled
查看启动失败的服务列表:systemctl --failed

3.配置firewalld-cmd
查看版本: firewall-cmd --version
查看帮助: firewall-cmd --help
显示状态: firewall-cmd --state
查看所有打开的端口: firewall-cmd --zone=public --list-ports
更新防火墙规则: firewall-cmd --reload
查看区域信息: firewall-cmd --get-active-zones
查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0
拒绝所有包:firewall-cmd --panic-on
取消拒绝状态: firewall-cmd --panic-off
查看是否拒绝: firewall-cmd --query-panic

那怎么开启一个端口呢
添加
firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效)
重新载入
firewall-cmd --reload
查看
firewall-cmd --zone= public --query-port=80/tcp
删除
firewall-cmd --zone= public --remove-port=80/tcp --permanent

暫時開放 ftp 服務
# firewall-cmd --add-service=ftp

永久開放 ftp 服務
# firewall-cmd --add-service=ftp --permanent
永久關閉
# firewall-cmd --remove-service=ftp --permanent
success

讓設定生效
# systemctl restart firewalld

檢視設定是否生效
# iptables -L -n | grep 21
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:21 ctstate NEW

檢查防火牆狀態
# firewall-cmd --state
running

# systemctl stop firewalld
# firewall-cmd --state
not running

# firewall-cmd --list-all
public (default)
  interfaces:
  sources:
  services: dhcpv6-client ftp ssh
  ports:
  masquerade: no
  forward-ports:
  icmp-blocks:
  rich rules:

在 FirewallD 的服務名稱
# firewall-cmd --get-service
amanda-client bacula bacula-client dhcp dhcpv6 dhcpv6-client dns ftp high-availability http https imaps ipp ipp-client ipsec kerberos kpasswd ldap ldaps libvirt libvirt-tls mdns mountd ms-wbt mysql nfs ntp openvpn pmcd pmproxy pmwebapi pmwebapis pop3s postgresql proxy-dhcp radius rpc-bind samba samba-client smtp ssh telnet tftp tftp-client transmission-client vnc-server wbem-https

查詢服務的啟用狀態
# firewall-cmd --query-service ftp
yes
# firewall-cmd --query-service ssh
yes
# firewall-cmd --query-service samba
no
# firewall-cmd --query-service http
no

自行加入要開放的 Port
# firewall-cmd --add-port=3128/tcp
# firewall-cmd --list-all
public (default)
  interfaces:
  sources:
  services: dhcpv6-client ftp ssh
  ports: 3128/tcp
  masquerade: no
  forward-ports:
  icmp-blocks:
  rich rules:

启动FirewallD服务:

systemctl enable firewalld.service        #设置开机启动

systemctl start firewalld.service        #开启服务 

查看防火墙状态:

systemctl status firewalld

1. 区域管理

1.1. 网络区域简介

通过将网络划分成不同的区域,制定出不同区域之间的访问控制策略来控制不同程序区域间传送的数据流。例如,互联网是不可信任的区域,而内部网络是高度信任的区域。网络安全模型可以在安装,初次启动和首次建立网络连接时选择初始化。该模型描述了主机所连接的整个网络环境的可信级别,并定义了新连接的处理方式。有如下几种不同的初始化区域:

  • 阻塞区域(block):任何传入的网络数据包都将被阻止。
  • 工作区域(work):相信网络上的其他计算机,不会损害你的计算机。
  • 家庭区域(home):相信网络上的其他计算机,不会损害你的计算机。
  • 公共区域(public):不相信网络上的任何计算机,只有选择接受传入的网络连接。
  • 隔离区域(DMZ):隔离区域也称为非军事区域,内外网络之间增加的一层网络,起到缓冲作用。对于隔离区域,只有选择接受传入的网络连接。
  • 信任区域(trusted):所有的网络连接都可以接受。
  • 丢弃区域(drop):任何传入的网络连接都被拒绝。
  • 内部区域(internal):信任网络上的其他计算机,不会损害你的计算机。只有选择接受传入的网络连接。
  • 外部区域(external):不相信网络上的其他计算机,不会损害你的计算机。只有选择接受传入的网络连接。

注:FirewallD的默认区域是public。

1.2. 显示支持的区域列表

firewall-cmd --get-zones

1.3. 设置为家庭区域

firewall-cmd --set-default-zone=home

1.4. 查看当前区域

firewall-cmd --get-active-zones

1.5. 设置当前区域的接口

firewall-cmd --get-zone-of-interface=enp03s

1.6. 显示所有公共区域(public)

firewall-cmd --zone=public --list-all

1.7. 临时修改网络接口(enp0s3)为内部区域(internal)

firewall-cmd --zone=internal --change-interface=enp03s

1.8. 永久修改网络接口enp03s为内部区域(internal)

firewall-cmd --permanent --zone=internal --change-interface=enp03s

2. 服务管理

2.1. 显示服务列表

Amanda, FTP, Samba和TFTP等最重要的服务已经被FirewallD提供相应的服务,可以使用如下命令查看:

firewall-cmd --get-services

2.2. 允许SSH服务通过

firewall-cmd --enable service=ssh

2.3. 禁止SSH服务通过

firewall-cmd --disable service=ssh

2.4. 打开TCP的8080端口

firewall-cmd --enable ports=8080/tcp

2.5. 临时允许Samba服务通过600秒

firewall-cmd --enable service=samba --timeout=600

2.6. 显示当前服务

firewall-cmd --list-services

2.7. 添加HTTP服务到内部区域(internal)

firewall-cmd --permanent --zone=internal --add-service=http

firewall-cmd --reload     #在不改变状态的条件下重新加载防火墙

3. 端口管理

3.1. 打开端口

#打开443/TCP端口

firewall-cmd --add-port=443/tcp

#永久打开3690/TCP端口

firewall-cmd --permanent --add-port=3690/tcp

#永久打开端口好像需要reload一下,临时打开好像不用,如果用了reload临时打开的端口就失效了

#其它服务也可能是这样的,这个没有测试

firewall-cmd --reload

#查看防火墙,添加的端口也可以看到

firewall-cmd --list-all

4. 直接模式

FirewallD包括一种直接模式,使用它可以完成一些工作,例如打开TCP协议的9999端口

firewall-cmd --direct -add-rule ipv4 filter INPUT 0 -p tcp --dport 9000 -j ACCEPT

firewall-cmd --reload

5. 关闭服务的方法

你也可以关闭目前还不熟悉的FirewallD防火墙,而使用iptables,命令如下:

systemctl stop firewalld

systemctl disable firewalld

yum install iptables-services

systemctl start iptables

systemctl enable iptables

时间: 2025-01-07 03:09:01

linux防火墙firewall使用简介的相关文章

LINUX防火墙firewall、iptables

(1) 重启后永久性生效: 开启: systemctl enable iptables.service'.ln -s '/usr/lib/systemd/system/iptables.service' '/etc/systemd/system/basic.target.wants/iptables.service' 关闭: systemctl disable iptables.service (2) 即时生效,重启后失效: 开启:systemctl start iptables.service

Linux防火墙Firewall和Iptables的使用

Linux中有两种防火墙软件,ConterOS7.0以上使用的是firewall,ConterOS7.0以下使用的是iptables,本文将分别介绍两种防火墙软件的使用. Firewall 开启防火墙: systemctl start firewalld 关闭防火墙: systemctl stop firewalld 查看防火墙状态: systemctl status firewalld 设置开机启动: systemctl enable firewalld 禁用开机启动: systemctl d

Linux防火墙简介 – iptables配置策略

Netfilter/iptables简介 ????要想真正掌握Linux防火墙体系,首先要搞清楚Netfilter和iptables的关系,Netfilter和iptables包含在Linux2.4以后的内核中,可实现防火墙.NAT和数据包分割的功能.Netfilter采用模块化设计,具有良好的可扩展性.Netfilter是一个框架,iptables则是我们用户层的工具,通过iptables我们可以配置很多规则,这些规则加载到Netfilter框架中生效. ????Netfilter可以和协议栈

linux防火墙查看状态firewall、iptable

linux防火墙查看状态firewall.iptable 一.iptables防火墙1.基本操作 # 查看防火墙状态 service iptables status # 停止防火墙 service iptables stop # 启动防火墙 service iptables start # 重启防火墙 service iptables restart # 永久关闭防火墙 chkconfig iptables off # 永久关闭后重启 chkconfig iptables on 2.开启80端口

我掌握的linux防火墙知识

以下这是是我学生时代在达内培训并且结合网上的一些资料做的学习笔记,和大家分享下 1. 什么是防火墙 1.1简介 1)防火墙是一道保护性的安全屏障,起保护,隔离的作用,Iptables是linux/unix自带的基于包过滤的防火墙工具 2)可以对流入和流出服务器的数据包进行很精细的控制.特别是它可以在一台低配置的服务器上跑的非常好. 3)Iptables主要工作在OSI七层的二.三.四层,如果重新编译内核,iptables也可以支持7层控制(squid代理+iptables) 1.2分类 1)根据

服务器安全设置Centos7 防火墙firewall与iptables

一.>>>>>>启用centos7 iptables防火墙Centos7 防火墙firewall设置方法 我们Sinesafe在处理客户服务器Linux Centos7 64位系统里配置防火墙安全设置需要选择2种方案其中之一,最后选择了iptables防火墙. 因为在Centos 7版本里默认的防火墙是firewall,所以首先用firewall防火墙的话,下面就是配置方法: **# firewall-cmd --zone=public --add-port=8080/

Linux防火墙基础(Firewalld命令的使用)

Firewalld概述 Firewalld简介 (1)支持网络区域所定义的网络连接以及接口安全的动态防火墙管理工具.(2)支持IPv4.IPv6防火墙设置以及以太网桥接(3)支持服务或应运程序直接添加防火墙规则口(4)拥有两种配置模式运行时配置永久配置 Firewalld和iptables的关系 netfilter (1)位于linux内核中的包过滤功能体系(2)称为Linux防火墙的"内核态" Firewalld/iptables (1)Centos7默认的管理防火墙规则的工具(Fi

linux防火墙--iptables(二)

五.filter过滤和转发 a.打开内核的IP转发 # sysctl -w net.ipv4.ip_forward=1 或 # echo 1 > /proc/sys/net/ipv4/ip_forward b.基本匹配条件 ·通用匹配 → 可直接使用,不依赖于其他条件或扩展 → 包括网络协议.IP地址.网络接口等条件 ·隐含匹配 → 要求以特定的协议匹配作为前提 → 包括端口.TCP标记.ICMP类型等条件 类别 选项 用法 通用匹配 协议匹配 -p 协议名 地址匹配 -s 源地址      

linux防火墙之表、链

后续要整理常用的,所以复制过来了,我的上一篇是:linux防火墙 以下内容采自于:http://my.oschina.net/HankCN/blog/117796 Filter表:过滤数据包,默认表. (1)INPUT   链:过滤所有目标地址是本机的数据包(对进入本机数据包的过滤) (2)OUTPUT 链:过滤所有本机产生的数据包(对源地址得数据包的过滤) (3)FORWARD链:过滤所有路过本机的数据包(源地址和目标地址都不是本机的数据包. NAT表:网络地址转换(Network Addre