3

Я перешел на Mountain Lion и что-то странное происходит с доступом к моему компьютеру через SSH. Я могу подключить SSH к другим компьютерам с моего компьютера, но пока не могу подключиться к ноутбуку с других компьютеров через SSH.

  • Я включил удаленный доступ
  • Я пробовал решение изменить ssh_config и sshd_config в папке /etc
  • Я отключил брандмауэры
  • Я попробовал этот ответ ; говорит com.openssh.sshd: Already loaded

Тем не менее эта проблема сохраняется. Как я могу это исправить?

Причины, по которым мне нужно это исправить, в основном для безопасного копирования через ssh. Трудно запомнить realpath к файлу в облаке и получить к нему доступ из своего ящика; хотя это возможно и я выжил с этой новой аномалией Горного Льва. Но было бы легче иметь возможность SSH из коробки, в которой находится файл на моем ноутбуке.

Заранее спасибо за помощь!

2 ответа2

9

Конфигурация OS X

Системные настройки → Общий доступ -> включить "Удаленный вход"

Если вы не хотите ограничивать доступ по ssh учетной записью, выберите "Разрешить доступ" для "Все пользователи".

Сопоставление портов маршрутизатора

Ответ Кента Грейвса на самом деле напоминает мне одну вещь.

Вы подключаетесь за роутером? Если это так, вы правильно настроили переадресацию портов раньше. Если ваш IP-адрес изменился (или стал назначенным DHCP) после обновления Mountain Lion, переадресация портов больше не будет работать. Убедитесь, что ваша OS X использует статический IP-адрес, затем либо обновите правила переадресации портов на маршрутизаторе, либо измените IP-адрес компьютера, как раньше.

Обратный туннель SSH - Решите проблему SSH, не устанавливая проблему

  1. тестирование

    Если вы можете сделать следующее на вашем OS X box, то это решение будет работать:

    ssh <osx-user>@localhost
    
  2. Подключение к облачной машине

    При использовании SSH для подключения к облачному компьютеру, используйте опцию -R для настройки обратного туннеля ssh обратно на локальный компьютер:

    ssh <username>@<cloud-machine> -R <interface-IP:port on cloud machine>:localhost:22
    

    Например, подключитесь к облачному компьютеру с помощью следующей команды:

    ssh user@cloud-machine -R localhost:2000:localhost:22
    

    Это устанавливает туннель SSH, от порта 2000 облачной машины до порта 22 машины OS X, который является портом ssh-сервера.

  3. SCP/SSH возвращается к OS X через туннель

    Пример 1 SCP: скопировать с OS X box на облачный компьютер:

    scp -P 2000 <osx-user>@localhost:/path/* /var/www/
    

    Пример 2 SCP: скопировать с облачного компьютера в окно OS X:

    scp -P 2000 /var/www/* <osx-user>@localhost:/path/
    

    SSH возвращается к машине OS X с помощью следующей команды:

    ssh -p 2000 <osx-user>@localhost
    

    Обратите внимание, что SCP использует прописные буквы -P для указания порта, а SSH использует строчные буквы -p .

0

Я не знаком с OS X, но суть одна и та же.

Вы уверены, что ssh работает как служба, даже если она включена?

Попробуйте запустить OS X эквивалент netstat, чтобы увидеть, прослушивает ли порт 22, если нет, то есть проблема со службой.

Во-вторых, вы абсолютно уверены, что у вас есть только один межсетевой экран? Даже если ваш брандмауэр хоста разрешает порт 22, если вы пытаетесь использовать SSH вне локальной сети, ваш шлюз или маршрутизатор, вероятно, также блокирует SSH, поскольку он также имеет брандмауэр. Вам нужно будет войти в настройки вашего маршрутизатора и разрешить доступ к порту 22 в вашей сети.

Даже если ваш брандмауэр выключен и разрешает подключения к порту 22. У вас должна быть служба, прослушивающая этот порт, чтобы создать соединение.

Кроме того, где находится компьютер, с которым вы пытаетесь создать соединение SSH? Это в локальной сети, или вы подключены к этой машине через Интернет?

Я предполагаю, что вы использовали SSH раньше, но просто чтобы проверить, какую команду вы используете или какой SSH-клиент вы используете для создания соединения? Формат должен быть:

ssh <username>@<ip_address or hostname>

Независимо от того, какое имя пользователя вы используете для подключения к вашей машине, SSH-сервер на этой машине должен быть настроен так, чтобы этому пользователю разрешалось подключаться, если у вас не установлено значение Все пользователи, как упоминал другой парень.

Вот пошаговое руководство, специально для OS X Mountain Lion: http://www.ernieflores.net/osx-page-2/enable-remote-login-to-start-ssh-server-in-osx/

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .