1

Если я ssh на мой сервер как таковой:

ssh root@<ip> -A

Затем я делаю это удаленно:

ssh git@github.com
# Hi username! You've successfully authenticated

Тогда это удаленно:

su user -

Тогда это удаленно:

ssh git@github.com
# Permission denied (publickey).

Как мне заставить это работать без SSH'инга непосредственно пользователю (потому что мне нужно легко переключаться назад и вперед)

Спасибо

1 ответ1

1

Это как и ожидалось. Происходит следующее: когда вы используете ssh -A сертификаты, уже загруженные в ваш агент SSH, становятся доступны в сеансе пользователя, который вы открываете на сервере. Когда вы затем изменяете пользователя на кого-то другого, используя su эта привилегия по соображениям безопасности не предоставляется целевому пользователю. Вместо этого вы обычно хотите

  1. ssh -A user@ip или
  2. поместите закрытый ключ на сервер, вставьте в него SSH и загрузите ключ, используя eval "$(ssh-agent)" && ssh-add .

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