J'ai quelques sites qui fonctionnent avec un certificat gratuit StartSSL ( CJSHayward.com , JobhuntTracker.com ), et Firefox rejette StartSSL et affiche une page d'erreur indiquant que mon serveur n'est pas correctement configuré (IIRC) à cause de la chaîne de certificats. J'ai demandé de l'aide et confirmé que mon VirtualHost (disponible sur demande) était pour la chaîne de certificats et que j'avais le certificat intermédiaire installé correctement. Les sites s'affichent sans erreur à ma connaissance dans Chrome, Safari, Edge ou Opera.
Après quelques recherches, Cryptons ! semblait être une offre attrayante, et avant longtemps j'avais (AFAICT) une clé privée et un certificat pour chaque domaine sous /etc/apache2/sites-enabled, moins bien sûr tous les domaines qui ne sont plus les miens. Je me suis dit que j'allais faire un essai et établir une connexion HTTPS à un site qui n'est maintenant disponible que sous HTTP : JSH.nom . J'ai déplacé le certificat et la clé privée "Let's Encrypt !" dans mon répertoire SSL et j'ai ajouté :
<VirtualHost *:443>
ServerAdmin cjshayward@pobox.com
DocumentRoot /home/jonathan/stornge
SSLEngine On
SSLCertificateFile /etc/apache2/ssl/0000_csr-letsencrypt.pem
SSLCertificateKeyFile /etc/apache2/ssl/0000_key-letsencrypt.pem
ServerName jsh.name
ServerAlias www.jsh.name
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\"" combined
CustomLog /home/jonathan/logs/stornge.com combined
<Directory /home/jonathan/stornge/>
Options ExecCGI Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
</VirtualHost>
Puis j'ai redémarré pour voir mon travail, et toutes les requêtes HTTP ou HTTPS que j'ai faites se sont simplement bloquées. Cela incluait deux domaines en HTTPS avec mon certificat StartSSL, et le domaine qui aurait dû être nouvellement disponible en HTTPS accédé à la fois par HTTP et HTTPS. J'ai commenté le VirtualHost et fait rebondir Apache, et toutes les anciennes fonctionnalités étaient de nouveau en état de marche.
Ai-je utilisé Let's "Encrypt !" correctement ? Je suis légèrement suspicieux car la configuration SSL existante possède des clés privées avec une extension .key, un certificat avec une extension .crt et un fichier de chaîne de certificats avec une extension .pem.
J'ai réessayé après avoir vérifié le répertoire SSL et constaté que 0000_csr.letsencrypt.pem était en mode 644 ; j'ai changé tous les fichiers de ce répertoire en mode 600. Lorsque j'ai essayé il y a un instant, j'ai obtenu une répétition de l'ancien comportement : le site web se bloque sur toutes les demandes et, en plus, un message d'erreur apachectl restart
obtient une déclaration (j'ai oublié la formulation exacte) indiquant que httpd n'est pas en cours d'exécution et que l'ordinateur essaie de le démarrer.
Comment puis-je obtenir des certificats gratuits fonctionnels pour "Let's Encrypt" ou un autre outil qui n'a pas aliéné Firefox ?
Un site apachectl -v
donne :
Server version: Apache/2.4.10 (Debian)
Server built: Nov 28 2015 14:05:48
A uname -a
donne :
Linux www 4.4.0-x86_64-linode63 #2 SMP Tue Jan 19 12:43:53 EST 2016 x86_64 GNU/Linux
--UPDATE--
Contenu supprimé, 0000_key-letsencrypt.pem est délimité par :
-----BEGIN PRIVATE KEY-----
-----END PRIVATE KEY-----
Une recherche sur la hiérarchie des répertoires donne.. :
root@www:/etc/letsencrypt# find \`pwd\` -print
/etc/letsencrypt
/etc/letsencrypt/keys
/etc/letsencrypt/keys/0000\_key-letsencrypt.pem
/etc/letsencrypt/accounts
/etc/letsencrypt/accounts/acme-v01.api.letsencrypt.org
/etc/letsencrypt/accounts/acme-v01.api.letsencrypt.org/directory
/etc/letsencrypt/accounts/acme-v01.api.letsencrypt.org/directory/1ef8dc9b994b9b68a4e9c7cedd003be3
/etc/letsencrypt/accounts/acme-v01.api.letsencrypt.org/directory/1ef8dc9b994b9b68a4e9c7cedd003be3/private\_key.json
/etc/letsencrypt/accounts/acme-v01.api.letsencrypt.org/directory/1ef8dc9b994b9b68a4e9c7cedd003be3/meta.json
/etc/letsencrypt/accounts/acme-v01.api.letsencrypt.org/directory/1ef8dc9b994b9b68a4e9c7cedd003be3/regr.json
/etc/letsencrypt/renewal
/etc/letsencrypt/options-ssl-apache.conf
/etc/letsencrypt/csr
/etc/letsencrypt/csr/0000\_csr-letsencrypt.pem
Le répertoire /home/jonathan/stornge et son contenu sont lisibles et exécutables dans le monde entier, là où cela fait une différence.
--UPDATE--
J'ajoute quelque chose de substantiel ici :
El http://OrthodoxChurchFathers.com Le fichier conf d'Apache a deux VirtualHosts, un pour servir http://OrthodoxChurchFathers.com et un autre pour rediriger http://www.OrthodoxChurchFathers.com demandes à http://OrthodoxChurchFathers.com . Le fichier .conf qui abrite les deux VirtualHosts est le suivant :
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName orthodoxchurchfathers.com
#ServerAlias www.orthodoxchurchfathers.com fathers.jonathanscorner.com
DocumentRoot /home/cjsh/fathers/document_root
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /home/cjsh/fathers>
Options ExecCGI FollowSymLinks Indexes MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
DirectoryIndex index.cgi index.html
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerAdmin CJSHayward@POBox.com
ServerName www.orthodoxchurchfathers.com
ServerAlias fathers.jonathanscorner.com
DocumentRoot /home/cjsh/oldmirror
RewriteEngine On
RewriteRule ^(.*)$ http://orthodoxchurchfathers.com$1 [R=301,L]
</VirtualHost></pre></code>
When I try to run it and request orthodoxchurchfathers.com alone, I get:
We were unable to find a vhost with a ServerName or Address of
orthodoxchurchfathers.com.
Which virtual host would you like to choose?
(note: conf files with multiple vhosts are not yet supported)
1 008-stornge.conf | Multiple Names |
2 014-paraskeva.conf | paraskeva.jonathansco |
3 036-unixytalk.conf | unixtalk.jsh.name |
4 038-proxy.conf | Multiple Names |
5 027-anna.conf | Multiple Names |
6 044-jobhunt-tracker.creation.c | Multiple Names |
7 049-jsh.conf | Multiple Names |
8 001-steampunk.conf | |
9 006-blajeny.conf | Multiple Names |
10 032-videos.conf | Multiple Names | d
(+)30%
The command I used was with ./letsencrypt-auto --debug certonly
.
5 votes
Le nom du fichier
0000_csr-letsencrypt.pem
suggère que vous avez inclus la demande de signature du certificat, et non le certificat signé. Chaque fichier dont vous avez besoin devrait se trouver dans un sous-répertoire de/etc/letsencrypt/live
avec votre nom de domaine. et un numéro de série, vous n'avez besoin de rien de/etc/letsencrypt/csr
oukeys
Avez-vous des entrées dans le fichier journal ?0 votes
Est-ce que Apache a le droit de lire
/home/jonathan/stornge
?