Bonjour,
je ne sais si je suis au bon endroit mais comme il s'agit de sécuriser une connexion http...
Mon premier essai avec certbot ayant échoué et manquant de temps j'avais opté pour ZeroSSL qui est gratuit... 3 fois !
Actuellement ZeroSSL est actif jusqu'au 2 juillet.

J'ai donc cherché pour installer certbot.
snapd,( pas dispo en rpm) ne voulait pas s'installer car il me manquait squashfuse et ne se lançait pas car il fallait aussi kernel-modules.
Passé ces préliminaires
J'ai lancé la commande
# certbot certonly --apache
et n'ai pas rencontré d'erreur
Successfully received certificate.
Certificate is saved at: /etc/letsencrypt/live/monsite.ovh/fullchain.pem
Key is saved at:         /etc/letsencrypt/live/monsite.ovh/privkey.pem
This certificate expires on 2022-09-25.
These files will be updated when the certificate renews.
Certbot has set up a scheduled task to automatically renew this certificate in the background.
J'ai copié ces lignes dans mon virtualhost et là ça bloque
<VirtualHost *:443>
         ServerName   monsite.ovh
SSLEngine                on
SSLCertificateChainFile         /etc/letsencrypt/live/monsite.ovh/fullchain.pem
SSLCertificateKeyFile    /etc/letsencrypt/live/monsite.ovh/privkey.pem
        # Dossier contenant les pages
       DocumentRoot /var/www/html
        <Directory /var/www/html/>
               Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
                AllowOverride FileInfo AuthConfig Limit
        </Directory>
        ErrorLog logs/monsite-error.log
</VirtualHost>
apache ne peut démarrer et journalctl me renvoie :
# journalctl -xeu httpd.service
░░ A stop job for unit httpd.service has finished.
░░ 
░░ The job identifier is 3294 and the job result is done.
Jun 28 11:41:59 vpsxxxx.ovh.net systemd[1]: httpd.service: Consumed 56.098s CPU time.
░░ Subject: Resources consumed by unit runtime
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░ 
░░ The unit httpd.service completed and consumed the indicated resources.
Jun 28 11:41:59 vpsxxxx.ovh.net systemd[1]: Starting The Apache HTTP Server...
░░ Subject: A start job for unit httpd.service has begun execution
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░ 
░░ A start job for unit httpd.service has begun execution.
░░ 
░░ The job identifier is 3294.
Jun 28 11:41:59 vpsxxxx.ovh.net systemd[1]: httpd.service: Main process exited, code=exited, status=1/FAILURE
░░ Subject: Unit process exited
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░ 
░░ An ExecStart= process belonging to unit httpd.service has exited.
░░ 
░░ The process' exit code is 'exited' and its exit status is 1.
Jun 28 11:41:59 vpsxxxx.ovh.net systemd[1]: httpd.service: Failed with result 'exit-code'.
░░ Subject: Unit failed
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░ 
░░ The unit httpd.service has entered the 'failed' state with result 'exit-code'.
Jun 28 11:41:59 vpsxxxx.ovh.net systemd[1]: Failed to start The Apache HTTP Server.
░░ Subject: A start job for unit httpd.service has failed
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░ 
░░ A start job for unit httpd.service has finished with a failure.
░░ 
░░ The job identifier is 3294 and the job result is failed.
je ne sais trop que penser...
Merci de votre attention

Gérard
Tu as regardé les logs d'Apache dans /var/log/httpd/ ?

Que retourne
$ apachectl configtest
$ httpd -S
de fait /var/log/httpd/
[Wed Jun 29 08:49:07.281106 2022] [ssl:emerg] [pid 13900:tid 13900] AH02572: Failed to configure at least one certificate and key for monsite.ovh:443
[Wed Jun 29 08:49:07.281170 2022] [ssl:emerg] [pid 13900:tid 13900] SSL Library Error: error:140A80B1:SSL routines:SSL_CTX_check_private_key:no certificate assigned
$ apachectl configtest
Syntax OK
httpd -S
VirtualHost configuration:
*:80                   aaaaa (/etc/httpd/conf.d/messites.conf:1)
*:443                  is a NameVirtualHost
         default server monsite.ovh (/etc/httpd/conf.d/messites.conf:30)
         port 443 namevhost monsite.ovh (/etc/httpd/conf.d/messites.conf:30)
         port 443 namevhost monsite.ovh (/etc/httpd/conf.d/ssl.conf:56)
