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