原始的防火牆:iptables,過於繁瑣,ubuntu系統提供了基於iptables之上的防火牆工具 ufw。
ufw 支持圖形化工具;
1、安裝
ubuntu 20.04 及以上版本 默認安裝ufw(Uncomplicated Firewall),ufw是一款輕量化的工具,主要用於對輸入輸出的流量進行監控。
如果ubuntu沒有安裝ufw(多出現於 最小化安裝 系統的情況),請用下面的命令安裝ufw工具:
apt install ufw -y
正常情況下安裝以後應該默認是禁止狀態的,輸入 ufw status verbose
命令可以看到如下界面:
ufw status verbose
Status: inactive
這表示防火牆沒有開啓,下面啓用防火牆。
inactive:不活動的;不活躍的;怠惰的;閒置的
active:活躍的,已啓用的
2、啓動
ufw enable
ufw default deny
運行以上兩條命令後,開啓了防火牆,並在系統啓動時自動開啓。再次輸入 ufw status verbose
,可以看到如下界面:
root@ysf:~# ufw status verbose
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip
3、開啓/禁止 服務
3.1、如果需要開放某些服務,使用 ufw allow 命令開啓:
ufw allow | deny [service]
3.2、打開或關閉某個端口,例如:
ufw allow 53 # 允許外部訪問53端口(tcp/udp)
ufw allow 3690 # 允許外部訪問3690端口(svn)
ufw allow from 192.168.1.111 # 允許此IP訪問所有的本機端口
ufw allow proto tcp from 192.168.0.0/24 to any port 22 # 允許指定的IP段訪問特定端口
ufw delete allow smtp # 刪除上面建立的某條規則,比如刪除svn端口就是 ufw delete allow 3690
4、開啓/關閉 防火牆
ufw enable | disable
5、示例
ufw status 查看已經定義的ufw規則
ufw default allow/deny 外來訪問默認 允許/拒絕
ufw allow/deny 20 允許/拒絕 訪問20端口,20後可跟 /tcp 或 /udp,表示tcp或udp封包。
sudo ufw allow proto tcp from 192.168.0.0/24 to any port 22 允許自192.168.0.0/24的tcp封包訪問本機的22端口。
ufw delete allow/deny 20 刪除以前定義的"允許/拒絕 訪問20端口"的規則