ServerRoot: "/etc/httpd"
Main DocumentRoot: "/var/www/html"
Main ErrorLog: "/etc/httpd/logs/error_log"
Mutex watchdog-callback: using_defaults
Mutex proxy-balancer-shm: using_defaults
Mutex rewrite-map: using_defaults
Mutex ssl-stapling-refresh: using_defaults
Mutex authdigest-client: using_defaults
Mutex lua-ivm-shm: using_defaults
Mutex ssl-stapling: using_defaults
Mutex proxy: using_defaults
Mutex authn-socache: using_defaults
Mutex ssl-cache: using_defaults
Mutex default: dir="/etc/httpd/run/" mechanism=default 
Mutex cache-socache: using_defaults
Mutex authdigest-opaque: using_defaults
PidFile: "/etc/httpd/run/httpd.pid"
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="apache" id=48
Group: name="apache" id=48
que penser de : https://stackoverflow.com/questions/46832644/apache-wont-load-certificate :
I found my issue, it was in the ssl.conf. Apparently you need to have the certs for ssl in the global ssl.conf and not in a vhost.conf.
Merci
Tu as renseigné dans /etc/httpd/conf.d/ssl.conf les entrées SSLCertificateFile et SSLCertificateKeyFile ?
Je viens d'essayer en mettant les entrées uniquement dans ssl.conf et à la fois dans le virtualhost et ssl.conf. Échec dans les deux cas
Dans /var/log/ssl_error.log il y a
[Wed Jun 29 20:07:42.236148 2022] [ssl:warn] [pid 15550:tid 15550] AH01909: vpsxxxxx.ovh.net:443:0 server certificate does NOT include an ID which matches the server name
Tu as d'autres vhost dans /etc/httpd/conf.d/messites.conf ?

Juste comme ça, ton serveur Apache fonctionne ?
Tu accèdes à ton site en https ?
rien d'autre que ce qui est indiqué qu post #3
apache marche et j'accède au https avec la config zerossl
Donc si tu mets ton certificat zerossl ça fonctionne mais pas avec letsencrypt.
J'avais omis ce premier point...

Ce n'était pas plutôt la commande suivante qu'il fallait faire pour configurer Apache
 # certbot --apache
Salut fgland,

Nicosss est parti faire une sieste, du coup j'en profite pour poser 2 ptites questions :
ls -l /etc/letsencrypt/live/monsite.ovh/fullchain.pem
/etc/letsencrypt/live/monsite.ovh/privkey.pem est un lien symbolique, peux-tu faire un 'ls -l' du fichier final, s'il te plait.

Ça c'est pour la piste d'un pb de permissions (dans ton post initial).

Ensuite ya la piste du pb de "server name" :
openssl x509 -in /etc/letsencrypt/live/monsite.ovh/fullchain.pem -text -noout
Dans l'ouput, cherche la ligne "Subject: CN = monsite.ovh"

J'ai repris l'exemple de ton fichier de config apache "ServerName monsite.ovh". Normallement, faut que ce soit pareil.
/-rw-r--r--. 1 root root 1870 Jun 27 12:43 cert1.pem
-rw-r--r--. 1 root root 3749 Jun 27 12:43 chain1.pem
-rw-r--r--. 1 root root 5619 Jun 27 12:43 fullchain1.pem
-rw-------. 1 root root 1704 Jun 27 12:43 privkey1.pem
/
J'ai relancé la commande global : certbot --apache mais j'obtient cette erreur
Successfully deployed certificate for monsite.ovh to /etc/httpd/conf.d/messites.conf
Failed redirect for monsite.ovh
Unable to set the redirect enhancement for monsite.ovh.

NEXT STEPS:
- The certificate was saved, but could not be installed (installer: apache). After fixing the error shown below, try installing it again by running:
  certbot install --cert-name monsite.ovh

Unable to find corresponding HTTP vhost; Unable to create one as intended addresses conflict; Current configuration does not support automated redirection
pourtant le certificat est bien pris en compte.
Dans mes recherches, il semblerait qu'il me manque
RewriteEngine On
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
avant le virtualhost
mais si c'est avant le virtualhost, cela veut-il dire qu'il ne peut y avoir de http sur ce serveur ?

Merci
J'ai l'impression que cerbot veut un site déclaré en vhost http *:80 et s'occupe de la redirection vers https.

La sieste c'est maintenant 😉
ok, je n’avais pas pris cette solution globale car je dois y mettre d'autres vhost.
La seule différence ququi doit expliquer le problème est après les clés
Include /etc/letsencrypt/options-ssl-apache.conf
Merci
Tout fonctionne ? Tu as fait quoi du coup ?

En effet, je n'avais pas fait le lien avec certbot et j'avais plus bloqué sur Let's Encrypt donc ça se confirme de base https://certbot.eff.org/ .

Edit : Ajout lien certbot
J'ai refait le certificat avec la commande certbot --apache qui écrit les bonnes lignes dans le fichier .conf alors que certbot certonly --apache ne fait que générer les clés.
Ayant pas mal tâtonné pour ce truc, cela vaut-il la peine d'en faire une doc ? Les navigateurs imposent de plus en plus l'utilisation de ssl en attendant la venue de ipfs.
Oui en effet ça vaudrait le coup pour les néophytes.

Il a rajouté quoi ? et où ?