Я очень мало знаю о Windows, но мне приходится работать с сервером Windows. Единственный способ сделать это терпимым — использовать Cygwin и sshd
. Я установил и настроил sshd
, но не совсем понимаю, как он выполняет аутентификацию. И мне также не удается войти в систему, хотя он определенно работает на порту 22.
Я успешно использовал cygwin+ssh в прошлом (не имея большого понимания аутентификации). Оба раза мне удалось заставить его работать с локальными пользователями. На этот раз есть также целая система LDAP (не уверен, как она называется в Windows).
Есть /etc/passwd
файл, который я сгенерировал с помощью mkpasswd
. Есть ли простой способ добавить туда пользователя, с которым я могу войти?
Говорят о CYGWIN
переменной окружения, которую, как предполагается, устанавливают в C:\cygwin\Cygwin.bat
, но я не уверен, как она на что-то влияет:
set CYGWIN=binmode tty ntsec
Как сервер OpenSSH аутентифицируется под Windows/Cygwin? Как добавить одного базового локального пользователя для использования через SSH? Как добавить одного локального пользователя с правами администратора для использования через SSH?
решение1
sshd
использует тех же пользователей, что и Windows. Теперь необязательно /etc/passwd
используется для хранения альтернативного имени cygwin пользователя окна (тот же SSID) или для указания каталога HOME
или предпочтительной оболочки.
Метод аутентификации пользователя определяется в его собственном ~/.ssh/config
файле, как и в других системах Unix. Использование
/usr/bin/ssh-host-config
/usr/bin/ssh-user-config
для настройки сервера и пользователя. Обратите внимание, что все эти настройки теперь устарели.
set CYGWIN=binmode tty ntsec
Читатьhttps://cygwin.com/docs.htmlдля получения обновленной информации.