![Переадресация агента ssh в Windows 10](https://rvso.com/image/1595498/%D0%9F%D0%B5%D1%80%D0%B5%D0%B0%D0%B4%D1%80%D0%B5%D1%81%D0%B0%D1%86%D0%B8%D1%8F%20%D0%B0%D0%B3%D0%B5%D0%BD%D1%82%D0%B0%20ssh%20%D0%B2%20Windows%2010.png)
Когда я подключаюсь по SSH с моего клиента macOS с AgentForwarding
включенным ssh к хосту Windows 10, я не могу получить доступ к ключам клиента на хосте.
Встроенный сервер OpenSSH на хосте Windows включен AllowAgentForwarding
.
Кроме того, переадресация агента работает правильно, когда я подключаюсь по ssh к другим хостам (не Windows).
Есть ли какой-то особый трюк, который я упускаю, чтобы заставить работать переадресацию агентов на хосте Windows, или что может быть причиной того, что она не работает?
По крайней мере, журнал отладки указывает на то, что он пытается подключить агента:
debug1: active: key options: agent-forwarding port-forwarding pty user-rc x11-forwarding
debug1: server_input_channel_req: channel 0 request auth-agent [email protected] reply 0
debug1: session_input_channel_req: session 0 req [email protected]
решение1
Переадресация агента SSH не была включена в первоначальный объем работ по проекту Windows OpenSSH (см.Объем проектавики-страница, где эта функция называется «Переадресация аутентификации»).
Однако, похоже, эта функция будет реализована в будущем выпуске.vСледующийВеха включает в себя несколько ссылок на проблемы с переадресацией агентов:
решение2
По крайней мере в Windows 11 доступна переадресация агента SSH, но для этого необходимо запустить агент аутентификации SSH:
- Откройте приложение «Службы» из меню «Пуск».
- Прокрутите страницу вниз до пункта «Агент аутентификации OpenSSH».
- Щелкните правой кнопкой мыши службу, чтобы открыть ее «Свойства». Измените ее «Тип запуска» на «Автоматический (отложенный запуск)». Нажмите «ОК», чтобы сохранить изменения.
- Щелкните правой кнопкой мыши по службе и выберите «Запустить» в контекстном меню.
решение3
SSH-Agent по умолчанию отключен в Windows.
От[Управление ключами OpenSSH][1] статья
# By default the ssh-agent service is disabled. Allow it to be manually started for the next step to work.
# Make sure you're running [Powershell] as an Administrator.
Get-Service ssh-agent | Set-Service -StartupType Manual
# Start the service
Start-Service ssh-agent
# This should return a status of Running
Get-Service ssh-agent
# Now load your key files into ssh-agent
ssh-add ~\.ssh\id_ed25519