Linux中防火墙firewalld
Linux中防火墻firewalld
- 一、什么是防火墻
- 二、防火墻的作用
- 三、Linux中的防火墻分類
- 四、firewalld防火墻
- 1、 區(qū)域
- 2、運行模式和永久模式
- 五、防火墻設(shè)置
- 1、防火墻的啟動、停止以及查看運行狀態(tài)
- 2、防火墻重啟與重載操作
- 3、把防火墻設(shè)置為開機啟動與開機不啟動
- 六、firewalld防火墻規(guī)則
- 1、firewalld管理工具
- 2、查看防火墻默認的區(qū)域(zone)
- 3、查看所有支持的區(qū)域(zones)
- 4、 查看當(dāng)前區(qū)域的規(guī)則設(shè)置
- 5、查看所有區(qū)域的規(guī)則設(shè)置
- 6、添加允許通過的服務(wù)或端口
- 1)通過服務(wù)的名稱添加規(guī)則
- 2) 通過服務(wù)的端口號添加規(guī)則
- 7、永久模式permanent
一、什么是防火墻
防火墻技術(shù)是通過有機結(jié)合各類用于安全管理與篩選的軟件和硬件設(shè)備,幫助計算機網(wǎng)絡(luò)于其內(nèi)、外網(wǎng)之間構(gòu)建一道相對隔絕的保護屏障,以保護用戶資料與信息安全性的一種技術(shù)。
二、防火墻的作用
防火墻技術(shù)的功能主要在于及時發(fā)現(xiàn)并處理計算機網(wǎng)絡(luò)運行時可能存在的安全風(fēng)險、數(shù)據(jù)傳輸?shù)葐栴},其中處理措施包括隔離與保護,同時可對計算機網(wǎng)絡(luò)安全當(dāng)中的各項操作實施記錄與檢測,以確保計算機網(wǎng)絡(luò)運行的安全性,保障用戶資料與信息的完整性,為用戶提供更好、更安全的計算機網(wǎng)絡(luò)使用體驗。
三、Linux中的防火墻分類
CentOS5、CentOS6 => 防火墻 => iptables防火墻
CentOS7 => 防火墻 => firewalld防火墻
firewalld = fire火 wall墻 daemon守護進程
四、firewalld防火墻
1、 區(qū)域
firewalld增加了區(qū)域(zone)的概念,所謂區(qū)域是指,firewalld預(yù)先準備了幾套防火墻策略的集合,類似于策略的模板,用戶可以根據(jù)需求選擇區(qū)域。
常見區(qū)域及相應(yīng)策略規(guī)則
(規(guī)則:哪些端口或服務(wù)可以通過防火墻,哪些不能通過)
| trusted | 允許所有數(shù)據(jù)包 |
| home | 拒絕流入的流量,除非與流出的流量相關(guān),允許ssh,mdns,ippclient,amba-client,dhcpv6-client服務(wù)通過 |
| internal | 等同于home |
| work | 拒絕流入的流量,除非與流出的流量相關(guān),允許ssh,ipp-client,dhcpv6-client服務(wù)通過 |
| public | 拒絕流入的流量,除非與流出的流量相關(guān),允許ssh,dhcpv6-client服務(wù)通過 |
| external | 拒絕流入的流量,除非與流出的流量相關(guān),允許ssh服務(wù)通過 |
| dmz | 拒絕流入的流量,除非與流出的流量相關(guān),允許ssh服務(wù)通過 |
| block | 拒絕流入的流量,除非與流出的流量相關(guān),非法流量采取拒絕操作 |
| drop | 拒絕流入的流量,除非與流出的流量相關(guān),非法流量采取丟棄操作 |
案例:在Linux系統(tǒng)中安裝httpd服務(wù)(Web服務(wù)),占用計算機的80端口
# yum install httpd -y # systemctl start httpd
以上操作只能使用Google瀏覽器、360瀏覽器或者Firefox火狐瀏覽器,一定不要使用IE
以上問題的原因在于:firewalld防火墻已經(jīng)把httpd(80端口)屏蔽了,所以沒有辦法訪問這臺服務(wù)器的80端口(httpd服務(wù))
臨時解決辦法:
# systemctl stop firewalld此時網(wǎng)頁就可以打開了
2、運行模式和永久模式
運行模式:此模式下,配置的防火墻策略立即生效,但是不寫入配置文件
永久模式:此模式下,配置的防火墻策略寫入配置文件,但是需要reload重新加載才能生效。
firewalld默認采用運行模式
五、防火墻設(shè)置
1、防火墻的啟動、停止以及查看運行狀態(tài)
查看運行狀態(tài)
# systemctl status firewalld
停止防火墻(學(xué)習(xí)環(huán)境任意操作,生產(chǎn)環(huán)境一定不要停止防火墻)
啟動防火墻
# systemctl start firewalld2、防火墻重啟與重載操作
重啟操作
# systemctl restart firewalld重載操作
# systemctl reload firewalld我們對防火墻的配置文件做了更改(永久模式),需要使用reload進行重載讓其立即生效
reload并沒有停止正在運行的防火墻服務(wù),只是在服務(wù)的基礎(chǔ)上變換了防火墻規(guī)則
3、把防火墻設(shè)置為開機啟動與開機不啟動
開機啟動
# systemctl enable firewalld開機不啟動
# systemctl disable firewalld六、firewalld防火墻規(guī)則
1、firewalld管理工具
基本語法:
# firewall-cmd [選項1] [選項2] [...N]2、查看防火墻默認的區(qū)域(zone)
# firewall-cmd --get-default-zone運行效果:
3、查看所有支持的區(qū)域(zones)
# firewall-cmd --get-zones運行結(jié)果:
為什么要有區(qū)域的概念:其實不同的區(qū)域就是不同的規(guī)則
4、 查看當(dāng)前區(qū)域的規(guī)則設(shè)置
# firewall-cmd --list-all5、查看所有區(qū)域的規(guī)則設(shè)置
# firewall-cmd --list-all-zones6、添加允許通過的服務(wù)或端口
1)通過服務(wù)的名稱添加規(guī)則
# firewall-cmd --zone=public --add-service=服務(wù)的名稱備注:服務(wù)必須存儲在/usr/lib/firewalld/services目錄中
案例:把http服務(wù)添加到防火墻的規(guī)則中,允許通過防火墻
# firewall-cmd --zone=public --add-service=http
把http服務(wù)從防火墻規(guī)則中移除,不允許其通過防火墻
2) 通過服務(wù)的端口號添加規(guī)則
# firewall-cmd --zone=public --add-port=端口號/tcp案例:把80/tcp添加到防火墻規(guī)則中,允許通過防火墻
# ss -naltp |grep httpd httpd :::80 # 允許80端口通過firewalld防火墻 # firewall-cmd --zone=public --add-port=80/tcp
案例:從firewalld防火墻中把80端口的規(guī)則移除掉
7、永久模式permanent
在Linux的新版防火墻firewalld中,其模式一共分為兩大類:運行模式(臨時模式)+ 永久模式。
運行模式:不會把規(guī)則保存到防火墻的配置文件中,設(shè)置完成后立即生效
永久模式:會把規(guī)則寫入到防火墻的配置文件中,但是其需要reload重載后才會立即生效
# 根據(jù)服務(wù)名稱添加規(guī)則(永久) # firewall-cmd --zone=public --add-service=服務(wù)名稱 --permanent # firewall-cmd --reload# 根據(jù)端口號添加規(guī)則(永久) # firewall-cmd --zone=public --add-port=服務(wù)占用的端口號 --permanent # firewall-cmd --reload案例:把80端口添加到firewalld防火墻規(guī)則中,要求永久生效
# firewall-cmd --zone=public --add-port=80/tcp --permanent # firewall-cmd --reload # firewall-cmd --list-all總結(jié)
以上是生活随笔為你收集整理的Linux中防火墙firewalld的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MySQL --- 函数大全3
- 下一篇: Kotlin for 循环写法整理