經過編寫防火牆規則,能夠拒絕對服務器的某些訪問請求。 Ubuntu Server 使用一個叫 Uncomplicated FireWall(ufw)的防火牆管理工具,它其實是一個 iptable 的管理工具。iptable 根據系統管理員編寫的一系列規則篩選網絡數據包。對於初學者來講,iptable 可能比較複雜,因此 UFW 將其進行了簡化。使用 UFW 能夠幫助您加強服務器;可是若是您真的對服務器安全感興趣,學習如何爲 iptable 編寫規則使您能夠更好地調整服務器的安全級別。shell
要使用ufw 必須安裝它。可使用命令 sudo apt-get install ufw進行安裝。 下面介紹utf的常見用法ubuntu
1. 啓用/禁止/從新加載防火牆安全
ufw [--dry-run] enable | disable | reload
命令[--試運行]啓用|禁用|從新加載服務器
ubuntu會記住防火牆的狀態,重啓後會自動啓用或禁止. 網絡
2. 默認 容許/阻止/拒絕 入站或出站的數據包 ssh
ufw [--dry-run] default allow|deny|reject [in|out on INTERFACE] [proto protocol] [from ADDRESS [port PORT]] [to ADDRESS [port PORT]]tcp
命令[--試運行]默認 容許|阻止|拒絕 [進|出 基於「什麼網絡設備」] [協議 「協議」] [來源 「地址」 [端口 「端口」]] [目標 「地址」 [端口 「端口」]]工具
注:reject讓訪問者知道數據被拒絕(回饋拒絕信息)。deny則直接丟棄訪問數據,訪問者不知道是訪問被拒絕仍是不存在該主機。學習
舉例:spa
sudo ufw allow 65000 #容許外部IP訪問本機65000端口 sudo ufw deny 65000 #阻止外部IP訪問本機65000端口 sudo ufw alow 65000/tcp #容許外部IP經過tcp協議訪問本機65000端口 sudo ufw deny http # 阻止全部http通訊 sudo ufw allow proto tcp from 192.168.1.30 to 192.168.1.5 port 65000 # 容許IP爲192.168.1.30的機器經過TCP協議訪問IP爲192.128.1.5的機器的65000端口 sudo ufw default allow/deny/reject # 除非有例外, 不然 容許/阻止/拒絕全部外部對本機的訪問,但本機訪問外部正常
3. 檢查當前 UFW 運行的規則
ufw [--dry-run] status [verbose|numbered]
4. 插入或刪除某個規則
sudo ufw delete 1 # 刪除sudo ufw status列出的第1條規則 sudo ufw delete allow http # 刪除容許外部IP訪問http服務的規則 sudo ufw insert 1 allow ssh # 在第1條規則前插入一條新都規則
5. 復位
ufw [--dry-run] reset
命令[--試運行]復位
6. 開啓或關閉日誌,定義日誌級別
ufw [--dry-run] logging on | off | LEVEL
命令[--試運行]日誌 開啓|關閉|「級別」
7 查看防火牆的狀態
sudo ufw status
通常用戶,只需以下設置:
sudo apt-get install ufw
sudo ufw enable
sudo default deny
以上三條命令已經足夠安全了,若是你須要開放某些服務,再使用sudo ufw allow開啓。