ubuntu防火墻(三)——firewalld使用與講解

本文是Linux下,用ufw實現端口關閉、流量控制(二)

firewalld使用方式

firewalld 是一個動態管理防火墻的工具,主要用于 Linux 系統(包括 Ubuntu 和 CentOS 等)。它提供了一個基于區域(zones)和服務(services)的管理方式,使得防火墻的配置和管理更加靈活和易于使用。以下是如何使用 firewalld 管理防火墻的基本步驟和命令。

1. 安裝 firewalld

在大多數 Linux 發行版中,firewalld 默認是預裝的。如果沒有安裝,可以使用以下命令進行安裝:

# 在 Ubuntu 上
sudo apt install firewalld# 在 CentOS 上
sudo yum install firewalld

2. 啟動和啟用 firewalld

啟動 firewalld 服務并設置為開機自啟:

# 啟動 firewalld
sudo systemctl start firewalld# 設置開機自啟
sudo systemctl enable firewalld

3. 查看當前狀態

可以使用以下命令查看 firewalld 的狀態:

sudo systemctl status firewalld

4. 基本命令

  • 查看當前區域和規則
sudo firewall-cmd --get-active-zones
  • 查看特定區域的規則
sudo firewall-cmd --zone=public --list-all

5. 管理區域

firewalld 使用區域來定義不同的信任級別。可以使用以下命令添加、刪除或更改區域的規則。

  • 添加服務到區域
sudo firewall-cmd --zone=public --add-service=http --permanent
  • 移除服務
sudo firewall-cmd --zone=public --remove-service=http --permanent
  • 重新加載配置
sudo firewall-cmd --reload

6. 添加和移除端口

可以直接添加或移除特定端口:

  • 添加端口
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
  • 移除端口
sudo firewall-cmd --zone=public --remove-port=8080/tcp --permanent

7. 臨時和永久規則

  • 使用 --permanent 選項添加的規則在重啟后仍然有效。沒有 --permanent 選項的規則在重啟后會失效。

8. 查看幫助

可以使用以下命令查看 firewalld 的幫助信息:

firewall-cmd --help

總結

firewalld 提供了一種靈活且易于管理的方式來配置 Linux 防火墻。通過使用區域和服務的概念,用戶可以輕松地管理網絡流量和安全策略。使用 firewalld 時,確保定期檢查和更新防火墻規則,以保持系統的安全性。

問答

ubuntu中firewall-config和ufw會沖突嗎,可以一起管理防火墻嗎
在 Ubuntu 中,firewall-configufw(Uncomplicated Firewall)是兩種不同的防火墻管理工具,它們可以用來配置和管理防火墻規則,但它們之間可能會產生沖突。

1. UFW(Uncomplicated Firewall)

  • UFW 是一個用戶友好的命令行工具,旨在簡化 iptables 的使用。它提供了一個簡單的界面來管理防火墻規則。
  • UFW 默認情況下是禁用的,用戶可以通過命令行啟用或禁用它,并添加或刪除規則。

2. Firewall-config

  • firewall-config 是一個圖形用戶界面(GUI)工具,通常與 firewalld 一起使用。firewalld 是一個動態管理防火墻的工具,使用 zones 和服務來管理規則。
  • firewalldufw 都是基于 iptables,但它們的工作方式不同。

3. 沖突問題

  • 不建議同時使用:如果你同時啟用 ufwfirewalld,可能會導致沖突,因為它們都試圖管理 iptables 規則。一個工具的規則可能會覆蓋或干擾另一個工具的規則。
  • 選擇其一:建議選擇其中一個工具來管理防火墻。如果你選擇使用 ufw,請確保 firewalld 被禁用;如果你選擇使用 firewalld,請確保 ufw 被禁用。

4. 如何禁用

  • 如果你決定使用 ufw,可以禁用 firewalld

    sudo systemctl stop firewalld
    sudo systemctl disable firewalld
    
  • 如果你決定使用 firewalld,可以禁用 ufw

    sudo ufw disable
    

總結

在 Ubuntu 中,建議只使用一個防火墻管理工具(要么是 ufw,要么是 firewalld),以避免潛在的沖突和管理上的復雜性。選擇一個適合你需求的工具,并確保另一個工具被禁用。

sudo firewall-cmd --zone=public --add-service=http --permanent允許本地接受 外部http的服務?

是的,命令 sudo firewall-cmd --zone=public --add-service=http --permanent 的確允許本地系統接受來自外部的 HTTP 服務請求。具體來說,這個命令的作用如下:

  1. 允許 HTTP 流量:通過將 http 服務添加到 public 區域,防火墻將允許通過 HTTP 協議(通常是端口 80)進行的網絡流量。這意味著外部客戶端(如瀏覽器)可以向本地服務器發送 HTTP 請求。

  2. 適用于 public 區域public 區域通常用于不受信任的網絡環境(例如公共 Wi-Fi)。在這個區域中,默認情況下大多數流量是被阻止的,因此需要明確允許特定的服務(如 HTTP)。

  3. 永久性設置:使用 --permanent 選項表示這個更改是永久性的,即使在防火墻重啟或系統重啟后,HTTP 服務的允許規則仍然有效。

