1. 程式人生 > >啟動、關閉和設定ubuntu防火牆

啟動、關閉和設定ubuntu防火牆

sudo  ufw enable|disable

由於LInux原始的防火牆工具iptables過於繁瑣,所以ubuntu預設提供了一個基於iptable之上的防火牆工具ufw。

ubuntu 9.10預設的便是UFW防火牆,它已經支援介面操作了。在命令列執行ufw命令就可以看到提示的一系列可進行的操作。

最簡單的一個操作:sudo ufw status可檢查防火牆的狀態,我的返回的是:不活動

sudo ufw version防火牆版本:
ufw 0.29-4ubuntu1
Copyright 2008-2009 Canonical Ltd.

ubuntu 系統預設已安裝ufw.

1.安裝

sudo apt-get install ufw

2.啟用

sudo ufw enable

sudo ufw default deny

執行以上兩條命令後,開啟了防火牆,並在系統啟動時自動開啟。關閉所有外部對本機的訪問,但本機訪問外部正常。

3.開啟/禁用

sudo ufw allow|deny [service]

開啟或關閉某個埠,例如:

sudo ufw allow smtp 允許所有的外部IP訪問本機的25/tcp (smtp)埠

sudo ufw allow 22/tcp 允許所有的外部IP訪問本機的22/tcp (ssh)埠

sudo ufw allow 53 允許外部訪問53埠(tcp/udp)

sudo ufw allow from 192.168.1.100 允許此IP訪問所有的本機埠

sudo ufw allow proto udp 192.168.0.1 port 53 to 192.168.0.2 port 53

sudo ufw deny smtp 禁止外部訪問smtp服務

sudo ufw delete allow smtp 刪除上面建立的某條規則

4.檢視防火牆狀態

sudo ufw status

一般使用者,只需如下設定:

sudo apt-get install ufw

sudo ufw enable

sudo ufw default deny

以上三條命令已經足夠安全了,如果你需要開放某些服務,再使用sudo ufw allow開啟。

開啟/關閉防火牆 (預設設定是’disable’)

sudo  ufw enable|disable

轉換日誌狀態

sudo  ufw logging on|off

設定預設策略 (比如 “mostly open” vs “mostly closed”)

sudo  ufw default allow|deny

許 可或者遮蔽埠 (可以在“status” 中檢視到服務列表)。可以用“協議:埠”的方式指定一個存在於/etc/services中的服務名稱,也可以通過包的meta-data。 ‘allow’ 引數將把條目加入 /etc/ufw/maps ,而 ‘deny’ 則相反。基本語法如下:

sudo  ufw allow|deny [service]

顯示防火牆和埠的偵聽狀態,參見 /var/lib/ufw/maps。括號中的數字將不會被顯示出來。

sudo  ufw status

UFW 使用範例:

允許 53 埠

$ sudo ufw allow 53

禁用 53 埠

$ sudo ufw delete allow 53

允許 80 埠

$ sudo ufw allow 80/tcp

禁用 80 埠

$ sudo ufw delete allow 80/tcp

允許 smtp 埠

$ sudo ufw allow smtp

刪除 smtp 埠的許可

$ sudo ufw delete allow smtp

允許某特定 IP

$ sudo ufw allow from 192.168.254.254

刪除上面的規則

$ sudo ufw delete allow from 192.168.254.254

linux 2.4核心以後提供了一個非常優秀的防火牆工具:netfilter/iptables,他免費且功能強大,可以對流入、流出的資訊進行細化控制,它可以 實現防火牆、NAT(網路地址翻譯)和資料包的分割等功能。netfilter工作在核心內部,而iptables則是讓使用者定義規則集的表結構。

但是iptables的規則稍微有些“複雜”,因此ubuntu提供了ufw這個設定工具,以簡化iptables的某些設定,其後臺仍然是 iptables。ufw 即uncomplicated firewall的簡稱,一些複雜的設定還是要去iptables。

ufw相關的檔案和資料夾有:

/etc /ufw/:裡面是一些ufw的環境設定檔案,如 before.rules、after.rules、sysctl.conf、ufw.conf,及 for ip6 的 before6.rule 及 after6.rules。這些檔案一般按照預設的設定進行就ok。

若開啟ufw之 後,/etc/ufw/sysctl.conf會覆蓋預設的/etc/sysctl.conf檔案,若你原來的/etc/sysctl.conf做了修 改,啟動ufw後,若/etc/ufw/sysctl.conf中有新賦值,則會覆蓋/etc/sysctl.conf的,否則還以/etc /sysctl.conf為準。當然你可以通過修改/etc/default/ufw中的“IPT_SYSCTL=”條目來設定使用哪個 sysctrl.conf.

/var/lib/ufw/user.rules 這個檔案中是我們設定的一些防火牆規則,開啟大概就能看明白,有時我們可以直接修改這個檔案,不用使用命令來設定。修改後記得ufw reload重啟ufw使得新規則生效。

下面是ufw命令列的一些示例:

ufw enable/disable:開啟/關閉ufw

ufw status:檢視已經定義的ufw規則

ufw default allow/deny:外來訪問預設允許/拒絕

ufw allow/deny 20:允許/拒絕 訪問20埠,20後可跟/tcp或/udp,表示tcp或udp封包。

ufw allow/deny servicename:ufw從/etc/services中找到對應service的埠,進行過濾。

ufw allow proto tcp from 10.0.1.0/10 to 本機ip port 25:允許自10.0.1.0/10的tcp封包訪問本機的25埠。

ufw delete allow/deny 20:刪除以前定義的"允許/拒絕訪問20埠"的規則