Ошибка: невозможно получить доступ к jar-файлу при запуске скрипта из crontab linux

С помощьюdehydrated(https://github.com/lukas2511/dehydrated)легко создавать и обновлять сертификаты Let's Encrypt.

Вы должны добавить местоположение /.well-known/acme-challenge/для каждого сайта, так как служба Let's Encrypt будет проверять ответы на запросы в этом местоположении, чтобы убедиться, что вы являетесь владельцем сайтов, для которых вы запросили сертификаты :

.

location /.well-known/acme-challenge/ { allow all; root /st/hosting/hamilton/htdocs; } 

И использовать тот же путь в обезвоженной конфигурации:

egrep -v "^#|^[[:space:]]*$" config                                          
WELLKNOWN="/st/hosting/hamilton/htdocs/.well-known/acme-challenge"
CONTACT_EMAIL=

После этого поместите все ваши домены в domain.txtфайл :в каждой строке первый домен будет CommonNameа остальные имена будут AlternativeNames, например:

head -n1 domains.txt
hamilton.rinet.ru jenkins.hamilton.rinet.ru munin.hamilton.rinet.ru

После этого вы должны указать dehydrated -cв cron и использовать скрипт, подобный этому, для установки новых сгенерированных сертификатов:

#!/bin/sh

CERTS_DIR=/usr/local/etc/dehydrated/certs
NGINX_SSL=/usr/local/etc/nginx/ssl
DOMAINS=$(awk '{ print $1 }' /usr/local/etc/dehydrated/domains.txt)

for d in $DOMAINS; do
  short_d=${d%%.rinet.ru}
  short_d=${short_d%%.ru}
  # short_d=${short_d##www.}
  cp -v ${CERTS_DIR}/$d/fullchain.pem ${NGINX_SSL}/${short_d}.crt
  cp -v ${CERTS_DIR}/$d/privkey.pem ${NGINX_SSL}/${short_d}.key
done

# Also update certs for Dovecot
cp -v ${CERTS_DIR}/hamilton.rinet.ru/fullchain.pem /usr/local/etc/dovecot/certs/certs/server.crt
cp -v ${CERTS_DIR}/hamilton.rinet.ru/privkey.pem /usr/local/etc/dovecot/certs/private/server.key

0
30.09.2019, 15:33
1 ответ

Проверьте права доступа к jar-файлу. Для пользователя crontab требуется разрешение на чтение и выполнение

.

Иногда разрешение не требуется при запуске вручную, но необходимо для Cron.

-1
28.01.2020, 03:14

Теги

Похожие вопросы