Linux/UNIX: Configure OpenSSH To Listen On an IPv6 Address

by on February 15, 2010 · 2 comments· LAST UPDATED February 15, 2010


How do I enable OpenSSH SSH server to listen on an IPv6 address under Linux or UNIX operating systems?

The ListenAddress directive in sshd_config file specifies the local addresses sshd should listen on. The syntax is as follows:

ListenAddress host
ListenAddress IPv4_addr:port
ListenAddress [IPv6_addr]:port

Edit /etc/ssh/sshd_config file, enter:
# vi /etc/ssh/sshd_config
To bind sshd to every IPv4 and IPv6 address on your server, enter:

ListenAddress ::

To bind sshd to every IPv6 2607:f0d0:1002:11::2 address on your server, enter:

ListenAddress [2607:f0d0:1002:11::2]

To bind sshd to every IPv6 2607:f0d0:1002:11::2 address and port 311 on your server, enter:

ListenAddress [2607:f0d0:1002:11::2]:311

From the sshd_man page:

If port is not specified, sshd will listen on the address and all prior Port options specified. The default is to listen on all local addresses. Multiple ListenAddress options are permitted. Additionally, any Port options must precede this option for non port qualified addresses.

Save and close the file. If you changed the port, update your iptables or pf firewall configuration. Finally, reload sshd:
# service sshd reload

Tweet itFacebook itG+ itDownload PDF versionFound an error/typo on this page?

{ 2 comments… read them below or add one }

1 Jan January 31, 2011 at 6:31 pm

You forgot to mention the sshd_config parameter AddressFamily any/inet/inet6 and accompanying commandline parameters -4 and -6 to further finegrain sshd usage.


2 pushapdant June 3, 2013 at 6:34 am

I am trying to setup ntpd for ipv6. /etc/ntd.conf is not liking ipv6 local link addresses at its server address. Even i tried using %interface but no luck. Have you tried including ipv6 local link address in your sshd_config ? Let me know if it works for you.



Leave a Comment

Tagged as: , , , , , , , , , , , , , ,

Previous Faq:

Next Faq: