在Ubuntu系統中,使用UFW(Uncomplicated Firewall)來配置防火墻規則是一種常見的方法。以下是如何配置UFW以允許或拒絕特定流量通過Nginx服務器的步驟:
安裝UFW(如果尚未安裝):
sudo apt update
sudo apt install ufw
啟用UFW:
sudo ufw enable
啟用UFW后,所有傳入的連接都將被拒絕,除非明確允許。
允許HTTP和HTTPS流量: 默認情況下,UFW允許SSH連接。你需要允許HTTP(端口80)和HTTPS(端口443)流量。
sudo ufw allow 'Nginx Full'
或者你可以手動添加規則:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
檢查UFW狀態: 你可以查看UFW的狀態以及當前的規則:
sudo ufw status
刪除規則: 如果你需要刪除某個規則,可以使用以下命令:
sudo ufw delete allow 80/tcp
重新加載UFW: 如果你對規則進行了更改,需要重新加載UFW以使更改生效:
sudo ufw reload
配置默認策略: 你可以設置默認的入站和出站策略。例如,設置為拒絕所有入站連接,只允許SSH連接:
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw default allow ssh
日志記錄: 如果你需要記錄被拒絕的連接,可以啟用日志記錄:
sudo ufw logging on
請注意,UFW的配置文件通常位于/etc/ufw/
目錄下,主要配置文件是/etc/ufw/user.rules
和/etc/ufw/user6.rules
。如果你需要更復雜的配置,可以直接編輯這些文件。
此外,確保你的Nginx服務器已經正確安裝并運行,并且監聽在正確的端口上(通常是80和443)。你可以使用以下命令檢查Nginx的狀態:
sudo systemctl status nginx
通過以上步驟,你應該能夠成功配置UFW以保護你的Nginx服務器。