I've got IPv6 running between several of my hosts around the world, using freely available tunnel brokers.
For my Linode, I have debian unstable running on it. I got myself a tunnel from Hurricane Electric, and set it up to my Linode box. You can get a free ipv6 tunnel from
http://tunnelbroker.net/
Once you've gotten your tunnel setup (you need to register and then supply your Linode ip address), you can configure it on the linux box. For debian, I needed to install the iproute, iputils-ping and iputils-tracepath packages. Then just run the following to get it talking:
#
# Tunnel from HE -
www.tunnelbroker.net
#
ip tunnel add sixbone mode sit remote 64.71.128.82 local =your=linode=ipv4=ip= ttl 255
ip link set sixbone up
ip addr add =your=ipv6=address=/127 dev sixbone
ip route add ::/0 dev sixbone
Traceroute and ping to known ipv6 sites should confirm it all up.
Debian probably has a more correct way of configuring ipv6, but I'm old school and still configure network interfaces by hand.