一、永久的開(kāi)放需要的端口
sudo firewall-cmd --zone=public --add-port=3000/tcp --permanent
sudo firewall-cmd --reload
二苛谷、永久關(guān)閉某端口
$ sudo firewall-cmd --remove-port=3000/tcp --permanent
二辅鲸、檢查防火墻規(guī)則
firewall-cmd --list-all
三、關(guān)閉防火墻
$ sudo systemctl stop firewalld
由于只是用于開(kāi)發(fā)環(huán)境腹殿,所以打算把防火墻關(guān)閉掉
//臨時(shí)關(guān)閉防火墻,重啟后會(huì)重新自動(dòng)打開(kāi)
systemctl restart firewalld
//檢查防火墻狀態(tài)
firewall-cmd --state
firewall-cmd --list-all
//Disable firewall
systemctl disable firewalld
systemctl status firewalld
//Enable firewall
systemctl enable firewalld
systemctl start firewalld
systemctl status firewalld
四独悴、拓展
source: 根據(jù)源地址過(guò)濾(優(yōu)先級(jí)最高)
interface: 根據(jù)網(wǎng)卡過(guò)濾(優(yōu)先級(jí)次高)
service: 根據(jù)服務(wù)名過(guò)濾
port: 根據(jù)端口過(guò)濾
icmp-block: icmp 報(bào)文過(guò)濾,按照 icmp 類型配置
masquerade: ip 地址偽裝
forward-port: 端口轉(zhuǎn)發(fā)
rule: 自定義規(guī)則
# 查看是否開(kāi)啟
systemctl status firewalld.service
# 打開(kāi)防火墻
systemctl start firewalld.service
# 停用防火墻
systemctl disable firewalld
# 禁用防火墻
systemctl stop firewalld.service
# 開(kāi)機(jī)啟動(dòng)
systemctl enable firewalld
# 取消開(kāi)機(jī)啟動(dòng)
systemctl disable firewalld
# 查看運(yùn)行狀態(tài)
firewall-cmd --state
# 查看接口信息
firewall-cmd --list-all
# 更新防火墻規(guī)則方法1:無(wú)需斷開(kāi)連接锣尉,動(dòng)態(tài)更改規(guī)則
firewall-cmd --reload
# 更新防火墻規(guī)則方法2:斷開(kāi)連接刻炒,以重啟的方式更改規(guī)則
firewall-cmd --complete-reload
# 查看幫助
firewall-cmd --help
--zone=NAME # 指定 Zone
--permanent # 為永久生效
--timeout=seconds # 持續(xù)一段時(shí)間,到期后自動(dòng)移除自沧,經(jīng)常用于調(diào)試坟奥,且不能與 --permanent 同時(shí)使用
# 追加一個(gè)8181端口,永久有效
firewall-cmd --add-port=8181/tcp --permanent
# 追加一段端口范圍
firewall-cmd --add-port=6000-6600/tcp
# 開(kāi)放 ftp 服務(wù)
firewall-cmd --add-service=ftp
# 添加eth0 接口至 public 信任等級(jí)拇厢,永久有效
firewall-cmd --zone=public --add-interface=eth0 --permanent
# 配置 public zone 的端口轉(zhuǎn)發(fā)
firewall-cmd --zone=public --add-masquerade
# 然后轉(zhuǎn)發(fā) tcp 22 端口至 9527
firewall-cmd --zone=public --add-forward-port=port=22:proto=tcp:toport=9527
# 轉(zhuǎn)發(fā) 22 端口數(shù)據(jù)至另一個(gè) ip 的相同端口上
firewall-cmd --zone=public --add-forward-port=port=22:proto=tcp:toaddr=192.168.1.123
# 轉(zhuǎn)發(fā) 22 端口數(shù)據(jù)至另一 ip 的 9527 端口上
firewall-cmd --zone=public --add-forward-port=port=22:proto=tcp:toport=9527:toaddr=192.168.1.100
# IP 封禁
firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='192.168.1.123' reject"
# 通過(guò) ipset 來(lái)封禁 ip
firewall-cmd --permanent --zone=public --new-ipset=blacklist --type=hash:ip
firewall-cmd --permanent --zone=public --ipset=blacklist --add-entry=192.168.1.123
# 封禁網(wǎng)段
firewall-cmd --permanent --zone=public --new-ipset=blacklist --type=hash:net
firewall-cmd --permanent --zone=public --ipset=blacklist --add-entry=192.168.1.0/24
# 倒入 ipset 規(guī)則 blacklist爱谁,然后封禁 blacklist
firewall-cmd --permanent --zone=public --new-ipset-from-file=/path/blacklist.xml
firewall-cmd --permanent --zone=public --add-rich-rule='rule source ipset=blacklist drop'