После того, как openSSH / Cygwin установлен и работает в Windows 7, кажется, что любой пользователь, которого вы используете для ssh в окне Windows 7, получает обычные права пользователя. То есть пользователь не может выполнять привилегированные команды, даже если он является администратором.
Есть ли способ для пользователя Cygwin SSH получить повышенные привилегии? (например, "sudo") Или это ограничение Cygwin в его нынешнем виде? (например, как пинг Cygwin)
Соответствующая техническая информация:
Если вы входите в sshd с аутентификацией по паролю, вы одновременно аутентифицируетесь в Windows, и вам должны быть предоставлены права администратора вашей учетной записи. Если вы входите в систему с аутентификацией с открытым ключом, тогда sshd завершает проверку подлинности Windows, и у вас всегда будут только стандартные права пользователя.
Для получения дополнительной информации см. Коринна ответила на этот вопрос с 2004 г. См. также недавнюю ветку в списке рассылки Cygwin о права администратора по ssh.
Это старый пост, но я все равно дам ответ, так как недавно у меня возникла эта проблема и я пришел к этому сообщению, это может быть кому-то полезно.
Как ответил Эндрю Шульман, вам нужно будет войти в систему с пользователем / паролем, чтобы получить полные привилегии учетной записи Windows (например: права администратора, если они есть у пользователя). Однако, если вы по-прежнему хотите использовать аутентификацию с открытым ключом из соображений безопасности (лучшая безопасность, чем автономная аутентификация по паролю), решение может быть следующим:
Поскольку ssh поддерживает использование более одного метода аутентификации, соединенных один за другим (https://security.stackexchange.com/questions/17931/possible-to-use-both-private-key-and-password-authentication-for-ssh-login) вы можете включить как аутентификацию открытого ключа, так и аутентификацию пароля:
Цель аутентификации с открытым ключом - повысить безопасность.
Цель аутентификации пароля - «заставить» службу sshd создать сеанс Windows с вашими полными привилегиями, предоставив ему user / pass.
Чтобы включить это, вам необходимо настроить следующие параметры в файле sshd_config на сервере с установленным cygwin:
AuthenticationMethods "publickey,password"
Обратите внимание, что вам также необходимо включить следующее:
PasswordAuthentication yes
PubkeyAuthentication yes
После изменения файла конфигурации и перезапуска службы sshd вам понадобится как закрытый ключ, так и пароль пользователя для входа в систему с помощью ssh из клиента. Вам будут предоставлены полные привилегии Windows для указанной учетной записи.
Небольшое неудобство заключается в том, что в дополнение к закрытому ключу вам нужно будет указывать пароль пользователя каждый раз, когда вы хотите войти в систему с помощью ssh, но я думаю, что это все еще хорошо для большей безопасности и возможности иметь полные привилегии. вашей учетной записи Windows.
Проверьте freeSSHd, Я думаю, это позволит вам Доступ администратора.
Но здесь вы не будете авторизоваться через Cygwin.