Configuring sshd on OS X Lion
You cannot change the port sshd listens to by changing it in sshd_config since sshd is not yet running when the connection comes in. sshd is instantly launched by launched when a connection arrives. So you need to change the port in the appropriate launched item, or create another one to have a second port listening for incoming ssh connections.

You can find the correct file in /System/Library/LaunchDaemons/ssh.plist

Copy that to /Library/LaunchDaemons/ssh-alternative.plist and change the following part:

            &lt;key&gt;Listeners&lt;/key&gt;
            &lt;dict&gt;
                    &lt;key&gt;SockServiceName&lt;/key&gt;
                    &lt;string&gt;ssh-alt&lt;/string&gt;
            &lt;/dict&gt;


Notice that the SockServiceName has been changed from ssh to ssh-alt.
To make it work you need to add a service named ssh-alt to /etc/services
For example like this (to match your example) add this line:

ssh-alt         12345/tcp   # ssh-alt

You can then load your new ssh-alternative config with
sudo launchctl load -w /Library/LaunchDaemons/ssh-alt.plist

If you're running ipfw make sure to allow tcp connections to the new port. The Sharing.PrefPanel will only allow you to turn on and of the standard port 22 listening sshd (Unless you change ssh in /etc/services which I do not recommend).

In addition you can prevent this service to be advertised by Bonjour by removing the corresponding part from the launched item.

        &lt;key&gt;Bonjour&lt;/key&gt;
        &lt;array&gt;
            &lt;string&gt;ssh&lt;/string&gt;
            &lt;string&gt;sftp-ssh&lt;/string&gt;
        &lt;/array&gt;


If this was already running you need to unload and load the item again.