Jojo (BE) Posté(e) le 11 juillet 2018 Partager Posté(e) le 11 juillet 2018 MERCI d'avoir regardé ! Je n'y comprends plus RIEN : Promis, juré, craché, ... je n'ai RIEN modifié, et maintenant ça passe en 4G ... Tu as du faire qqch 😉 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
unPixel Posté(e) le 11 juillet 2018 Auteur Partager Posté(e) le 11 juillet 2018 Peut-être un soucis d'actualisation. Rien de méchant. 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Jojo (BE) Posté(e) le 11 juillet 2018 Partager Posté(e) le 11 juillet 2018 je te dis, c'est du paranormal, depuis que la France a battu la Belgique 😉 Plus sérieusement, cela faisait plusieurs jours que j'avais le problème avant de te le remonter. P.S. : je nettoye donc mes messages précédents avec les liens, ... 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
unPixel Posté(e) le 11 juillet 2018 Auteur Partager Posté(e) le 11 juillet 2018 Faut bien être un Belge pour penser que la France allait perdre 😂 Je plaisante... 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Jojo (BE) Posté(e) le 12 juillet 2018 Partager Posté(e) le 12 juillet 2018 😂 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
PPJP Posté(e) le 12 juillet 2018 Partager Posté(e) le 12 juillet 2018 Bonjour Jean 😄, Une nouvelle version du script, qui répondra en partie à ton besoin (j’espère). Plus besoin de renseigner le CERTIR. On ne redémarre que les paquets concernés par ce certificat : Le script : #!/bin/sh # ******************************************* # Renouvellement périodique du certificat # ******************************************* # ******************************************* # ligne à personnaliser NDD="domaine_a_renouveler.tld" # ******************************************* CERTRENEWDIR="/usr/local/share/acme.sh/$NDD" CERTROOTDIR="/usr/syno/etc/certificate" PACKAGECERTROOTDIR="/usr/local/etc/certificate" CRONTAB="/etc/crontab" NEWCRONTAB="/etc/crontabnew" OLDCRONTAB="/etc/crontab.old" # ******************************************* # recherche du certificat par défaut read CERTDIR < "$CERTROOTDIR/_archive/DEFAULT" FULLCERTDIR="$CERTROOTDIR/_archive/$CERTDIR" # ******************************************* # Renouvellement du certificat via acme.sh #/usr/local/share/acme.sh/acme.sh --cron --home /usr/local/share/acme.sh/ --force # ******************************************* # Replanification cron pour prochain renouvellement dans 89 jours if [ -f $NEWCRONTAB ]; then rm $NEWCRONTAB fi oldIFS=$IFS # sauvegarde du séparateur de champ IFS=$'\n' # nouveau séparateur de champ, le caractère fin de ligne flagMaj=1 while read -r ligne; do if echo $ligne | grep $0 >/dev/null 2>&1; then #si ligne concernant la mise à jour certificat la replanifier >echo date -d "89 days" "+%M%t%H%t%d%t%m%t*%troot%tsh $0" >> "$NEWCRONTAB" flagMaj=0 else # sinon recopie de la ligne à l'identique echo "$ligne" >> "$NEWCRONTAB" fi done < $CRONTAB if [ "$flagMaj"=1 ]; then # si ligne concernant la mise à jour certificat non trouvée on la crée >echo date -d "89 days" "+%M%t%H%t%d%t%m%t*%troot%tsh $0" >> "$NEWCRONTAB" fi IFS=$oldIFS # restauration du séparateur de champ if [ -f "$OLDCRONTAB" ]; then rm "$OLDCRONTAB" fi mv "$CRONTAB" "$OLDCRONTAB" mv "$NEWCRONTAB" "$CRONTAB" chmod 644 "$CRONTAB" # ******************************************* #reload /usr/syno/sbin/synoservicectl --restart crond > /dev/null # ******************************************* # Importation des nouveaux certificats cp $CERTRENEWDIR/$NDD.cer $FULLCERTDIR/cert.pem chmod 400 $FULLCERTDIR/cert.pem cp $CERTRENEWDIR/ca.cer $FULLCERTDIR/chain.pem chmod 400 $FULLCERTDIR/chain.pem cp $CERTRENEWDIR/fullchain.cer $FULLCERTDIR/fullchain.pem chmod 400 $FULLCERTDIR/fullchain.pem # ******************************************* # ******************************************* # mise en place des fichiers de certificat # ******************************************* datePK=echo stat -c %Y "$FULLCERTDIR/privkey.pem" # ******************************************* # Recherche tous les sous-dossiers contenant cert.pem files PEMFILES=$(find $CERTROOTDIR -name privkey.pem) if [ ! -z "$PEMFILES" ]; then for DIR in $PEMFILES; do # remplace tous les certificats, sauf ceux dans le répertoire _archive if [[ $DIR != *"/_archive/"* ]]; then datePkDir=echo stat -c %Y "$DIR" # remplace les certificats, si la date de clé privée est identique if [ $datePkDir = $datePK ]; then rsync -avh "$FULLCERTDIR/" "$(dirname $DIR)/" fi fi done fi # ******************************************* # reload /usr/syno/sbin/synoservicectl --reload nginx # ******************************************* # Maj et redémarrage des paquets installés PEMFILES=$(find $PACKAGECERTROOTDIR -name privkey.pem) if [ ! -z "$PEMFILES" ]; then for DIR in $PEMFILES; do datePkDir=echo stat -c %Y "$DIR" # remplace les certificats, si la date de clé privée est identique if [ $datePkDir = $datePK ]; then rsync -avh "$FULLCERTDIR/" "$(dirname $DIR)/" # Redemarrage des paquets correspondants /usr/syno/bin/synopkg restart $(echo $DIR | awk -F/ '{print $6}') fi done fi # ******************************************* Je n’ai pas ton expérience dans les explications à fournir, donc je ne suis pas suffisamment précis. Comment l’utiliser ce script : On le met dans un fichier dans un emplacement préservé lors des maj DSM. ( pas de copie dans une tâche!) On personnalise le NDD="domaine_a_renouveler »" par le nom de domaine à renouveler uniquement (pas de *.NDD.tld). Dans panneau de configuration/Sécurité/certificat on définit ce certificat comme étant celui par défaut. ( Important car c’est là que le script va chercher le certificat à traiter) On lance ce script soit par SSH Commande du style : sh /volume1/script/yann/yanncertif.sh >> /volume1/script/yann/yann00.log 2>&1 soit par le planificateur de tâche On clique droit sur cette nouvelle tâche et on fait exécuter, On peut alors consulter le fichier de log pour vérifier que le renouvellement s’est fait correctement. La tâche peut alors être supprimée (ou simplement désactivée afin de pouvoir relancer un nouveau renouvellement si besoin était) En espérant ne rien avoir oublié et que cela fonctionne également chez toi. PS ; un petit piège Si l’on change le nom ou l’emplacement du script il faudra relancer la tâche dans planificateur ou par SSH, ET éditer /etc/crontab (par SSH ou winscp) et supprimer la ligne comportant l’ancien nom ou l’ancien emplacement du script. (sinon elle appellerait annuellement un script inexistant) Donc de préférence bien choisir ce nom et cet emplacement dès le début. Bonne soirée. 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
unPixel Posté(e) le 13 juillet 2018 Auteur Partager Posté(e) le 13 juillet 2018 Hello PPJP, Désolé pour la réponse tardive. Merci de t'être "encore" penché sur le sujet. Voici le retour du fichier log 😉 /volume1/Yann/certificat.sh: line 5: $'\r': command not found /volume1/Yann/certificat.sh: line 10: $'\r': command not found /volume1/Yann/certificat.sh: line 19: /usr/syno/etc/certificate /_archive/DEFAULT : No such file or directory /volume1/Yann/certificat.sh: line 21: $'\r': command not found /volume1/Yann/certificat.sh: line 25: $'\r': command not found /volume1/Yann/certificat.sh: line 28: $'\r': command not found /volume1/Yann/certificat.sh: line 45: syntax error near unexpected token `done' /volume1/Yann/certificat.sh: line 45: `done < $CRONTAB Je vais tenter autre chose dans le week-end et je viendrais donner le résultat si positif. 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Fenrir Posté(e) le 13 juillet 2018 Partager Posté(e) le 13 juillet 2018 @InfoYANN converti tes sauts de ligne (\r => \n // CR => LF) 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
unPixel Posté(e) le 14 juillet 2018 Auteur Partager Posté(e) le 14 juillet 2018 (modifié) Merci Fenrir pour ton retour. Je l'avais fait mais je n'ai pas donné suite car après, le script a fonctionné mais m'a planté ma config NAS. Bref, je suis revenu sur une sauvegarde de config d'une heure avant pour tout remettre d’aplomb. Le soucis aujourd'hui, c'est que la création du certificat se fait sans soucis avec acme. C'est plutôt l'endroit de création qui n'est pas prit en compte dans mes lignes de codes et en plus, le certificat final chez Synology n'a pas les même extensions que les fichiers originaux. Bref, encore un peu de boulot mais le plus gros est fait. Modifié le 14 juillet 2018 par InfoYANN 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
PPJP Posté(e) le 16 juillet 2018 Partager Posté(e) le 16 juillet 2018 Bonsoir Yann, J’ai bien noté que tu ne souhaites pas donner suite Je n’insiste donc pas. Cependant j’aurais apprécié d’avoir quelques infos sur " m'a planté ma config NAS" Car j’aurais aimé essayer de comprendre pourquoi un script qui tourne sans pb chez moi, a de tels effets chez toi. Je l’ai lancé à de multiples reprises avant de te le transmettre. Pour test, je l’ai mis en œuvre chez moi ( provisoirement à la place de mon script python) et tout se passe normalement. (script corrigé pour renouvellement tous les 3 jours). Pourquoi en est il autrement chez toi ? Je le modifie régulièrement afin de le rendre plus présentable (et supprimer le paramétrage du domaine). Cela m’auras donc permis de me mettre un petit peu au shell. Bonne soirée 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
unPixel Posté(e) le 16 juillet 2018 Auteur Partager Posté(e) le 16 juillet 2018 Hello PPJP, Je ne peux pas te dire ce qui a planté car ça planté toute la partie configuration réseau et impossible de la remettre manuellement. Certains services comme mon serveur mail n'avait plus la connexion alors que d'autres oui. Mon reverse proxy fonctionnait mais pas mon domaine principal. Etc... Quant au log, et bien il n'a rien dit malheureusement. Par contre, je ne suis pas certain que ça vienne de toi, ça peut aussi provenir de moi car j'ai modifié deux ou trois lignes manuellement avant de le lancer pour l'adapter à ma config. Bref, tu sais quoi, je vais retenter une nouvelle fois de le lancer et je te tiens au courant de ce qui se passe 😉 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
PPJP Posté(e) le 16 juillet 2018 Partager Posté(e) le 16 juillet 2018 (modifié) Merci de cette réponse. Je ne demande pas de poursuivre ces essais. Cependant si tu veux retenter, je te joins une nouvelle version. Plus propre et rien à paramétrer. Il faut juste ton certificat déclaré en certificat par défaut. majcertif.sh Modifié le 16 juillet 2018 par PPJP 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
PPJP Posté(e) le 16 juillet 2018 Partager Posté(e) le 16 juillet 2018 Erreur de ma part: Le fichier transmis est le script qui tourne pour test chez moi. Il exécute un renouvellement tous les jours (je ne suis pas patient) Il faudra corriger la ligne 19: Remplacer $(date -d "1 days" ... par $(date -d "90 days" ... Désolé 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
unPixel Posté(e) le 16 juillet 2018 Auteur Partager Posté(e) le 16 juillet 2018 Je te remercie, je fais donc suite en ayant testé ton script. Je suis joueur... 😁 Il y a donc une erreur qui ne renouvelle pas le certificat. Demarrage du script [Tue Jul 17 00:13:48 CEST 2018] ===Starting cron=== [Tue Jul 17 00:13:48 CEST 2018] Renew: 'ndd.tld' [Tue Jul 17 00:13:50 CEST 2018] Multi domain='DNS:ndd.tld,DNS:*.ndd.tld' [Tue Jul 17 00:13:50 CEST 2018] Getting domain auth token for each domain [Tue Jul 17 00:13:53 CEST 2018] Getting webroot for domain='ndd.tld' [Tue Jul 17 00:13:53 CEST 2018] Getting webroot for domain='*.ndd.tld' [Tue Jul 17 00:13:53 CEST 2018] ndd.tld is already verified, skip dns-01. [Tue Jul 17 00:13:53 CEST 2018] *.ndd.tld is already verified, skip dns-01. [Tue Jul 17 00:13:53 CEST 2018] Verify finished, start to sign. [Tue Jul 17 00:13:54 CEST 2018] Sign failed, code is not 200. [Tue Jul 17 00:13:54 CEST 2018] {"type":"urn:ietf:params:acme:error:rateLimited","detail":"Error finalizing order :: too many certificates already issued for exact set of domains: *.ndd.tld,ndd.tld: see https://letsencrypt.org/docs/rate-limits/","status": 429} [Tue Jul 17 00:13:54 CEST 2018] Please check log file for more details: /usr/local/share/acme.sh/acme.sh.log [Tue Jul 17 00:13:54 CEST 2018] Error renew ndd.tld. [Tue Jul 17 00:13:54 CEST 2018] ===End cron=== Echec du renouvellement sending incremental file list ./ cert.pem chain.pem fullchain.pem sent 8.54K bytes received 72 bytes 17.21K bytes/sec total size is 11.54K speedup is 1.34 sending incremental file list ./ cert.pem chain.pem fullchain.pem sent 8.54K bytes received 75 bytes 17.23K bytes/sec total size is 11.54K speedup is 1.34 package CardDAVServer restart successfully Durée d'éxécution (en secondes) : 40 Fin du script 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
PPJP Posté(e) le 16 juillet 2018 Partager Posté(e) le 16 juillet 2018 Tu es joueur, j'espère que tu prends les précautions nécessaires! Erreur de renouvellement car dépassement du nombre de renouvellement autorisé. Je pense que c’est 20 par semaine. Également une erreur dans mon script (d’essai), La ligne 34 est désactivée : supprimer le # devant exit 1. Cela doit avoir eu comme conséquence de paramétrer un prochain lancement du script dans la crontab (ligne à supprimer). Le script est dans cet état car je ne sais pas quand paramétrer le lancement suivant en cas d’échec du renouvellement. Si pas de nouveau paramétrage : lancement un an après ! Si paramétrage le lendemain : les 90 jours seront dépassés Quelques heures ou minutes plus tard : risque de dépassement du nombre de renouvellement autorisé. Le exit1 désactivé il laisse le lancement à 90 jours : pas satisfaisant Quand j'aurai trouvé une solution satisfaisante la replanification prendra place avant ce exit 1 Ps: je suis surpris du peu de reverse proxy et de paquets concernés (modif pour test?) Bonne soirée 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
PPJP Posté(e) le 17 juillet 2018 Partager Posté(e) le 17 juillet 2018 Je t’embête une dernière fois. Ton dernier essai a t-il planté ta configuration ? Pourquoi cette question ? Car il faut savoir profiter de ses erreurs. La ligne exit1 ayant été désactivée la mise à jour des certificats (à l’identique) s’est faite (dont reverse proxy et paquets) Si plantage, l’anomalie est donc dans la copie de ces fichiers Sinon c’est qu’il y a d’autres fichiers à mettre à jour et/ou services à redémarrer. J’ai commencé à chercher pour cette dernière voie, mais je crains que ce ne soit pas de mon niveau ! Bonne soirée (ou nuit?) 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Jojo (BE) Posté(e) le 17 juillet 2018 Partager Posté(e) le 17 juillet 2018 J'essaye de suivre avec grand interêt vos evolutions, mais 1) je ne suis pas expert, 2) j'ai toujours des problèmes avec mes renouvellements manuels, 3) je ne peux pas me permettre de planter... mais j'ai quand même des questions : 1) pourquoi le faire dans le crontab, et pas simplement planifié par le planificateur des taches. 2) quand on renouvelle le certif, ne faut-il pas également mettre à jour les champs txt chez ovh ? 3) le certif doit-il obligatoirement être celui par défaut ? Merci à tous les deux pour votre super travail, ce sera utile au moins pour trois personnes... 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
unPixel Posté(e) le 17 juillet 2018 Auteur Partager Posté(e) le 17 juillet 2018 @PPJP : Citation Tu es joueur, j'espère que tu prends les précautions nécessaires! Oui, j'ai des sauvegardes de la configuration du système toutes les heures en faisant un backup (trois en réalité) de mon serveur mail. Citation Erreur de renouvellement car dépassement du nombre de renouvellement autorisé. Je pense que c’est 20 par semaine. Bizarre car je me souviens pas en avoir créer 20... Citation Également une erreur dans mon script (d’essai), La ligne 34 est désactivée : supprimer le # devant exit 1. Changé également, merci. Citation Cela doit avoir eu comme conséquence de paramétrer un prochain lancement du script dans la crontab (ligne à supprimer). J'ai regardé dans le CRON et en effet, après avoir testé deux fois ton script, ça m'avait créé deux lignes que j'ai supprimé. Citation Ps: je suis surpris du peu de reverse proxy et de paquets concernés (modif pour test?) En effet, il y a un soucis sur ce point car ça ne redémarre pas TOUS les services. Mais pour le moment, c'est pas plus mal car ça me permet de faire les tests sans attendre dix plombes que tout se relance surtout quand au final, le certificat n'a pas été renouvelé 😉 Citation Ton dernier essai a t-il planté ta configuration ? Absolument pas. Aucun changement visible et comme tu l'as vu, le certificat ne s'est pas renouvelé. @Jojo (BE) : Pour le moment, ne joue pas à ce qu'on fait, tiens toi en à SSLF FOR FREE ou ce que j'ai trouvé avant en allant récupérer manuellement le certificat via WinSCP et en le réimportant manuellement dans la config du Syno. De toute façon, tu es tranquille pendant trois mois... 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Jojo (BE) Posté(e) le 17 juillet 2018 Partager Posté(e) le 17 juillet 2018 @InfoYANN, merci du conseil, je pense que" tu as bien cerné on "cas". Quand votre projet est mûr, je suis preneur. 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
unPixel Posté(e) le 17 juillet 2018 Auteur Partager Posté(e) le 17 juillet 2018 De mon côté et en adaptant un peu le script de acme, j'ai toujours ce soucis de copie de certificat dans le bon dossier. Malgré le bon chemin et les commandes qui s'exécutent, ça ne fonctionne pas. 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Fenrir Posté(e) le 19 juillet 2018 Partager Posté(e) le 19 juillet 2018 Pour vos tests, acme.sh accepte l'option --staging ... Pour le script, je l'ai regardé vite fait, je vous recommande plutôt de tout enregistrer (acme.sh, script et certificats) dans un partage (/volumeX/scripts par exemple), ça évitera les surprises en cas de mise à jour de DSM. De même plutôt que de faire des cp, faites des redirections d'output ("cat truc > chose" par exemple), ça permet de conserver les droits des fichiers (donc plus besoin de chmod) et enfin, il faudrait y ajouter des contrôles d'erreur (if [ "$?" != 0 ]; then ...). Vous pouvez aussi vous inspirer de ça : https://github.com/fenrir-github/acme-haproxy/blob/master/Dockerfile (en passant, ce docker fonctionne sur un syno, c'est fait pour) 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
unPixel Posté(e) le 19 juillet 2018 Auteur Partager Posté(e) le 19 juillet 2018 J'ai beau chercher, je ne trouve pas d'infos sur ce qu'est la commande --staging Tu pourrais en dire plus @Fenrir stp ? Merci par avance. Pour le reste, je laisse ça à PPJP qui est plus calé que moi. 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Fenrir Posté(e) le 19 juillet 2018 Partager Posté(e) le 19 juillet 2018 (modifié) https://letsencrypt.org/docs/staging-environment/ https://github.com/Neilpang/acme.sh/blob/master/acme.sh Commands: --help, -h Show this help message. --version, -v Show version info. --install Install $PROJECT_NAME to your system. --uninstall Uninstall $PROJECT_NAME, and uninstall the cron job. --upgrade Upgrade $PROJECT_NAME to the latest code from $PROJECT. --issue Issue a cert. --signcsr Issue a cert from an existing csr. --deploy Deploy the cert to your server. --install-cert Install the issued cert to apache/nginx or any other server. --renew, -r Renew a cert. --renew-all Renew all the certs. --revoke Revoke a cert. --remove Remove the cert from list of certs known to $PROJECT_NAME. --list List all the certs. --showcsr Show the content of a csr. --install-cronjob Install the cron job to renew certs, you don't need to call this. The 'install' command can automatically install the cron job. --uninstall-cronjob Uninstall the cron job. The 'uninstall' command can do this automatically. --cron Run cron job to renew all the certs. --toPkcs Export the certificate and key to a pfx file. --toPkcs8 Convert to pkcs8 format. --update-account Update account info. --register-account Register account key. --deactivate-account Deactivate the account. --create-account-key Create an account private key, professional use. --create-domain-key Create an domain private key, professional use. --createCSR, -ccsr Create CSR , professional use. --deactivate Deactivate the domain authz, professional use. Parameters: --domain, -d domain.tld Specifies a domain, used to issue, renew or revoke etc. --challenge-alias domain.tld The challenge domain alias for DNS alias mode: $_DNS_ALIAS_WIKI --domain-alias domain.tld The domain alias for DNS alias mode: $_DNS_ALIAS_WIKI --force, -f Used to force to install or force to renew a cert immediately. --staging, --test Use staging server, just for test. --debug Output debug info. --output-insecure Output all the sensitive messages. By default all the credentials/sensitive messages are hidden from the output/debug/log for secure. --webroot, -w /path/to/webroot Specifies the web root folder for web root mode. --standalone Use standalone mode. --stateless Use stateless mode, see: $_STATELESS_WIKI --apache Use apache mode. --dns [dns_cf|dns_dp|dns_cx|/path/to/api/file] Use dns mode or dns api. --dnssleep [$DEFAULT_DNS_SLEEP] The time in seconds to wait for all the txt records to take effect in dns api mode. Default $DEFAULT_DNS_SLEEP seconds. --keylength, -k [2048] Specifies the domain key length: 2048, 3072, 4096, 8192 or ec-256, ec-384. --accountkeylength, -ak [2048] Specifies the account key length. --log [/path/to/logfile] Specifies the log file. The default is: \"$DEFAULT_LOG_FILE\" if you don't give a file path here. --log-level 1|2 Specifies the log level, default is 1. --syslog [0|3|6|7] Syslog level, 0: disable syslog, 3: error, 6: info, 7: debug. These parameters are to install the cert to nginx/apache or anyother server after issue/renew a cert: --cert-file After issue/renew, the cert will be copied to this path. --key-file After issue/renew, the key will be copied to this path. --ca-file After issue/renew, the intermediate cert will be copied to this path. --fullchain-file After issue/renew, the fullchain cert will be copied to this path. --reloadcmd \"service nginx reload\" After issue/renew, it's used to reload the server. --server SERVER ACME Directory Resource URI. (default: https://acme-v01.api.letsencrypt.org/directory) --accountconf Specifies a customized account config file. --home Specifies the home dir for $PROJECT_NAME . --cert-home Specifies the home dir to save all the certs, only valid for '--install' command. --config-home Specifies the home dir to save all the configurations. --useragent Specifies the user agent string. it will be saved for future use too. --accountemail Specifies the account email, only valid for the '--install' and '--update-account' command. --accountkey Specifies the account key path, only valid for the '--install' command. --days Specifies the days to renew the cert when using '--issue' command. The max value is $MAX_RENEW days. --httpport Specifies the standalone listening port. Only valid if the server is behind a reverse proxy or load balancer. --local-address Specifies the standalone/tls server listening address, in case you have multiple ip addresses. --listraw Only used for '--list' command, list the certs in raw format. --stopRenewOnError, -se Only valid for '--renew-all' command. Stop if one cert has error in renewal. --insecure Do not check the server certificate, in some devices, the api server's certificate may not be trusted. --ca-bundle Specifies the path to the CA certificate bundle to verify api server's certificate. --ca-path Specifies directory containing CA certificates in PEM format, used by wget or curl. --nocron Only valid for '--install' command, which means: do not install the default cron job. In this case, the certs will not be renewed automatically. --no-color Do not output color text. --force-color Force output of color text. Useful for non-interactive use with the aha tool for HTML E-Mails. --ecc Specifies to use the ECC cert. Valid for '--install-cert', '--renew', '--revoke', '--toPkcs' and '--createCSR' --csr Specifies the input csr. --pre-hook Command to be run before obtaining any certificates. --post-hook Command to be run after attempting to obtain/renew certificates. No matter the obtain/renew is success or failed. --renew-hook Command to be run once for each successfully renewed certificate. --deploy-hook The hook file to deploy cert --ocsp-must-staple, --ocsp Generate ocsp must Staple extension. --always-force-new-domain-key Generate new domain key when renewal. Otherwise, the domain key is not changed by default. --auto-upgrade [0|1] Valid for '--upgrade' command, indicating whether to upgrade automatically in future. --listen-v4 Force standalone/tls server to listen at ipv4. --listen-v6 Force standalone/tls server to listen at ipv6. --openssl-bin Specifies a custom openssl bin location. --use-wget Force to use wget, if you have both curl and wget installed. --yes-I-know-dns-manual-mode-enough-go-ahead-please Force to use dns manual mode: $_DNS_MANUAL_WIKI --branch, -b Only valid for '--upgrade' command, specifies the branch name to upgrade to. Modifié le 19 juillet 2018 par Fenrir 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
unPixel Posté(e) le 19 juillet 2018 Auteur Partager Posté(e) le 19 juillet 2018 Merci pour cette liste et la ligne en particulier 👍 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
unPixel Posté(e) le 20 juillet 2018 Auteur Partager Posté(e) le 20 juillet 2018 @PPJP : J'ai testé à nouveau ton dernier script et il parait fonctionnel. Bizarrement, Firefox ne veut pas me le prendre en compte sur deux ordinateurs avec deux OS différents et même en ayant supprimé l'historique complet des navigateurs (visites, cache, etc...). Sur Opera, pas de soucis, sur divers sites qui vérifient l'existence et la fiabilité des certificats SSL, pas de soucis non plus. Je me demande par contre si il redémarre correctement tous les paquets car j'ai constaté que le renouvellement du certificat c'était fait en moins de 30 secondes y compris le soit disant redémarrage 🙄 Je te montre le log : Demarrage du script [Fri Jul 20 22:39:13 CEST 2018] ===Starting cron=== [Fri Jul 20 22:39:13 CEST 2018] Renew: 'ndd.tld' [Fri Jul 20 22:39:14 CEST 2018] Multi domain='DNS:ndd.tld,DNS:*.ndd.tld' [Fri Jul 20 22:39:14 CEST 2018] Getting domain auth token for each domain [Fri Jul 20 22:39:16 CEST 2018] Getting webroot for domain='ndd.tld' [Fri Jul 20 22:39:16 CEST 2018] Getting webroot for domain='*.ndd.tld' [Fri Jul 20 22:39:17 CEST 2018] ndd.tld is already verified, skip dns-01. [Fri Jul 20 22:39:17 CEST 2018] *.ndd.tld is already verified, skip dns-01. [Fri Jul 20 22:39:17 CEST 2018] Verify finished, start to sign. [Fri Jul 20 22:39:19 CEST 2018] Cert success. -----BEGIN CERTIFICATE----- MIIHCDCCBfCgAwIBAgISA11kPluPaH/paz4Y/97GCRf8MA0GCSqGSIb3DQEBCwUA MEoxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MSMwIQYDVQQD ExpMZXQncyBFbmNyeXB0IEF1dGhvcml0eSBYMzAeFw0xODA3MjAxOTM5MThaFw0x ODEwMTgxOTM5MThaMBQxEjAQBgNVBAMTCW5ldHlzbC5mcjCCAiIwDQYJKoZIhvcN AQEBBQADggIPADCCAgoCggIBANQlXPKnt4dGUgzezdGv2RGY8UJBqrTsj206aOZ8 ltWg+Eg8YhFKzmwnSVilOcGacKPIFmXzKpGWR2ePqEsy/8gSeLTSDq6mPlzasVvj JMmKAQAYqKKoshbaYwkNRjhIFpZDaPOM2DMwzNzUhJ5+fJFPOPiZF5hfYIvgRRp/ F6x03j5c4DntD6TCA0MUiMXV87mUafJlSgehVFWKkcozAWTmqgBPYX3IBzf83vL5 OY9EjhH+WOhR5c2wuZnKCCW5ldHlzbC5m cjCB/gYDVR0gBIH2MIHzMAgGBmeBDAECATCB5gYLKwYBBAGC3xMBAQEwgdYwJgYI KwYBBQUHAgEWGmh0dHA6Ly9jcHMubGV0c2VuY3J5cHQub3JnMIGrBggrBgEFBQcC AjCBngyBm1RoaXMgQ2VydGlmaWNhdGUgbWF5IG9ubHkgYmUgcmVsaWVkIHVwb24g YnkgUmVseWluZyBQYXJ0aWVzIGFuZCBvbmx5IGluIGFjY29yZGFuY2Ugd2l0aCB0 aGUgQ2VydGlmaWNhdGUgUG9saWN5IGZvdW5kIGF0IGh0dHBzOi8vbGV0c2VuY3J5 cHQub3JnL3JlcG9zaXRvcnkvMIIBAgYKKwYBBAHWeQIEAgSB8wSB8ADuAHUAVYHU whaQNgFK6gubVzxT8MDkOHhwJQgXL6OqHQcT0wwAAAFkuWsOZAAABAMARjBEAiBZ s20oQC7CypmE6WaWZn8lzrOn1PbiFz5S+zeKVlKTWAIgU0sltBQVFjL+/hgyw02n SxPCxa2F0L+1PKjBAD+Q2x8AdQApPFGWVMg5ZbqqUPxYB9S3b79Yeily3KTDDPTl RUf0eAAAAWS5axBEAAAEAwBGMEQCIB0ROruZGGuVguf+bwUzKYGNFKMFQ1PCrHww fZjb6YyMAiBvlsekbZDoJgFIqQiggHedTqpbimiCt7zV8xiNrrwPMDANBgkqhkiG 9w0BAQsFAAOCAQEAQwa1yRGtkbcDXKVgYS/owLDAHk7o01kUV2OxqAj1xGGnCCfu eev3G00jzgjhsZBVxs5GCO5lSpGvH1Mskw2UmRSERv6QV3tQ7dYuN+ZeLtRzA/CJ kiuzbVnTQbIdzR/gZWgo54nMAcxJZ8UHgQj8RSqhEIOZiooKT0biqN6JqaORTG3F elcLt8LTzIV15vHqCH/8ehtHwdC7ztBXzEEH0V+gUpsJG81IVAPJng6yNYz1nZfF cGwIGQi4322BYSFjo/mMaDTM/snkj1eOD8RfdHGJbt+WwXlOxXgCExQ+/3xoSjuz LV24d0wcbUjZ5zG0ZGg/n7wwIia/gmqDTONZqw== -----END CERTIFICATE----- [Fri Jul 20 22:39:19 CEST 2018] Your cert is in /usr/local/share/acme.sh//ndd.tld/ndd.tld.cer [Fri Jul 20 22:39:19 CEST 2018] Your cert key is in /usr/local/share/acme.sh//ndd.tld/ndd.tld.key [Fri Jul 20 22:39:19 CEST 2018] The intermediate CA cert is in /usr/local/share/acme.sh//ndd.tld/ca.cer [Fri Jul 20 22:39:19 CEST 2018] And the full chain certs is there: /usr/local/share/acme.sh//ndd.tld/fullchain.cer [Fri Jul 20 22:39:20 CEST 2018] Installing cert to:/usr/syno/etc/certificate/system/default/cert.pem [Fri Jul 20 22:39:20 CEST 2018] Installing key to:/usr/syno/etc/certificate/system/default/privkey.pem [Fri Jul 20 22:39:20 CEST 2018] Installing full chain to:/usr/syno/etc/certificate/system/default/fullchain.pem [Fri Jul 20 22:39:20 CEST 2018] Run reload cmd: /usr/syno/sbin/synoservicectl --reload nginx nginx reloaded. [Fri Jul 20 22:39:20 CEST 2018] Reload success [Fri Jul 20 22:39:20 CEST 2018] ===End cron=== sending incremental file list ./ cert.pem chain.pem fullchain.pem sent 8.53K bytes received 72 bytes 17.21K bytes/sec total size is 11.54K speedup is 1.34 sending incremental file list ./ cert.pem chain.pem fullchain.pem sent 8.53K bytes received 75 bytes 17.22K bytes/sec total size is 11.54K speedup is 1.34 package CardDAVServer restart successfully Durée d'éxécution (en secondes) : 58 Fin du script 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Rejoindre la conversation
Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.