Я могу предложить дополнительный вариант, который может удовлетворить ваши потребности, но он требует выполнения нескольких предварительных условий:
Следующие шаги следующие:
Используйте secret-tool
из libsecret
для сохранения пароля. Например:
$ secret-tool store --label=myProgram myService password
Password:
Если ваш исполняемый файл поддерживает чтение пароля из переменной окружения, это лучше:
[Service]
ExecStart=/usr/bin/sh -c 'env SECRET=$(secret-tool lookup myService password) /usr/bin/script'
Если ваш исполняемый файл принимает пароль в качестве аргумента, вы все равно можете использовать secret-tool
вот так:
[Service]
ExecStart=/usr/bin/sh -c '/usr/bin/script --secret=$(secret-tool lookup myService password)'
Предупреждение:пароль будет хорошо виден, когда вы запустите systemctl --user status myUnit.service
, поскольку он показывает, что аргумент запускается в командной строке. Это означает, что это также будет видно пользователям, использующим top
или ps -aux
.
Вы абсолютно правы. IP сервера был изменен. После обновления нового IP я могу пинговать и подключаться через браузер. Большое спасибо.