額外步驟

在執行此命令后,通常需要運行以下命令以使更改生效:

sudo firewall-cmd --reload

總結

通過執行該命令,你的本地系統將能夠接受來自外部的 HTTP 請求,允許用戶訪問在本地運行的 Web 服務器(如 Apache 或 Nginx)。確保在配置防火墻時,考慮到安全性,只有在需要時才允許外部訪問。

在ubuntu客戶機中,firewall-config建議在public區域允許http服務難道不會導致被攻擊嗎?

在 Ubuntu 客戶機中,允許 http 服務(端口 80)確實可能會增加被攻擊的風險,尤其是在 public 區域中。public 區域通常用于不受信任的網絡環境(如公共 Wi-Fi),在這種情況下,默認情況下大多數服務都是被阻止的。

風險分析

  1. 暴露 Web 服務:如果你在客戶端上允許 http 服務,這意味著任何人都可以嘗試訪問該服務。如果客戶端上沒有運行 Web 服務器,允許 http 服務可能沒有實際意義,但如果有 Web 服務器在運行,可能會面臨各種攻擊(如 DDoS、SQL 注入、跨站腳本等)。

  2. 不安全的連接:HTTP 是未加密的協議,數據在傳輸過程中可能被竊聽或篡改。使用 HTTPS(端口 443)可以提供加密的連接,增加安全性。

建議

  • 僅在需要時允許:如果你的客戶端不需要提供 Web 服務,建議不要在 public 區域中允許 http 服務。只在確實需要時才允許。

  • 使用 HTTPS:如果你需要提供 Web 服務,盡量使用 HTTPS 而不是 HTTP,以確保數據傳輸的安全性。

  • 限制訪問:如果可能,使用防火墻規則限制可以訪問該服務的 IP 地址范圍,或者使用 VPN 進行安全訪問。

  • 定期檢查和更新:定期檢查防火墻規則和系統安全性,確保沒有不必要的服務暴露在公共網絡上。

總結

public 區域中允許 http 服務確實可能增加被攻擊的風險,因此應謹慎處理。確保只在必要時允許服務,并采取適當的安全措施來保護系統。

建議默認允許端口

  • dhcpv6-client

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/62558.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/62558.shtml
英文地址,請注明出處:http://en.pswp.cn/web/62558.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Windows 安裝配置 RabbitMQ 詳解

博主介紹: 計算機科班人,全棧工程師,掌握C、C#、Java、Python、Android等主流編程語言,同時也熟練掌握mysql、oracle、sqlserver等主流數據庫,能夠為大家提供全方位的技術支持和交流。 工作五年,具有豐富的…

R語言的數據結構--矩陣

【圖書推薦】《R語言醫學數據分析實踐》-CSDN博客 《R語言醫學數據分析實踐 李丹 宋立桓 蔡偉祺 清華大學出版社9787302673484》【摘要 書評 試讀】- 京東圖書 (jd.com) R語言醫學數據分析實踐-R語言的數據結構-CSDN博客 矩陣是一個二維數組,矩陣中的元素都具有相…

JAVA基礎學習筆記_反射+動態代理

文章目錄 反射獲取class對象的三種方式獲取構造方法獲取成員變量獲取成員方法反射的作用 動態代理 反射 允許對成員變量\成員方法\構造方法的信息進行編程訪問 把類內的信息扒的干干凈凈,獲取解剖 獲取從class字節碼文件中獲取 獲取class對象的三種方式 public static void …

微信小程序一鍵復制功能

