Как запустить sshd на порту 500 в High Sierra?

Они изменили некоторые вещи в более поздних версиях macOS, так что вы не можете просто редактировать, etc/ssh/sshd_configкак в Linux. Что мне ввести в оболочку, чтобы запустить sshd на порту 500 вместо 22?

Любое из этих решений работает? serverfault.com/questions/18761/…
есть ли способ просто как "символическая ссылка" на порт - передать все прямо для теста - вместо того, чтобы загружать .plist и т. д.?

Ответы (1)

Чтобы изменить порт ssh, вам нужно отредактировать демон запуска ssh хоста сервера ssh:

  • отключить SIP
  • открыть ssh.plist:

    sudo nano /System/Library/LaunchDaemons/ssh.plist 
    
  • измените <key>Sockets</key>(пример порта здесь: 10022) из

        ...
        <key>Sockets</key>
        <dict>
                <key>Listeners</key>
                <dict>
                        <key>SockServiceName</key>
                        <string>ssh</string>
                        <key>Bonjour</key>
                        <array>
                                <string>ssh</string>
                                <string>sftp-ssh</string>
                        </array>
                </dict>
        </dict>
        ...
    

    к

        ...
        <key>Sockets</key>
        <dict>
                <key>Listeners</key>
                <dict>
                        <key>SockServiceName</key>
                        <string>10022</string>
                        <key>Bonjour</key>
                        <array>
                                <string>10022</string>
                                <string>10022</string>
                        </array>
                </dict>
        </dict>
        ...
    
  • выгрузить и загрузить демон

    sudo launchctl unload /System/Library/LaunchDaemons/ssh.plist 
    sudo launchctl load /System/Library/LaunchDaemons/ssh.plist 
    
  • проверить демон ssh
  • включить SIP

Альтернативный, менее навязчивый подход — создать второй демон запуска ssh в /Library/LaunchDaemons/:

  • скопируйте ssh.plist

    sudo cp /System/Library/LaunchDaemons/ssh.plist /Library/LaunchDaemons/ssh2.plist 
    
  • изменить ssh2.plist:

    sudo nano /Library/LaunchDaemons/ssh2.plist 
    

    измените метку ключа на

    <key>Label</key>
    <string>com.openssh.sshd2</string>
    

    изменить ключ <key>Sockets</key>, как описано ранее

  • отключите SSH в Системных настройках > Общий доступ > Удаленный вход
  • загрузить демон запуска:

    sudo launchctl load -w /Library/LaunchDaemons/ssh2.plist 
    
  • с включенной строгой проверкой ключа в файле конфигурации ssh на клиентском хосте ssh вам может потребоваться удалить сервер ssh из файла known_hosts этого удаленного хоста.
  • получить доступ к серверу ssh с помощьюssh user@IP -p <port>
о, брат..... вот почему я остался на 10.12 до прошлой недели. Я знал, что как только Apple уберет разъем 3,5 мм, все будет кончено, как жаль.