Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 01/12/2020, à 13:14

notezik

Apache, Sous domaine qui pointe vers un autre serveur et SSL

Bonjour à toutes et tous,

J'ai donc un serveur perso chez moi nommé galois (locale IP1), et pour le décharger, j'ai installé une deuxième machine schwartz (local IP2).
J'ai un service (subsonic) qui fonctionne sur le port 4040 sur schwartz et je veux que musique.exemple.org (qui arrive sur galois après ma boxe internet) pointe vers IP2:4040.
Pour l'instant, sans parler de SSL pour l'instant, avec ça sur l'apache de galois :

<VirtualHost *:80>
    SSLProxyEngine On
    ProxyPreserveHost on
    ProxyRequests off
    ServerName musique.exemple.org
    ServerAdmin webmaster@exemple.org
    ProxyPass / http://IP2/
    ProxyPassReverse / http://IP2/
    RewriteEngine on                                                                                                                                                                      
</VirtualHost>

et sur ça sur  schwartz :

<VirtualHost *:80>
        ServerAdmin webmaster@exemple.org
        ServerName musique.exemple.org                                                                                                                                                                                                                              \
                                                                                                                                                                                                                                                              
            LogLevel warn
    CustomLog ${APACHE_LOG_DIR}/subsonic-access.log combined
    ErrorLog ${APACHE_LOG_DIR}/subsonic-error.log
    <Location / >
        RequestHeader unset Accept-Encoding
        ProxyPass http://localhost:4040/
        ProxyPassReverse http://localhost:4040/
        Order allow,deny
        Allow from all
   </Location>                                                                                                                                                                                
</VirtualHost>

ça fonctionne. Mais je veux des certificats SSL sur ce service. Donc ma question, c'est quelle est la bonne procédure (le certificat et letsencrypte sur quelle machine) ? J'ai un certbot sur chaque machine. J'ai essayé différents trucs mais j'ai toujours des problèmes sur le service subsonic où Firefox m'indique que la connexion n'est pas sécurisé et qui bloque des trucs (genre le lien paramètres d usite ne fonctionne pas).

J'espère être clair.

Merci.

Hors ligne

#2 Le 03/12/2020, à 08:56

bruno

Re : Apache, Sous domaine qui pointe vers un autre serveur et SSL

Bonjour,

Le certificat SSL doit être sur le serveur frontal, c'est le plus simple. Donc configuré sur le premier hôte virtuel que tu as indiqué.

#3 Le 03/12/2020, à 22:11

notezik

Re : Apache, Sous domaine qui pointe vers un autre serveur et SSL

Merci beaucoup. Y'a sans doute un truc que je n'ai pas compris, car pour que ça fonctionne, il me faut aussi générer des certificats ssl sur la machine2 (pas la frontale).
Je mets ma config du coup. J'ai mis côté frontale (machine1), avec une redirection ssl automatique (certbot qui a fait ça) :

<IfModule mod_ssl.c>
<VirtualHost *:443>
    ServerName musique.exemple.org
    ServerAdmin webmaster@exemple.org
    SSLProxyEngine On
    ProxyPreserveHost on
    ProxyRequests off
    <Proxy *>
        Order deny,allow
        Allow from all
    </Proxy>

    ProxyPass / https://IP2/
    ProxyPassReverse / https://IP2/
    <Location />
        Order allow,deny
        Allow from all
    </Location>
    #RewriteEngine on                                                                                                                                                                                                                                         
    # Some rewrite rules in this file were disabled on your HTTPS site,                                                                                                                                                                                       
    # because they have the potential to create redirection loops.                                                                                                                                                                                            



SSLCertificateFile /etc/letsencrypt/live/musique.exemple.org/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/musique.exemple.org/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>
</IfModule>

et côté machine2 :

<IfModule mod_ssl.c>
<VirtualHost *:443>
        ServerAdmin webmaster@exemple.org
        ServerName musique.exemple.org
        # Serversignature off                                                                                                                                                                                                                                \
                                                                                                                                                                                                                                                              
            LogLevel warn
    CustomLog ${APACHE_LOG_DIR}/subsonic-access.log combined
    ErrorLog ${APACHE_LOG_DIR}/subsonic-error.log
    <Location / >
        RequestHeader unset Accept-Encoding
        ProxyPass http://localhost:4040/
        ProxyPassReverse http://localhost:4040/
        Order allow,deny
        Allow from all
   </Location>
SSLCertificateFile /etc/letsencrypt/live/musique.exemple.org/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/musique.exemple.org/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>
</IfModule>

Si je n'envoie pas en https depuis la frontale (machine1), ça ne fonctionne pas. Donc j'ai du aussi lancer certbot sur machine2.

Hors ligne

#4 Le 04/12/2020, à 08:18

bruno

Re : Apache, Sous domaine qui pointe vers un autre serveur et SSL

Oui c'est un peu trop compliqué comme configuration. Cela vient probablement du fait que tu utilises le proxy en HTTPS sur la machine 1 :

…
    ProxyPass / https://IP2/
    ProxyPassReverse / https://IP2/

Je pense que tu n'as pas besoin du serveur apache sur la machine 2 et que cet hôte virtuel sur la machine 1 suffit :


<IfModule mod_ssl.c>
<VirtualHost *:443>
    ServerName musique.exemple.org
    ServerAdmin webmaster@exemple.org

    SSLEngine on  
    SSLProxyEngine on

    ProxyRequests off
    ProxyPreserveHost on
    ProxyPass / http://IP2:4040/
    ProxyPassReverse / http://IP2:4040/
                                                                                                                                                                                  
   SSLCertificateFile /etc/letsencrypt/live/musique.exemple.org/fullchain.pem
   SSLCertificateKeyFile /etc/letsencrypt/live/musique.exemple.org/privkey.pem
   Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>
</IfModule>

→ on redirige les requêtes HTTPS arrivant sur la machine 1 vers le port 4040 de la machine 2 (en HTTP).

Dernière modification par bruno (Le 04/12/2020, à 08:23)

#5 Le 07/12/2020, à 15:16

notezik

Re : Apache, Sous domaine qui pointe vers un autre serveur et SSL

Merci beaucoup pour la réponse. Malheureusement, sur le service subsonic, avec cette config, firefox m'indique qu'il y a des contenus non sécurisé qu'il a bloqué (notamment le lien vers la gestion des paramètres du subsonic).

Hors ligne

#6 Le 07/12/2020, à 16:27

bruno

Re : Apache, Sous domaine qui pointe vers un autre serveur et SSL

Dans ce cas il faut peut-être ajouter :

  SSLProxyVerify None
  SSLProxyCheckPeerCN Off
  SSLProxyCheckPeerName Off

#7 Le 08/12/2020, à 09:52

notezik

Re : Apache, Sous domaine qui pointe vers un autre serveur et SSL

Ça ne fonctionne pas non plus (même erreur du côté de firefox qui bloque le contenu non sécurisé).

Hors ligne

#8 Le 08/12/2020, à 10:20

bruno

Re : Apache, Sous domaine qui pointe vers un autre serveur et SSL

Je ne sais pas pourquoi. Il y a sans doute des particularités dues à subsonic.