CentOS 下 firewalld 配置操做詳解ssh
1、firewalld基本配置tcp
一、firewalld的基本使用
systemctl start firewalld # 啓動 firewalld 服務
systemctl status firewalld #查看firewalld啓動狀態
systemctl stop firewalld #中止firewalld服務
systemctl disable firewalld #禁止firewalld服務
2.配置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 #查看zone信息
firewall-cmd --get-zone-of-interface=eth0 #查看指定接口所屬區域
firewall-cmd --panic-on #拒絕全部包
firewall-cmd --panic-off #取消拒絕狀態
firewall-cmd --query-panic #查看是否拒絕ide
firewall-cmd --list-all #查看默認域下全部規則
firewall-cmd --list-rich-rules #查看全部富規則
firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,沒有此參數重啓後失效) #放通80端口
firewall-cmd --permanent --zone=public --add-port=5901-5910/tcp --permanent #放通連續端口
firewall-cmd --permanent --zone=public --add-port=9000/tcp --add-port=9001/tcp #放通不連續端口xml
firewall-cmd --permanent --zone=public --add-service=ssh #放通SSH服務接口
firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="172.16.100.254/32" port protocol="tcp" port="4505" accept" #放通源IP地址及端口ip
firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="172.16.100.254/32" port port="4505" protocol="tcp" accept" #取消源IP地址及端口放行utf-8
firewall-cmd --zone= public --remove-port=80/tcp --permanent 刪除端口放通rem
firewall-cmd --reload #重載防火牆,使配置生效 get
firewall-cmd --permanent --zone=public --list-services #查看全部放通的服務
firewall-cmd --permanent --zone=public --list-ports #查看全部放通的端口
firewall-cmd --zone= public --query-port=80/tcp #查看端口是否放通input
2、ipset集合配置方法:
配置邏輯說明:
1)手動建立ipset配置文件
2)根據模板配置規則地址
3)將ipset應用到策略中
4)新增、刪除IP地址規則
一、手動建立ipset配置文件
注意:集合命名規範:permit_端口_input
系統默認沒有ipset配置文件,須要手動建立ipset配置文件
mkdir -p /etc/firewalld/ipsets/permit_22_input.xml permit_22_input就是ipset名稱
<?xml version="1.0" encoding="utf-8"?>
<ipset type="hash:net">
<short>white-list</short>
<entry>192.168.1.1</entry>
<entry>192.168.1.2</entry>
</ipset>
二、將ipset應用到策略中
firewall-cmd --permanent --add-rich-rule 'rule family="ipv4" source ipset="permit_22_input" port port=22 protocol=tcp accept'
firewall-cmd --reload
三、新增,刪除IP地址
firewall-cmd --permanent --ipset=permit_22_input --add-entry="192.168.1.190"
firewall-cmd --permanent --ipset=permit_22_input --remove-entry="192.168.1.190"
firewall-cmd --reload
注:此方法新增,刪除是ipset配置文件配置項
firewall-cmd --permanent --ipset=permit_22_input --get-entries #查看ipset集合中的地址
四、清除或刪除ipset
firewall-cmd --permanent --delete-ipset=permit_22_input #清除ipset的xml配置文件信息
ipset destroy permit_22_input #清除ipset list信息
五、查看ipset信息firewall-cmd --get-ipsets #查看ipset名稱firewall-cmd --info-ipset permit_22_input #查看ipset詳細信息