I run CherryPy on port 8080 with no root privilege. On the server, I also need to support access to port 80.
Thus, I create a file named under /etc/network/if-up.d.
# cat > /etc/network/if-up.d/system-iptables #!/bin/sh if [ $METHOD = "loopback" ]; then iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080 fi ^D # chmod +x /etc/network/if-up.d/system-iptables