# ufw - Uncomplicated Firewall

Uncomplicated Firewall，簡稱 UFW，是 Ubuntu 系統上預設的防火牆組件。UFW 是為輕量化組態 iptables 而開發的一款工具。UFW 提供一個非常友好的介面用於建立基於 IPV4，IPV6的防火牆規則。UFW 在 Ubuntu 8.04 LTS 後的所有發行版中預設可用。

##### Tutorials

- [Linux Firewalls: Uncomplicated Firewall (ufw)](https://www.hackers-arise.com/post/linux-firewalls-uncomplicated-firewall-ufw)
- [Using Firewall With UFW in Ubuntu Linux \[Beginner's Guide\] (itsfoss.com)](https://itsfoss.com/ufw-ubuntu/)

##### Basic Commands

```bash
# Install
sudo apt-get install ufw

# Enable the UFW
sudo ufw enable
sudo ufw status

# Allow the services and ports
sudo ufw allow OpenSSH
sudo ufw allow 655
```

##### For Cloudflare Traffic  


Cloudflare [publishes the IP addresses of its servers online](https://www.cloudflare.com/ips/).

```bash
# For HTTP with IPv4 
sudo ufw allow from 173.245.48.0/20 to any port http
sudo ufw allow from 103.21.244.0/22 to any port http
sudo ufw allow from 103.22.200.0/22 to any port http
sudo ufw allow from 103.31.4.0/22 to any port http
sudo ufw allow from 141.101.64.0/18 to any port http
sudo ufw allow from 108.162.192.0/18 to any port http
sudo ufw allow from 190.93.240.0/20 to any port http
sudo ufw allow from 188.114.96.0/20 to any port http
sudo ufw allow from 197.234.240.0/22 to any port http
sudo ufw allow from 198.41.128.0/17 to any port http
sudo ufw allow from 162.158.0.0/15 to any port http
sudo ufw allow from 104.16.0.0/12 to any port http
sudo ufw allow from 172.64.0.0/13 to any port http
sudo ufw allow from 131.0.72.0/22 to any port http

# For HTTP with IPv6
sudo ufw allow from 2400:cb00::/32 to any port http
sudo ufw allow from 2606:4700::/32 to any port http
sudo ufw allow from 2803:f800::/32 to any port http
sudo ufw allow from 2405:b500::/32 to any port http
sudo ufw allow from 2405:8100::/32 to any port http
sudo ufw allow from 2a06:98c0::/29 to any port http
sudo ufw allow from 2c0f:f248::/32 to any port http

# For HTTPS with IPv4
sudo ufw allow from 173.245.48.0/20 to any port https
sudo ufw allow from 103.21.244.0/22 to any port https
sudo ufw allow from 103.22.200.0/22 to any port https
sudo ufw allow from 103.31.4.0/22 to any port https
sudo ufw allow from 141.101.64.0/18 to any port https
sudo ufw allow from 108.162.192.0/18 to any port https
sudo ufw allow from 190.93.240.0/20 to any port https
sudo ufw allow from 188.114.96.0/20 to any port https
sudo ufw allow from 197.234.240.0/22 to any port https
sudo ufw allow from 198.41.128.0/17 to any port https
sudo ufw allow from 162.158.0.0/15 to any port https
sudo ufw allow from 104.16.0.0/12 to any port https
sudo ufw allow from 172.64.0.0/13 to any port https
sudo ufw allow from 131.0.72.0/22 to any port https
```

##### Cheat Sheet

[![ufw_firewall.jpg](https://osslab.tw/uploads/images/gallery/2024-07/scaled-1680-/ufw-firewall.jpg)](https://osslab.tw/uploads/images/gallery/2024-07/ufw-firewall.jpg)