14

Я только что настроил SSH-сервер (OpenSSH) на компьютере с Windows 7 с помощью cygwin, и я пытаюсь подключиться к нему с помощью PuTTY на компьютере с Windows Vista, но у меня истекает время ожидания соединения. Я проверил сетевую активность на машине с Win 7 с помощью Wireshark и обнаружил, что получаю TCP SYN через порт 22 на машине с Win 7, но сервер ssh, похоже, не отвечает. Я проверил номер порта, который sshd настроен для использования, проверил правила брандмауэра и убедился, что я могу использовать ssh localhost (что я могу просто отлично). Я абсолютно не знаю, как решить эту проблему.

5 ответов5

23

Возможно, у вас запущен брандмауэр Windows. Открыть: Панель управления -> Брандмауэр Windows -> Разрешить программу или функцию через брандмауэр Windows

Нажмите кнопку "Изменить настройки", затем кнопку «Разрешить другую программу ...». Вероятно, SSHD отсутствует в появившемся списке, поэтому нажмите кнопку «Обзор ...», чтобы найти двоичный файл, нажмите "Открыть", а затем "Добавить". Мой был в C:\cygwin\usr\sbin\sshd.exe

Где-то там вы можете решить, какие «Типы сетевых расположений ...» вы хотите использовать. Я оставил свой с проверенным Рядовым и публичным непроверенным. Теперь я могу войти удаленно.

5

Ваш sshd_config указывает ListenAddress как 0.0.0.0 или 127.0.0.1?

Если это 0.0.0.0 или только что закомментировано, то вы можете подключиться извне, то есть с другого компьютера.

Если это 127.0.0.1 (или любой другой номер 127.0.0.x ), то он только слушает LOCALHOST, и вы можете войти только с того же компьютера. Внешние машины запрещены.

1

После того, как я безрезультатно поработал с брандмауэром Windows, я обнаружил, что мне нужно разрешить подключения к моей собственной подсети в самом Cygwin через файл /etc/hosts.allow.

Эта строка (использующая мою подсеть) в качестве первого правила устранила проблему для меня.

ALL: 192.168.0.0/24: разрешить

1

Для меня проблема была в неправильном владении файлом /var/empty . Проблема стала очевидной после перевода sshd в режим отладки с помощью /usr/sbin/sshd.exe -D -dd . Я должен был исправить это с:

chown [user]:[group] /var/empty

Пользователь и группа были взяты из каталога ls -la /var (только для других файлов). См. Дополнительную информацию здесь: https://docs.oracle.com/cd/E24628_01/install.121/e22624/preinstall_req_cygwin_ssh.htm#EMBSC340

0

Убедитесь, что вы выиграли 7 Антивирус не блокирует порт 22. Кроме того, перейдите на панель службы Windows и найдите CYGWINsshd и включите его. установить вход в систему, чтобы найти и установить флажок.

Это решит проблему: user @ mymachine ~ $ net start sshd Произошла системная ошибка 1069.

Служба не запущена из-за ошибки входа в систему.

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