Я нашел решение наhttp://gagravarr.org/writing/openssl-certs/others.shtml
Проверьте, где находится каталог openssl:
# openssl version -d
OPENSSLDIR: "/var/ssl"
Скопируйте файл.crt в каталог сертификатов openssl (OPENSSLDIR/certs):
# cp CA.crt /var/ssl/certs/CA.crt
OpenSSL ищет сертификаты, используя их хэши.Хэш сертификата можно рассчитать с помощью команды:
# openssl x509 -noout -hash -in /var/ssl/certs/CA.crt
Создать символическую ссылку с хешем на исходный сертификат в каталоге сертификатов OpenSSL:
# cd /var/ssl/certs
# ln -s CA.crt `openssl x509 -hash -noout -in CA.crt`.0
Проверьте правильность установки сертификата, попытавшись подключиться к веб-сайту, который его использует:
# openssl s_client -connect :port
На самом деле в этом случае вам вообще не нужен sudo, так как ваша служба является системной -общесистемной службой (она находится в /lib/systemd/system ), поэтому она будет работать от имени пользователя root По умолчанию. Вы можете просто удалить части /home/Butter_Manager/sudo
из вашего служебного файла.
Вот почему ваша служба не удалась:
/home/Butter_Manager/sudo: No such file or directory
Это означает, что /home/Butter_Manager/sudo
не существует. Скорее всего sudo
будет в /usr/bin/sudo
или /bin/sudo
. Вы можете найти его путь, запустив which sudo
. Запуск realpath sudo
просто вернет ваш текущий рабочий каталог + sudo (см.man realpath
). Я думаю, что у вас также есть проблема со второй частью вашей команды. Я думаю, что вы имеете в виду /bin/env /bin/python3.8
, а не /home/Butter_Manager/env/bin/python3.8
.