让docker走ufw防火墙
使用场景
当docker上某些服务需要通过反向代理连接的时候,你会发现无论ufw根本拦不住docker的端口映射...

docker
解决方法
root权限下执行以下命令:
修改 etc/ufw/after.rules
下的ufw配置文件
cp /etc/ufw/after.rules /etc/ufw/after.rules.bak #备份原始文件
cat <<'TEXT' >> /etc/ufw/after.rules
# BEGIN DOCKER
*filter
:ufw-user-forward - [0:0]
:ufw-docker-logging-deny - [0:0]
:DOCKER-USER - [0:0]
-A DOCKER-USER -j ufw-user-forward
-A DOCKER-USER -j RETURN -s 10.0.0.0/8
-A DOCKER-USER -j RETURN -s 172.16.0.0/12
-A DOCKER-USER -j RETURN -s 192.168.0.0/16
-A DOCKER-USER -p udp -m udp --sport 53 --dport 1024:65535 -j RETURN
-A DOCKER-USER -j RETURN
COMMIT
# END DOCKER
TEXT
重启ufw以生效
systemctl restart ufw