IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Apache Discussion :

Certificats ssl pour serveur apache


Sujet :

Apache

  1. #1
    Membre confirmé Avatar de nl.smart
    Homme Profil pro
    ouvrier
    Inscrit en
    Avril 2019
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : ouvrier
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2019
    Messages : 155
    Points : 534
    Points
    534
    Par défaut Certificats ssl pour serveur apache
    Bonjour,

    Dans le but de sécuriser mon home web server, je prends soin d'installer les certificats ssl.
    Ils ne sont pas générés par Let's Encrypt mais fournis par mon fournisseur dns.
    Jusqu'à présent pas de soucis avec la configuration du serveur apache via le port 80, serveur accessible en local comme depuis l’extérieur :-)

    voici mon fichier httpd-vhosts.conf fonctionnel avec le port 80 sans ssl

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    <VirtualHost *:80>
        ServerAdmin monsite@toto.fr
        DocumentRoot "/srv/http/www"
        ServerName www.monsite.fr
        <Directory /srv/http/www>
            Options Indexes FollowSymLinks
            AllowOverride All
            Require all granted
            DirectoryIndex index.php
            <Files .htaccess>
                Require all denied
            </Files>
        </Directory>
    </VirtualHost>

    Depuis que j'ai fait l'acquisition des fichiers pour le ssl, ça ne fonctionne plus, la connexion est refusée au site en local, message d'erreur sur le navigateur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    This site can't be reached
    www.monsite.fr refused to connect.
    Try:
    Checking the connection
    Checking the proxy and the firewall
    ERR_CONNECTION_REFUSED
    Le fichier httpd.conf d'apache a été adapté, ainsi les ports sont présents

    Listen 80
    Listen 443

    le module ssl_module est activé
    LoadModule ssl_module modules/mod_ssl.so

    DocumentRoot "/srv/http/www"

    voici les détails du fichier httpd-vhosts.conf avec le port 443 et le ssl en plus

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
    <VirtualHost *:80>
        ServerAdmin monsite@toto.fr
        DocumentRoot "/srv/http/www"
        ServerName www.monsite.fr
        Redirect permanent / https://www.monsite.fr/
        <Directory /srv/http/www>
            Options Indexes FollowSymLinks
            AllowOverride All
            Require all granted
            DirectoryIndex index.php
            <Files .htaccess>
                Require all denied
            </Files>
        </Directory>
    </VirtualHost>
     
    <VirtualHost *:443>
        ServerAdmin monsite@toto.fr
        DocumentRoot "/srv/http/www"
        ServerName www.monsite.fr
        <Directory /srv/http/www>
            Options Indexes FollowSymLinks
            AllowOverride All
            Require all granted
            DirectoryIndex index.php
            <Files .htaccess>
                Require all denied
            </Files>
        </Directory>
        #
        SSLEngine on
        SSLCertificateFile "/etc/ssl/private/www.toto.fr_ssl_certificate.cer"
        SSLCertificateKeyFile "/etc/ssl/private/www.toto.fr_private_key.key"
        SSLCertificateChainFile "/etc/ssl/private/www.toto.fr_ssl_certificate_INTERMEDIATE.cer"
    </VirtualHost>
    Est-ce que les fichiers cer et key sont suffisants pour assurer le ssl ?

    Dernier point, lorsque je commente la ligne "Redirect permanent / https://www.monsite.fr/ " qui est présente pour le port 80 le site est joignable mais pas en https via le port 443...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <VirtualHost *:80>
        ServerAdmin <a href="mailto:monsite@toto.fr">monsite@toto.fr</a>
        DocumentRoot "/srv/http/www"
        ServerName <a href="http://www.monsite.fr" target="_blank">www.monsite.fr</a>
        #Redirect permanent / https monsite.fr
    ...
    Merci pour vos lumières.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    721
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2006
    Messages : 721
    Points : 1 876
    Points
    1 876
    Par défaut
    Avez-vous regardé les logs de Apache ?
    Probablement il y a une erreur qui vous dit pourquoi ça coince.

    En jetant un coup à votre configuration, je pense que le problème peut venir du format des fichiers. De mémoire Apache attend des certificats au format PEM.
    Il me semble que vous devriez alors convertir de .cer vers .crt, voici une piste: https://cheapsslsecurity.com/p/how-t...rt-in-openssl/

  3. #3
    Membre confirmé Avatar de nl.smart
    Homme Profil pro
    ouvrier
    Inscrit en
    Avril 2019
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : ouvrier
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2019
    Messages : 155
    Points : 534
    Points
    534
    Par défaut
    Merci pour votre réponse et les conseils.

    Les fichiers .cer, après vérifications, sont bien encodés au format PEM

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    [nls@lap ~]$ file www.toto.fr_ssl_certificate_INTERMEDIATE.cer
    www.toto.fr_ssl_certificate_INTERMEDIATE.cer: PEM certificate
    J'ai converti les fichiers .cer en .crt et renommé ce qui devait l’être dans le fichier httpd-vhosts.conf, relancé apache...

    Un passage du coté du journal d'erreur avait été fait, mais il me parle peu, voila les données du journal lorsque je me connecte sans ssl port 80
    Les seules erreurs "normales" pour moi sont les pages 45 et 3 qui ne sont volontairement pas accessibles pour l'instant, par contre les 4 premières lignes donnent des infos

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    [Wed May 17 07:44:57.278412 2023] [mpm_prefork:notice] [pid 375] AH00170: caught SIGWINCH, shutting down gracefully
    [Wed May 17 07:44:57.485234 2023] [ssl:warn] [pid 1507] AH01873: Init: Session Cache is not configured [hint: SSLSessionCache]
    [Wed May 17 07:44:57.525467 2023] [mpm_prefork:notice] [pid 1507] AH00163: Apache/2.4.57 (Unix) OpenSSL/3.0.8 PHP/8.2.5 configured -- resuming normal operations
    [Wed May 17 07:44:57.525518 2023] [core:notice] [pid 1507] AH00094: Command line: '/usr/bin/httpd -D FOREGROUND'
    [Wed May 17 07:45:23.395081 2023] [php:warn] [pid 1514] [client 192.168.1.2:55022] PHP Warning:  include(PHP/_Connexion.php): Failed to open stream: No such file or directory in /srv/http/www/index.php on line 185, referer: http://192.168.1.44/index.php?page=45
    [Wed May 17 07:45:23.395217 2023] [php:warn] [pid 1514] [client 192.168.1.2:55022] PHP Warning:  include(): Failed opening 'PHP/_Connexion.php' for inclusion (include_path='.:') in /srv/http/www/index.php on line 185, referer: http://192.168.1.44/index.php?page=45
    [Wed May 17 07:45:23.960844 2023] [php:warn] [pid 1514] [client 192.168.1.2:55022] PHP Warning:  include(PHP/_Connexion.php): Failed to open stream: No such file or directory in /srv/http/www/index.php on line 185, referer: http://192.168.1.44/index.php?page=3
    [Wed May 17 07:45:23.960928 2023] [php:warn] [pid 1514] [client 192.168.1.2:55022] PHP Warning:  include(): Failed opening 'PHP/_Connexion.php' for inclusion (include_path='.:') in /srv/http/www/index.php on line 185, referer: http://192.168.1.44/index.php?page=3

    Le journal d'erreur une fois le ssl et le port 443 activés
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    [Wed May 17 07:53:50.484033 2023] [mpm_prefork:notice] [pid 1507] AH00170: caught SIGWINCH, shutting down gracefully
    [Wed May 17 07:53:50.675481 2023] [ssl:warn] [pid 1749] AH01873: Init: Session Cache is not configured [hint: SSLSessionCache]
    [Wed May 17 07:53:50.715096 2023] [mpm_prefork:notice] [pid 1749] AH00163: Apache/2.4.57 (Unix) OpenSSL/3.0.8 PHP/8.2.5 configured -- resuming normal operations
    [Wed May 17 07:53:50.715172 2023] [core:notice] [pid 1749] AH00094: Command line: '/usr/bin/httpd -D FOREGROUND'
    Le message d'erreur dans le navigateur s'affiche donc encore lorsque je redirige le port 80 vers celui en 443 et le ssl

    Voilà pour ce que je peux fournir comme infos.

  4. #4
    Membre éprouvé
    Homme Profil pro
    Robotique
    Inscrit en
    Août 2007
    Messages
    624
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Robotique

    Informations forums :
    Inscription : Août 2007
    Messages : 624
    Points : 1 275
    Points
    1 275
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Redirect permanent / https monsite.fr
    devrait plutôt ressembler à ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Redirect permanent / https://monsite.fr
    hth,

  5. #5
    Membre confirmé Avatar de nl.smart
    Homme Profil pro
    ouvrier
    Inscrit en
    Avril 2019
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : ouvrier
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2019
    Messages : 155
    Points : 534
    Points
    534
    Par défaut
    Merci pour votre réponse, c'est volontairement que j'ai négligé le chemin de redirection en postant sur le forum, en effet, l'écriture correcte faisait pointer vers un site réel, bizarre ça ne le fait plus, bref

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <VirtualHost *:80>
        ServerAdmin monsite@toto.fr
        DocumentRoot "/srv/http/www"
        ServerName www.monsite.fr
        Redirect permanent / https://www.monsite.fr/
        #
    ...
    La bonne nouvelle est que le site fonctionne bien en https, avec les certificats .key et .cer fournis, la solution est venue du journal d'erreur, en effet la ligne ci-dessous m'indique l'erreur à corriger

    [Wed May 17 07:44:57.485234 2023] [ssl:warn] [pid 1507] AH01873: Init: Session Cache is not configured [hint: SSLSessionCache]
    Une recherche m'a permis de mettre la main sur une solution, à savoir activer dans le fichier httpd.conf d'apache le module qu'il convenait, à savoir
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
    ajout des lignes suivantes dans httpd.conf

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    LoadModule ssl_module modules/mod_ssl.so
    # Session cache configuration
    SSLSessionCache shmcb:/var/cache/httpd/ssl_gcache_data(512000)
    SSLSessionCacheTimeout 300
    puis toujours dans le fichier httpd.conf

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <IfModule ssl_module>
        SSLRandomSeed startup builtin
        SSLRandomSeed connect builtin
        SSLSessionCache shmcb:/var/cache/httpd/ssl_gcache_data(512000)
        SSLSessionCacheTimeout 300
    </IfModule>
    et enfin création d'un dossier pour le cache de session du serveur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sudo nano /etc/var/cache/httpd/
    Le seul problème qui subsiste est le fait que je ne parvienne pas à accéder au site en local mais du net... si vous avez une piste je suis preneur.

    je passe donc le poste en résolu, les certificats étant fonctionnels, encore merci pour vos lumières.

  6. #6
    Membre éprouvé
    Homme Profil pro
    Robotique
    Inscrit en
    Août 2007
    Messages
    624
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Robotique

    Informations forums :
    Inscription : Août 2007
    Messages : 624
    Points : 1 275
    Points
    1 275
    Par défaut
    Citation Envoyé par nl.smart Voir le message
    Le seul problème qui subsiste est le fait que je ne parvienne pas à accéder au site en local mais du net... si vous avez une piste je suis preneur.
    Bonjour,

    Content que votre site fonctionne

    Vous pourriez préciser le problème ?
    comment accédez-vous au site en local et sur le net ?
    Que vous soyez en local ou ailleurs, monsite.fr doit fonctionner.

  7. #7
    Membre confirmé Avatar de nl.smart
    Homme Profil pro
    ouvrier
    Inscrit en
    Avril 2019
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : ouvrier
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2019
    Messages : 155
    Points : 534
    Points
    534
    Par défaut
    Merci pour votre message, en effet le site web n'était pas accessible en local, mais bien depuis l'extérieur de mon domicile (tests réalisés au domicile de 2 personnes ainsi que depuis un smartphone avec les données mobiles activées)

    En cherchant une solution au soucis rencontré lors de la connexion en local, il s’avère qu'il suffisait tout simplement de nettoyer le cache des navigateurs dont je fais l'usage, la connexion est ainsi bien établie en local depuis le serveur web.

  8. #8
    Membre éprouvé
    Homme Profil pro
    Robotique
    Inscrit en
    Août 2007
    Messages
    624
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Robotique

    Informations forums :
    Inscription : Août 2007
    Messages : 624
    Points : 1 275
    Points
    1 275
    Par défaut

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Certificats / SSL sur serveur dédié
    Par onime_no_squat dans le forum 1&1
    Réponses: 2
    Dernier message: 03/01/2011, 17h38
  2. utilisation de SSL pour serveur ldap
    Par yuefei dans le forum API, COM et SDKs
    Réponses: 1
    Dernier message: 16/07/2009, 19h00
  3. Debug d'une DLL ISAPI pour serveur Apache
    Par patchichi dans le forum Visual C++
    Réponses: 4
    Dernier message: 13/09/2007, 10h55
  4. [APACHE] Chx d'un OS + Machine pour Serveur Apache
    Par Mattius007 dans le forum Apache
    Réponses: 8
    Dernier message: 26/04/2006, 18h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo