firewall-cmd

Linux上新用的防火墻軟件炉爆,跟iptables差不多的工具

補(bǔ)充說(shuō)明

firewall-cmd 是 firewalld的字符界面管理工具梆造,firewalld是centos7的一大特性待德,最大的好處有兩個(gè):支持動(dòng)態(tài)更新丁眼,不用重啟服務(wù)锨亏;第二個(gè)就是加入了防火墻的“zone”概念炕泳。
firewalld跟iptables比起來(lái)至少有兩大好處:
firewalld可以動(dòng)態(tài)修改單條規(guī)則纵诞,而不需要像iptables那樣,在修改了規(guī)則后必須得全部刷新才可以生效培遵。
firewalld在使用上要比iptables人性化很多浙芙,即使不明白“五張表五條鏈”而且對(duì)TCP/ip協(xié)議也不理解也可以實(shí)現(xiàn)大部分功能。
firewalld自身并不具備防火墻的功能籽腕,而是和iptables一樣需要通過(guò)內(nèi)核的netfilter來(lái)實(shí)現(xiàn)嗡呼,也就是說(shuō)firewalld和 iptables一樣,他們的作用都是用于維護(hù)規(guī)則皇耗,而真正使用規(guī)則干活的是內(nèi)核的netfilter南窗,只不過(guò)firewalld和iptables的結(jié) 構(gòu)以及使用方法不一樣罷了。

命令格式

firewall-cmd [選項(xiàng) ... ]

選項(xiàng)

通用選項(xiàng)

-h, --help # 顯示幫助信息郎楼;
-V, --version # 顯示版本信息. (這個(gè)選項(xiàng)不能與其他選項(xiàng)組合)万伤;
-q, --quiet # 不打印狀態(tài)消

狀態(tài)選項(xiàng)

--state # 顯示firewalld的狀態(tài);
--reload # 不中斷服務(wù)的重新加載呜袁;
--complete-reload # 中斷所有連接的重新加載敌买;
--runtime-to-permanent # 將當(dāng)前防火墻的規(guī)則永久保存;
--check-config # 檢查配置正確性傅寡;

日志選項(xiàng)

--get-log-denied # 獲取記錄被拒絕的日志放妈;
?--set-log-denied=<value> # 設(shè)置記錄被拒絕的日志,只能為 'all','unicast','broadcast','multicast','off' 其中的一個(gè)荐操;

實(shí)例

# 安裝firewalld

yum install firewalld firewall-config
systemctl start? firewalld # 啟動(dòng)
systemctl status firewalld # 或者 firewall-cmd --state 查看狀態(tài)
systemctl disable firewalld # 停止
systemctl stop firewalld? # 禁用
# 關(guān)閉服務(wù)的方法
# 你也可以關(guān)閉目前還不熟悉的FirewallD防火墻芜抒,而使用iptables,命令如下:
systemctl stop firewalld
systemctl disable firewalld
yum install iptables-services
systemctl start iptables
systemctl enable iptables

配置firewalld

firewall-cmd --version # 查看版本
firewall-cmd --help? ? # 查看幫助
# 查看設(shè)置:
firewall-cmd --state? # 顯示狀態(tài)
firewall-cmd --get-active-zones? # 查看區(qū)域信息
firewall-cmd --get-zone-of-interface=eth0? # 查看指定接口所屬區(qū)域
firewall-cmd --panic-on? # 拒絕所有包
firewall-cmd --panic-off? # 取消拒絕狀態(tài)
firewall-cmd --query-panic? # 查看是否拒絕
firewall-cmd --reload # 更新防火墻規(guī)則
firewall-cmd --complete-reload

# 兩者的區(qū)別就是第一個(gè)無(wú)需斷開(kāi)連接托启,就是firewalld特性之一動(dòng)態(tài)添加規(guī)則宅倒,第二個(gè)需要斷開(kāi)連接,類似重啟服務(wù)
# 將接口添加到區(qū)域屯耸,默認(rèn)接口都在public
firewall-cmd --zone=public --add-interface=eth0
# 永久生效再加上 --permanent 然后reload防火墻

# 設(shè)置默認(rèn)接口區(qū)域拐迁,立即生效無(wú)需重啟
firewall-cmd --set-default-zone=public

# 查看所有打開(kāi)的端口:
firewall-cmd --zone=dmz --list-ports

# 加入一個(gè)端口到區(qū)域:
firewall-cmd --zone=dmz --add-port=8080/tcp

# 若要永久生效方法同上
# 打開(kāi)一個(gè)服務(wù)蹭劈,類似于將端口可視化,服務(wù)需要在配置文件中添加线召,/etc/firewalld 目錄下有services文件夾铺韧,這個(gè)不詳細(xì)說(shuō)了,詳情參考文檔
firewall-cmd --zone=work --add-service=smtp

# 移除服務(wù)
firewall-cmd --zone=work --remove-service=smtp

# 顯示支持的區(qū)域列表
firewall-cmd --get-zones

# 設(shè)置為家庭區(qū)域
firewall-cmd --set-default-zone=home

# 查看當(dāng)前區(qū)域
firewall-cmd --get-active-zones

# 設(shè)置當(dāng)前區(qū)域的接口
firewall-cmd --get-zone-of-interface=enp03s

# 顯示所有公共區(qū)域(public)
firewall-cmd --zone=public --list-all

# 臨時(shí)修改網(wǎng)絡(luò)接口(enp0s3)為內(nèi)部區(qū)域(internal)
firewall-cmd --zone=internal --change-interface=enp03s

# 永久修改網(wǎng)絡(luò)接口enp03s為內(nèi)部區(qū)域(internal)
firewall-cmd --permanent --zone=internal --change-interface=enp03s

服務(wù)管理

# 顯示服務(wù)列表 Amanda, ftp, Samba和tftp等最重要的服務(wù)已經(jīng)被FirewallD提供相應(yīng)的服務(wù)缓淹,可以使用如下命令查看:
firewall-cmd --get-services

# 允許ssh服務(wù)通過(guò)
firewall-cmd --enable service=ssh

# 禁止SSH服務(wù)通過(guò)
firewall-cmd --disable service=ssh

# 打開(kāi)TCP的8080端口
firewall-cmd --enable ports=8080/tcp

# 臨時(shí)允許Samba服務(wù)通過(guò)600秒
firewall-cmd --enable service=samba --timeout=600

# 顯示當(dāng)前服務(wù)
firewall-cmd --list-services

# 添加HTTP服務(wù)到內(nèi)部區(qū)域(internal)
firewall-cmd --permanent --zone=internal --add-service=http
firewall-cmd --reload? ? # 在不改變狀態(tài)的條件下重新加載防火墻

端口管理

# 打開(kāi)443/TCP端口
firewall-cmd --add-port=443/tcp

# 永久打開(kāi)3690/TCP端口
firewall-cmd --permanent --add-port=3690/tcp

# 永久打開(kāi)端口好像需要reload一下哈打,臨時(shí)打開(kāi)好像不用,如果用了reload臨時(shí)打開(kāi)的端口就失效了
# 其它服務(wù)也可能是這樣的讯壶,這個(gè)沒(méi)有測(cè)試
firewall-cmd --reload

# 查看防火墻料仗,添加的端口也可以看到
firewall-cmd --list-all

控制端口 / 服務(wù)
可以通過(guò)兩種方式控制端口的開(kāi)放,一種是指定端口號(hào)另一種是指定服務(wù)名伏蚊。雖然開(kāi)放 http 服務(wù)就是開(kāi)放了 80 端口立轧,但是還是不能通過(guò)端口號(hào)來(lái)關(guān)閉,也就是說(shuō)通過(guò)指定服務(wù)名開(kāi)放的就要通過(guò)指定服務(wù)名關(guān)閉躏吊;通過(guò)指定端口號(hào)開(kāi)放的就要通過(guò)指定端口號(hào)關(guān)閉氛改。還有一個(gè)要注意的就是指定端口的時(shí)候一定要指定是什么協(xié)議,tcp 還是 udp颜阐。知道這個(gè)之后以后就不用每次先關(guān)防火墻了平窘,可以讓防火墻真正的生效。

firewall-cmd --add-service=mysql # 開(kāi)放mysql端口
firewall-cmd --remove-service=http? ? ? # 阻止http端口
firewall-cmd --list-services? ? ? ? ? ? # 查看開(kāi)放的服務(wù)
firewall-cmd --add-port=3306/tcp? ? ? ? # 開(kāi)放通過(guò)tcp訪問(wèn)3306
firewall-cmd --remove-port=80tcp? ? ? ? # 阻止通過(guò)tcp訪問(wèn)3306
firewall-cmd --add-port=233/udp? ? ? ? # 開(kāi)放通過(guò)udp訪問(wèn)233
firewall-cmd --list-ports? ? ? ? ? ? ? # 查看開(kāi)放的端口


端口轉(zhuǎn)發(fā)

firewall-cmd --add-forward-port=port=80:proto=tcp:toport=8080 # 將80端口的流量轉(zhuǎn)發(fā)至8080
firewall-cmd --add-forward-port=port=80:proto=tcp:toaddr=192.168.0.1 # 將80端口的流量轉(zhuǎn)發(fā)至192.168.0.1
firewall-cmd --add-forward-port=port=80:proto=tcp:toaddr=192.168.0.1:toport=8080 # 將80端口的流量轉(zhuǎn)發(fā)至192.168.0.1的8080端口

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末凳怨,一起剝皮案震驚了整個(gè)濱河市瑰艘,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌肤舞,老刑警劉巖紫新,帶你破解...
    沈念sama閱讀 219,490評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異李剖,居然都是意外死亡芒率,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門篙顺,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)偶芍,“玉大人,你說(shuō)我怎么就攤上這事德玫》梭埃” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,830評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵宰僧,是天一觀的道長(zhǎng)材彪。 經(jīng)常有香客問(wèn)我,道長(zhǎng),這世上最難降的妖魔是什么段化? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,957評(píng)論 1 295
  • 正文 為了忘掉前任嘁捷,我火速辦了婚禮,結(jié)果婚禮上显熏,老公的妹妹穿的比我還像新娘雄嚣。我一直安慰自己,他們只是感情好喘蟆,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,974評(píng)論 6 393
  • 文/花漫 我一把揭開(kāi)白布现诀。 她就那樣靜靜地躺著,像睡著了一般履肃。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上坐桩,一...
    開(kāi)封第一講書(shū)人閱讀 51,754評(píng)論 1 307
  • 那天尺棋,我揣著相機(jī)與錄音,去河邊找鬼绵跷。 笑死膘螟,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的碾局。 我是一名探鬼主播荆残,決...
    沈念sama閱讀 40,464評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼净当!你這毒婦竟也來(lái)了内斯?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,357評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤像啼,失蹤者是張志新(化名)和其女友劉穎俘闯,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體忽冻,經(jīng)...
    沈念sama閱讀 45,847評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡真朗,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,995評(píng)論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了僧诚。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片遮婶。...
    茶點(diǎn)故事閱讀 40,137評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖湖笨,靈堂內(nèi)的尸體忽然破棺而出旗扑,到底是詐尸還是另有隱情,我是刑警寧澤赶么,帶...
    沈念sama閱讀 35,819評(píng)論 5 346
  • 正文 年R本政府宣布肩豁,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏清钥。R本人自食惡果不足惜琼锋,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,482評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望祟昭。 院中可真熱鬧缕坎,春花似錦、人聲如沸篡悟。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,023評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)搬葬。三九已至荷腊,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間急凰,已是汗流浹背女仰。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,149評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留抡锈,地道東北人疾忍。 一個(gè)月前我還...
    沈念sama閱讀 48,409評(píng)論 3 373
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像床三,于是被迫代替她去往敵國(guó)和親一罩。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,086評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容