When I want to run ssh on more than one port, e.g. 22 and 80, I start sshd and I don't receive warnings or errors if there is something like apache/nginx listening on the port 80, the result is sshd active only on the 22. amd64box ~ # grep Port /etc/ssh/sshd_config Port 80 Port 22 amd64box ~ # netstat -tupan | grep "\:80" tcp 0 0 192.168.1.3:80 0.0.0.0:* LISTEN 2027/nginx: master amd64box ~ # /etc/init.d/sshd restart * Stopping sshd ... [ ok ] * Starting sshd ... [ ok ] amd64box ~ # netstat -tupan | grep ssh | grep LISTEN tcp 0 0 192.168.1.3:22 0.0.0.0:* LISTEN 2386/sshd
This probably needs to go upstream. The sshd daemon successfully starts even when it can't bind to both ports, so the init script has no way of knowing that your config wasn't 100% respected -- the daemon just looks "up".
i can't see us doing anything custom on the Gentoo side