Q:

How to enable IPv6 via miredo along with UFW?

Ubuntu provides some good information on how to enable UFW and on how to enable IPv6 with miredo:

https://wiki.ubuntu.com/UncomplicatedFirewall
https://wiki.ubuntu.com/IPv6

But what is missing is information on how to properly configure UFW to let Miredo work, as as soon as I enable UFW IPv6 stops working:
$ ufw disable
$ ping6 ipv6.google.com
PING ipv6.google.com(2a00:1450:8004::93) 56 data bytes
64 bytes from 2a00:1450:8004::93: icmp_seq=1 ttl=56 time=1886 ms
$ ufw enable
$ ping6 ipv6.google.com
PING ipv6.google.com(2a00:1450:8004::6a) 56 data bytes
ping: sendmsg: Operation not permitted

So how do I properly configure both Miredo and UFW together that basic IPv6 is working, but with all other incoming traffic being blocked?

A:

IPv6 is disabled by default in current released versions of ufw. To enable, edit /etc/default/ufw to have:
IPv6=yes

You will also need to reload the ruleset. On newer releases of Ubuntu: 
sudo ufw reload

On older releases of Ubuntu, you can restart with:
sudo /etc/init.d/ufw restart

A:

IPv6 support in UFW has to be explicitly enabled by editing /etc/default/ufw and changing IPv6=no to IPv6=yes.