wx.setClipboardData(Object object) 設置系統剪貼板的內容。調用成功后,會彈出 toast 提示"內容已復制",持續 1.5s wx.setClipboardData({data: 你需要復制的內容,success (res) {wx.getClipboardData({success (res) {console.log(res.dat…

【Python網絡爬蟲 常見問題匯總】

目錄 1. 爬取圖片出現403解決辦法:設置請求頭中的Referer字段 2.關于干壞事的問題后續不定期更新 歡迎共同探討學習進步 1. 爬取圖片出現403 問題出自案例9,已解決。 【Python網絡爬蟲筆記】9- 抓取優美圖庫高清壁紙 當在爬取圖庫圖片時遇到 403 錯誤…

Linux: docker: 怎么修改 proc下的文件內容?

文章目錄 參考問題方法 1:在宿主機上修改參數方法 2:啟動容器時掛載 /proc 為可寫方法 3:通過 Kubernetes 調整配置方法 4:構建特權容器參考 https://docs.docker.com/security/for-admins/hardened-desktop/enhanced-container-isolation/features-benefits/#procfs–sys…

分布式 分布式事務 總結

前言 相關系列 《分布式 & 目錄》《分布式 & 分布式事務 & 總結》《分布式 & 分布式事務 & 問題》 分布式事務 所謂分布式事務是指操作范圍籠罩多個不同節點的事務。例如對于訂單節點&庫存節點而言,一次完整的交易需要同時調動兩個節…

STM32+模擬或硬件IIC+SHT20驅動問題:接上拉電阻、BUSY死鎖?

主要問題: 1,使用STM32F103C8T6,模擬IIC,SCL和SDA口配置為推挽輸出上拉,主要是SDA腳,每次都要輸出輸入模式重新配置,雖然也能通信,但不穩定,出錯率大; 2&…

【工業機器視覺】基于深度學習的水表盤讀數識別(3-數據標注與轉換)

【工業機器視覺】基于深度學習的儀表盤識讀(2)-CSDN博客 數據標注 標注擴展 Labelme 和 LabelImg 都是用于創建機器學習和計算機視覺項目所需標注數據的工具。它們都允許用戶通過圖形界面手動標注圖像,但各自有其特點和適用場景。 Labelme…

靜態路由與交換機配置實驗

1.建立網絡拓撲 添加2臺計算機,標簽名為PC0、PC1;添加2臺二層交換機2960,標簽名為S0、S1;添加2臺路由器2811,標簽名為R0、R1;交換機劃分的VLAN及端口根據如下拓撲圖,使用直通線、DCE串口線連接…

【Spark】Spark Join類型及Join實現方式

Spark Join類型 1. Inner Join (內連接) 示例:val result df1.join(df2, df1("id") df2("id"), "inner")執行邏輯:只返回那些在兩個表中都有匹配的行。 2. Left Join (左外連接) 示例:val result df1.jo…

socket UDP 環路回顯的服務端

基于socket通訊的方式&#xff0c;無論用http或者udp或者自定義的協議&#xff0c;程序結構都是類似的。這個以UDP協議為例簡要說明。 #include <stdio.h> // 標準輸入輸出庫 #include <sys/types.h> // 提供了一些數據類型&#xff0c;如ssize_t #include <sy…

Linux:network:添加ip的時候自動添加一個本地路由

文章目錄 問題問題 最近在看一個路由的問題,順便看內核代碼,發現在添加IP的時候,內核會自動添加一個local route。 net/ipv4/devinet.c inet_rtm_newaddr->__inet_insert_ifa /* Send message first, then call notifier.Notifier will trigger FIB update, so thatlis…

Magnet Player:一款基于Web的磁力鏈媒體播放器

Magnet Player&#xff1a;一款基于Web的磁力鏈媒體播放器 項目地址:https://gitcode.com/gh_mirrors/ma/magnet-player 是一個創新的開源項目&#xff0c;它允許用戶直接在瀏覽器中播放磁力鏈&#xff08;Magnet URI&#xff09;內容&#xff0c;無需下載或安裝任何桌面應用…

php:完整部署Grid++Report到php項目,并實現模板打印

一、下載Grid++Report軟件 路徑:開發者安裝包下載 - 銳浪報表工具 二、 安裝軟件 1、對下載的壓縮包運行內部的exe文件 2、選擇語言 3、 完成安裝引導 下一步即可 4、接收許可協議 點擊“我接受” 5、選擇安裝路徑 “瀏覽”選擇安裝路徑,點擊"安裝" 6、完成…

web安全攻防入門教程

Web安全攻防入門教程 Web安全攻防是指在Web應用程序的開發、部署和運行過程中&#xff0c;保護Web應用免受攻擊和惡意行為的技術與策略。這個領域不僅涉及防御措施的實現&#xff0c;還包括通過滲透測試、漏洞挖掘和模擬攻擊來識別潛在的安全問題。 本教程將帶你入門Web安全攻…

前端node環境安裝:nvm安裝詳細教程(安裝nvm、node、npm、cnpm、yarn及環境變量配置)

需求&#xff1a;在做前端開發的時候&#xff0c;有的時候 這個項目需要 node 14 那個項目需要 node 16&#xff0c;我們也不能卸載 安裝 。這豈不是很麻煩。這個時候 就需要 一個工具 來管理我們的 node 版本和 npm 版本。 下面就分享一個 nvm 工具 用來管理 node 版本。 這個…

Unity在運行狀態下,當物體Mesh網格發生變化時,如何讓MeshCollider碰撞體也隨之實時同步變化?

舊版源代碼地址&#xff1a;https://download.csdn.net/download/qq_41603955/90087225?spm1001.2014.3001.5501 舊版效果展示&#xff1a; 新版加上MeshCollider后的效果&#xff1a; 注意&#xff1a;在Unity中&#xff0c;當你動態地更改物體的Mesh時&#xff0c;通常期望…

OpenCV--特征匹配

OpenCV--特征匹配 代碼和筆記 代碼和筆記 import cv2 import numpy as np""" 特征匹配 """""" 暴力特征匹配&#xff1a;使用第一組&#xff08;第一幅圖&#xff09;中的一個特征描述子&#xff0c;使用一些距離計算與第二組中…

什么是自動化辦公

自動化辦公是指使用技術工具或軟件&#xff0c;通過預設流程或腳本&#xff0c;自動執行日常辦公任務&#xff0c;從而提升效率、減少錯誤、節約時間的辦公模式。它適用于需要重復性、規則明確的工作流程&#xff0c;讓員工將精力集中在更具創造性和戰略性的工作上。 自動化辦公…