Forum Linux.général Config apache2 identique avec ou sans SSL

Posté par  (site web personnel, Mastodon) .
Étiquettes :
0
21
avr.
2005
Bonjour,

J'aimerais configurer apache2 avec SSL sur mon serveur Debian Sarge pour que la config avec ou sans SSL soit exactement identique.

(que chaque page soit accessible ou non avec SSL, au choix)

J'ai déjà un fichier certificat apache.pem de ma config apache-ssl, mais je ne sais pas trop quoi en faire.

Toutes les infos que je trouve sur le net concerne, comme avant avec apache-ssl, comment faire une config particulière pour la partie SSL, ce qui n'est pas ce que je cherche.

Qqn a une idée à ce sujet ?

Merci d'avance
  • # tant que j'y suis..

    Posté par  (site web personnel, Mastodon) . Évalué à 2.

    Qqn pour me dire les avantages/désavantages de apache2 par rapport à apache1.4 ?

    (à part la propreté de la config, qui est bluffante)

    Mes livres CC By-SA : https://ploum.net/livres.html

    • [^] # Re: tant que j'y suis..

      Posté par  . Évalué à 3.

      Tout et rien a la fois, Apache 1.4 n'existe pas :P

      Pour le reste, la liste est la :
      http://httpd.apache.org/docs-2.0/new_features_2_0.html(...)

      Ca va du meilleur support multi-plateformes a l'IPV6 en passant par une remise a plat du systeme de build, etc...

      Surtout, une meilleur gestion des threads (sauf si tu utilises la version prefork, ce qui est generalement le cas avec le PHP)

      Au passage, il y a une meilleure separation entre les API qui gerent le HTTP ou sont plus generiques, ce qui donne la libapr. Cette derniere peut etre reutilisee dans d'autres projets.

      Bon, et a cause de toi, je viens de tomber sur mod-echo, ca me donne une furieuse envie de tenter un mod-jabber et un mod-ssh...
      • [^] # Re: tant que j'y suis..

        Posté par  (site web personnel, Mastodon) . Évalué à 2.

        et ça ferait quoi mod-jabber ?

        Mes livres CC By-SA : https://ploum.net/livres.html

        • [^] # Re: tant que j'y suis..

          Posté par  . Évalué à 2.

          Redirection de flux vers un serveur jabber.

          Le genre de machin qu'il serait bien utile pour avoir acces a apache ET jabber sur le port 443 sur la meme machine, ce qu'on est bien content d'avoir quand on est derriere un proxy un peu restrictif :) Meme idee pour le mod-ssh. Je crois qu'il y a deja un mod-pop3 qui traine aussi.

          Un projet avait visiblement debute (cf une recherche de mof-jabber sous google), mais a l'air assez mort, helas...

          Bon, par contre ca risque de faire comme ma precedente tentative de module apache (mod_musicindex). Je vais y penser pendant 6 mois, et m'y mettre d'un seul coup pour bosser 4 jours de suite.
          • [^] # Re: tant que j'y suis..

            Posté par  (site web personnel, Mastodon) . Évalué à 2.

            mais c'est génial ça ! Je serais hyper enthousiaste de pouvoir installer ça sur fritalk.com pour permettre à tout le monde d'accéder au serveur Jabber !!

            Mais en pratique, comment ça marche ? Comment il sait quelles requêtes sont pour qui ?

            Mes livres CC By-SA : https://ploum.net/livres.html

            • [^] # Re: tant que j'y suis..

              Posté par  . Évalué à 2.

              Justement, c'est une des nouveautes d'Apache2, la possibilite de travailler sur d'autres protocols que le HTTP pur.

              En pratique, ca a l'air de faire partie de la nouvelle infrastructure de gestions des requetes d'Apache, ou l'on peut avoir des modules a differentes etapes du (des ?) protocol(s).

              Je me pose aussi des questions aussi sur le comment exactement, principalement la differentiation entre les differentes connexions, etc... mais j'ai deplus en plus envie de me lancer la-dedans. Il faudra que j'essaie mod-echo histoire de comprendre mieux.

              Sur ce, je me motive, entretien d'embauche dans 2h30...
  • # Avec des NameVirtualHost

    Posté par  . Évalué à 2.

    J'ai une config qui ressemble un peu à ca sous Apache 1.3.

    En gros j'ai ca dans mon httpd.conf :

    Listen 195.140.143.44:80
    Listen 195.140.143.44:443

    NameVirtualHost www.xxx.yyy.zzz:80
    NameVirtualHost www.xxx.yyy.zzz:443

    <VirtualHost www.xxx.yyy.zzz:443>
    SSLEngine on
    SSLCertificateFile /etc/apache/certs/server_crt.pem
    SSLCertificateKeyFile /etc/apache/certs/server_key.pem.unsecure
    </VirtualHost>

    Bon après ca dépent pas mal si tu utilises des VirtualHost etc... Surtout que si tu as différents hosts ton certificat ssl n'ira pas pour tous les noms et tu aura un méchant avertissement côté browser.

    --
    Thomas
    • [^] # Re: Avec des NameVirtualHost

      Posté par  . Évalué à 1.

      Bon après ca dépent pas mal si tu utilises des VirtualHost ...

      Ben en fait t'as pas trop le choix: pour faire du SSL, y'a que deux possibilités: soit activer le module dans la section principale de la configuration (et dans ce cas c'est tout le serveur qui tournera en ssl!), soit créer un virtual host sur le port 443 (cf doc d'apache pour la directive SSLEngine http://httpd.apache.org/docs-2.0/mod/mod_ssl.html#sslengine(...) : context: server config, virtual host

      que chaque page soit accessible ou non avec SSL, au choix...

      Un peu comme cet excellent site --> https://linuxfr.org(...) ;-P
  • # Exemple

    Posté par  . Évalué à 1.

    Voila un exemple de configuration qui devrait te convenir (à adapter à ta config). J'ai pris un serveur sur un réseau privé (192.168.xxx.xxx) sans nom DNS, je suppose que tu as tout ce qu'il faut au niveau certificat (Note que c'est les fichiers de conf win32 que j'ai adapté (pas de deb sous la main), sous debian la conf se trouve dans /etc/apache2 dans plusieurs fichiers) :
    [httpd.conf]
    ServerRoot /etc/apache2
    Listen 192.168.0.1:80
    ServerName 192.168.0.1:80
    DocumentRoot /var/www
    
    <Directory /var/www/>
        Options FollowSymLinks
        AllowOverride None
    < /Directory>
    
    <IfModule mod_ssl.c>
        Include conf/ssl.conf
    < /IfModule>
    . . .
    . . .
    # EOF
    
    [ssl.conf]
    # configuration du générateur aléatoire
    # sous win32, seul builtin est dispo
    SSLRandomSeed startup builtin
    SSLRandomSeed connect builtin
    
    # l'endroit (fichier) ou stocker le cache ssl, cf
    # http://httpd.apache.org/docs-2.0/mod/mod_ssl.html(...)
    # pour les autres options disponibles
    SSLSessionCache dbm:/chemin/vers/ssl_cache
    
    <IfDefine SSL>
    
    # où apache doit ecouter? par défaut toutes les
    # interfaces sur le port 443 (https)
    # /!\ complémentaire de ServerName qui donne
    # seulement le nom du serveur !
    # Listen 443
    Listen 192.168.0.1:443
    
    # définit les types mimes nécessaires
    AddType application/x-x509-ca-cert .crt
    AddType application/x-pkcs7-crl    .crl
    
    # cf doc ...
    SSLPassPhraseDialog  builtin
    SSLSessionCacheTimeout  300
    SSLMutex default
    
    # création d'un hôte virtuel par IP
    # /!\ rechercher sur google.com pour
    # la différence entre hôte par ip et
    # par nom et l'impact au niveau certificat
    <VirtualHost 165.5.12.241:443>
    
      ServerName 192.168.0.1:443
      ServerAdmin admin@localhost.localdomain
    
      # la racine des documents
      DocumentRoot /var/www
    
      #configuration du log
      CustomLog /var/log/Apache2/access.log common
      ErrorLog /var/log/apache2/error.log
      LogLevel warn
    
      #configuration SSL
      SSLEngine on
      SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
    
      # où trouver les certificats ?
      SSLCertificateFile "conf/ssl/192.168.0.1.crt"
      SSLCertificateKeyFile "conf/ssl/192.168.0.1.key"
      SSLCertificateChainFile "conf/ssl/ca.crt"
    
      # workaround pour les browser mal foutus ;-)
      SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown \
             downgrade-1.0 force-response-1.0
    
    < /VirtualHost>
    < /IfDefine>
    # EOF
    
    Quelques précisions: - consulte la doc sur le site apache pour toutes les options dispo (je sais c'est en anglais mais au moins y'a tout sans erreur de traduction!) - ta clé privée ne doit pas être cryptée ou tu dois ajouter une option (SSLPassPhraseDialog) pour indiquer à apache la clé de déchiffrage au démarrage d'apache - le DocumentRoot du serveur principal et de l'hôte virtuel doivent pointer sur le même répertoire (pour avoir le même contenu :-P) Voilà, ca devrait marcher comme çà! Bonne chance, Jay

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.