Здравствуйте.
Есть системный(systemctl) сервис OpenVPN
, который при запуске запрашивает login
, password
, otp
. Для хранения этих данных был выбран менеджер паролей pass
, который запускается в пользовательском(systemctl –user) окружении.
Для передачи этих данных в сервис OpenVPN
был написан простой скрипт, который реализует эту логику для пользователя.
Я хочу дальше автоматизировать процесс и засунуть скрипт в сервис systemctl --user
, потом прикрутить к этому отслеживание запроса пароля через inotify интерфейс systemd. Проблема в том что скрипт использует внутри sudo socat
для записи ответов в сокет, что приводит к ошибке:
янв 07 21:25:01 nixos systemd[1954]: Starting Run when /run/systemd/ask-password/ask* file...
янв 07 21:25:01 nixos sh[30678]: Enter Auth Username:
янв 07 21:25:01 nixos sh[30678]: /run/systemd/ask-password/sck.ff39e0ee07bdce4c
янв 07 21:25:01 nixos sh[30688]: /home/rav/auth.sh: строка 13: echo: ошибка записи: Broken pipe
янв 07 21:25:01 nixos systemd[1954]: ask-password.service: Main process exited, code=exited, status=1/FAILURE
янв 07 21:25:01 nixos systemd[1954]: ask-password.service: Failed with result 'exit-code'.
янв 07 21:25:01 nixos systemd[1954]: Failed to start Run when /run/systemd/ask-password/ask* file.
а если отказаться от sudo
то соответственно к ошибке:
янв 07 16:58:38 nixos systemd[1963]: Starting Run when /run/systemd/ask-password/ask* file...
янв 07 16:58:38 nixos sh[4554]: Enter Auth Username:
янв 07 16:58:38 nixos sh[4554]: /run/systemd/ask-password/sck.e54bbba053f04fee
янв 07 16:58:38 nixos sh[4564]: 2024/01/07 16:58:38 socat[4564] E sendto(5, 0x556fd758e000, 11, 0, AF=1 "/run/systemd/ask-password/sck.e54bbba053f04fee", 48): Permission denied
янв 07 16:58:38 nixos systemd[1963]: ask-password.service: Main process exited, code=exited, status=1/FAILURE
янв 07 16:58:38 nixos systemd[1963]: ask-password.service: Failed with result 'exit-code'.
янв 07 16:58:38 nixos systemd[1963]: Failed to start Run when /run/systemd/ask-password/ask* file.
Отсюда вопрос, как в systemd --user
использовать скрипры с sudo
?