Я только что настроил SSH-сервер (OpenSSH) на компьютере с Windows 7 с помощью cygwin, и я пытаюсь подключиться к нему с помощью PuTTY на компьютере с Windows Vista, но у меня истекает время ожидания соединения. Я проверил сетевую активность на машине с Win 7 с помощью Wireshark и обнаружил, что получаю TCP SYN через порт 22 на машине с Win 7, но сервер ssh, похоже, не отвечает. Я проверил номер порта, который sshd настроен для использования, проверил правила брандмауэра и убедился, что я могу использовать ssh localhost (что я могу просто отлично). Я абсолютно не знаю, как решить эту проблему.
5 ответов
Возможно, у вас запущен брандмауэр Windows. Открыть: Панель управления -> Брандмауэр Windows -> Разрешить программу или функцию через брандмауэр Windows
Нажмите кнопку "Изменить настройки", затем кнопку «Разрешить другую программу ...». Вероятно, SSHD отсутствует в появившемся списке, поэтому нажмите кнопку «Обзор ...», чтобы найти двоичный файл, нажмите "Открыть", а затем "Добавить". Мой был в C:\cygwin\usr\sbin\sshd.exe
Где-то там вы можете решить, какие «Типы сетевых расположений ...» вы хотите использовать. Я оставил свой с проверенным Рядовым и публичным непроверенным. Теперь я могу войти удаленно.
Ваш sshd_config указывает ListenAddress как 0.0.0.0 или 127.0.0.1?
Если это 0.0.0.0 или только что закомментировано, то вы можете подключиться извне, то есть с другого компьютера.
Если это 127.0.0.1 (или любой другой номер 127.0.0.x ), то он только слушает LOCALHOST, и вы можете войти только с того же компьютера. Внешние машины запрещены.
После того, как я безрезультатно поработал с брандмауэром Windows, я обнаружил, что мне нужно разрешить подключения к моей собственной подсети в самом Cygwin через файл /etc/hosts.allow.
Эта строка (использующая мою подсеть) в качестве первого правила устранила проблему для меня.
ALL: 192.168.0.0/24: разрешить
Для меня проблема была в неправильном владении файлом /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
Убедитесь, что вы выиграли 7 Антивирус не блокирует порт 22. Кроме того, перейдите на панель службы Windows и найдите CYGWINsshd и включите его. установить вход в систему, чтобы найти и установить флажок.
Это решит проблему: user @ mymachine ~ $ net start sshd Произошла системная ошибка 1069.
Служба не запущена из-за ошибки входа в систему.