Сделать SSH_AUTH_SOCK каждый раз одним файлом
Мне нужно, чтобы ssh-agent использовал один и тот же файл для своего сокета при каждом входе в систему. В настоящее время он использует случайный файл во временной папке, и это вызывает проблемы для службы systemd в vagrant.
Мы запускаем команду для создания файла env, который определяет местоположение файла сокета для использования systemd, но он продолжает менять местоположение при каждом входе в систему, и поэтому после бродячих положений местоположение, записанное в файл env, изменилось и больше не является действительный.
Есть ли способ заставить его быть всегда /etc/ssh/ssh_auth_socket
например?
1 ответ
Нет. Это невозможно по умолчанию ssh-agent
, Создает также файл в $TMPDIR/ssh-XXXXXXXXXX/agent.<ppid>
как отмечено на странице руководства. Это делается для того, чтобы убедиться, что сокет безопасен (не доступен только для вашего пользователя).
Но вы можете использовать gnome-keyring
, Они создают сокет в /run/user/1000/keyring/ssh
Таким образом, он находится в безопасном месте и использует тот же протокол (распространенный в рабочих столах Gnome).
Для чего тебе это? Если у вас есть путь в переменной, вы можете просто создать .bashrc
создать символическую ссылку из вашего "известного" местоположения в реальное место.