如何更改Mac OS X上的sshd监听地址?

这个问题类似于这里的问题,关于在Mac OSX上更改sshd端口 ,而不是改变端口号,我想改变我的Mac的ssh服务器的监听地址。 在/etc/sshd_config中设置它不起作用(就像它不适用于端口号)。

根据SSHD_CONFIG(5)man页:

在Mac OS X上,sdd由launchd(8)按需启动。 在launchd.plist(5)文件/System/Library/LaunchDaemons/ssh.plist中给出了sshd将要监听的地址的规范。 ListenAddress和Port的值仅在从命令行运行sshd时使用。 使用launchctl(1)卸载并加载plist文件。 可以通过更改plist文件中SockServiceName项的值来设置sshd侦听的端口号。

这个答案显示如何设置SockServiceName来更改端口号 ,但是我不清楚如何更改监听地址。

Deos谁知道如何?

答案与您所链接的相似。

在文件/System/Library/LaunchDaemons/ssh.plist ,您需要编辑Listeners项目。 IP地址可以用它们的密钥SockNodeName指定。 当你完成后,文件的Listeners部分应该看起来像这样:

  <key>Listeners</key> <dict> <key>SockNodeName</key> <string>10.10.1.70</string> ####This is the IP address you want <key>SockServiceName</key> <string>ssh</string> <key>Bonjour</key> <array> <string>ssh</string> <string>sftp-ssh</string> </array> </dict> 

一旦你完成,你通过做重新加载configuration

 sudo launchctl unload /System/Library/LaunchDaemons/ssh.plist sudo launchctl load /System/Library/LaunchDaemons/ssh.plist 

sshd有一个ListenAddressconfiguration选项。 我不知道OS / X是否有足够新的ssh版本。

我已经在一个较旧的Ubuntu服务器上使用这个来获取sshd来监听端口443,而Apache正在监听另一个IP上的相同端口。