I am quite enough familiar with iptables and I find iptables -L -v
easy enough to read. Backuping is easy and I am happy with that.
However in recent versions of Ubuntu there is ufw that quite pollute iptables. Insead of a clean list of rules I have plenty of not easy to read rules:
$ iptables -L -v
Chain INPUT (policy DROP 6114 packets, 331K bytes)
pkts bytes target prot opt in out source destination
131K 76M ufw-before-logging-input all -- any any anywhere anywhere
131K 76M ufw-before-input all -- any any anywhere anywhere
6618 368K ufw-after-input all -- any any anywhere anywhere
6191 346K ufw-after-logging-input all -- any any anywhere anywhere
6191 346K ufw-reject-input all -- any any anywhere anywhere
6191 346K ufw-track-input all -- any any anywhere anywhere
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
390K 324M ufw-before-logging-forward all -- any any anywhere anywhere
390K 324M ufw-before-forward all -- any any anywhere anywhere
4 2160 ufw-after-forward all -- any any anywhere anywhere
4 2160 ufw-after-logging-forward all -- any any anywhere anywhere
4 2160 ufw-reject-forward all -- any any anywhere anywhere
4 2160 ufw-track-forward all -- any any anywhere anywhere
Chain OUTPUT (policy ACCEPT 1 packets, 52 bytes)
pkts bytes target prot opt in out source destination
326K 317M ufw-before-logging-output all -- any any anywhere anywhere
326K 317M ufw-before-output all -- any any anywhere anywhere
164 14960 ufw-after-output all -- any any anywhere anywhere
164 14960 ufw-after-logging-output all -- any any anywhere anywhere
164 14960 ufw-reject-output all -- any any anywhere anywhere
164 14960 ufw-track-output all -- any any anywhere anywhere
...
From this perspective. I don't really understand the purpose of ufw. It seems to add complexity over iptables with no real advantages.
Am I wrong?