Общий доступ к ssh-агенту — службе Windows, оболочка msys2

#windows #ssh #fish #msys2 #ssh-agent

Вопрос:

Настройка: Windows 10, Msys2 в ConEmu, рыбья раковина

Я хочу запустить ssh-агент и поделиться им между оболочками, что само по себе не является проблемой. настройка $SSH_AUTH_SOCK переменной глобально или даже использование ~/.ssh/environment файла будет работать.

Однако любая оболочка, которую я запустил первой, будет владельцем процесса ssh-агента и закроется, когда я закрою это окно терминала. Сначала я подумал, что это и есть ответ: https://www.msys2.org/wiki/Setting-up-SSHd/ Но sshd != ssh-агент .. ух

Поэтому мне было интересно, имело бы смысл и сработало бы, если бы я использовал этот сценарий в качестве основы и создал его для настройки запуска ssh-агента в качестве службы cygrunsrv.

Я сталкиваюсь с проблемой, что сокеты ssh-агента принадлежат uid, который его создал, и могут использоваться только этим uid и суперпользователем.

Запуск msys2 с правами администратора, похоже, не удовлетворяет требованию «суперпользователя».

Неужели это просто не работает? И если да, то какова альтернатива? Я действительно не склонен постоянно открывать одну оболочку conemu и быть осторожным, чтобы не закрыть ее.

Использование одного ssh-агента на оболочку также не совсем то, что мне нравится рассматривать, так как мне каждый раз придется заново вводить пароль для своих личных ключей.

Ответ №1:

nohup следует решить исходную проблему, отсоединив процесс ssh-агента от его терминала.