Как включить SSH на Mac из командной строки
Оглавление:
- Включите SSH на Mac из командной строки с помощью systemsetup
- Отключить SSH в Mac OS с помощью настройки системы
Все современные компьютеры Mac под управлением macOS или Mac OS X поставляются с предустановленным SSH по умолчанию, но демон SSH (Secure Shell) также по умолчанию отключен. Опытные пользователи Mac могут оценить, что возможность включения SSH и отключения SSH доступна полностью из командной строки Mac OS, что позволяет простым способом разрешать или запрещать удаленные подключения к компьютеру.Нет необходимости в загрузке, загрузке или компиляции kext, чтобы включить SSH из терминала на любом Mac, вам просто нужно выполнить команду настройки системы, как мы покажем в этом руководстве.
Небольшое примечание; это руководство применимо ко всем версиям macOS и Mac OS X, но на самом деле оно предназначено для более продвинутых пользователей, проводящих много времени в Терминале. Если вы хотите включать и выключать SSH и избегать использования командной строки, вы можете сделать это, включив удаленный вход на панели настроек общего доступа на Mac, или остановить сервер, не устанавливая флажок. Если вы не используете ssh регулярно, нет причин включать ssh-сервер на Mac.
Как проверить, включен ли удаленный вход SSH в Mac OS через терминал
Хотите проверить текущий статус SSH на Mac? Используя командную строку systemsetup, мы можем быстро определить, включены ли SSH и удаленный вход в настоящее время на любом Mac:
sudo systemsetup -getremotelogin
Если в данный момент включен удаленный вход и SSH, в команде и отчете будет указано «Удаленный вход: вкл.», тогда как, если SSH отключен и в состоянии macOS по умолчанию, будет указано «Удаленный вход: выключен». .
Включите SSH на Mac из командной строки с помощью systemsetup
Чтобы быстро включить SSH-сервер и разрешить входящие ssh-подключения к текущему Mac, используйте флаг -setremotelogin с настройкой системы следующим образом:
sudo systemsetup -setremotelogin on
sudo необходимо, поскольку для команды systemsetup требуются права администратора, точно так же, как при включении удаленного входа в настройках общего доступа на Mac для включения защищенных серверов оболочки.
Нет подтверждения или сообщения о том, что удаленный вход и SSH включены, но вы можете использовать вышеупомянутый флаг -getmorelogin, чтобы проверить и убедиться, что сервер SSH действительно работает.И да, использование -setremotelogin применимо к включению серверов ssh и sftp на Mac.
После включения ssh любая учетная запись пользователя или человек, у которого есть логин на текущем Mac, могут получить к нему удаленный доступ с помощью команды ssh, направленной на IP-адрес Mac, например:
После подключения пользователь получит удаленный доступ к компьютеру через командную строку, а если у него есть учетная запись администратора или пароль администратора, он также получит полный доступ к удаленному администрированию.
Отключить SSH в Mac OS с помощью настройки системы
Если вы хотите отключить SSH-серверы из командной строки и тем самым предотвратить удаленные подключения, просто переключите «вкл» на «выкл» с помощью флага -setremotelogin в systemsetup следующим образом:
sudo systemsetup -setremotelogin off
Опять же, sudo необходимо для отключения SSH и отключения серверов ssh и sftp.
При успешном выполнении команды вас спросят: «Вы действительно хотите отключить удаленный вход в систему? Если вы это сделаете, вы потеряете это соединение и сможете снова включить его только локально на сервере (да/нет)?» поэтому введите «да» для подтверждения, что отключит SSH, а также отключит все активные SSH-соединения с рассматриваемым Mac. Если вы не хотите вводить да/нет, возможно, для включения в сценарий установки или иным образом, вы можете использовать флаг -f, чтобы обойти вопрос следующим образом:
sudo systemsetup -f -setremotelogin off
Аналогичным образом вы также можете использовать -f, чтобы пропустить любые подсказки относительно включения SSH.
systemsetup -f -setremotelogin on
Обратите внимание, что независимо от того, отключаете ли вы SSH или включаете SSH из командной строки, настройка панели системных предпочтений удаленного входа в Mac OS X GUI также будет соответствующим образом изменена, чтобы отразить это изменение.