GESTION APACHE SSL EN FRONT
Transcription
GESTION APACHE SSL EN FRONT
GESTION APACHE SSL EN FRONT-END PROTOCOLE AJP QUESTION Est-il possible de définir un serveur Apache SSL en front-end d'orchestra en utilisant le protocole AJP ? RÉPONSE Oui, il est possible d'utiliser NQI-Orchestra avec un serveur Apache SSL configuré en reverse proxy pour permettre le routage des serveurs web et d'effectuer la communication entre apache et NQI Orchestra en utilisant le protocole AJP. TUTORIEL Environnement OS/Programme Version Système d'exploitation Linux Ubuntu 12.04 NQI-Orchestra Orchestra 4.0 Serveur Apache 2.2.22 Base de données Postgresql 9.1 Serveur DNS bind9 Topologie réseau La géstion de la connexion https est laissée au serveur Apache. C'est lui qui décode les requêtes et encode les réponses HTTP. Configuration Serveur NQI-Orchestra Le serveur NQI-Orchestra sera tout d'abord configuré normalement, suivant la procédure du guide d'installation. Le serveur NQI-Orchestra sera configuré normalement, suivant la procédure du guide d'installation. Configuration Serveur Apache Après installation du serveur Apache 2.2.14 sur le serveur linux , il faut activer et paramétrer le module proxy et rewriting. Pour cela, il faut activer les modules suivants : proxy proxy_ajp proxy_http ssl Allez dans le répertoire /etc/apache2/mods-enabled et activer les modules suivants: sudo sudo sudo sudo a2enmod a2enmod a2enmod a2enmod proxy proxy_ajp proxy_http ssl Information Pour plus d'informations sur la configuration d'Apache, cf http://httpd.apache.org/ Un fichier avec la configuration suivante prendra en charge le serveur NQI-Orchestra (fichier sites-available/orchestra) Le reverse proxy en mode se connectera au port ajp du serveur JBoss (Défaut 8009. Voir Exploitation - Serveur d'Application) /etc/apache2/sites-available/orchestra <VirtualHost *:80> ServerName monorchestra.mondomain.com Redirect / https://monorchestra.mondomain.com/ </VirtualHost> <VirtualHost *:443> ServerAdmin [email protected] ServerName monorchestra.mondomain.com SSLEngine On SSLCertificateFile /path/to/mycertificatefile.crt SSLCertificateKeyFile /path/to/mykeyfile.key SSLCertificateChainFile /path/to/mychainfile.crt <Proxy *> Order deny,allow Allow from all </Proxy> ProxyRequests Off ## ProxyPreserveHost default value is Off ProxyPreserveHost On ProxyTimeout 3600 ProxyPass / ajp://localhost:8009/ CustomLog /var/log/apache2/monorchestra.log combined ErrorLog /var/log/apache2/monorchestra_error.log <IfModule mod_deflate.c> AddOutputFilterByType DEFLATE application/json text/json text/html text/xml text/css text/javascript application/x-javascript application/javascript application/vnd.ms-excel </IfModule> </VirtualHost> Compression des flux Le protocole AJP ne permet pas de compresser les flux au niveau de JBoss contrairement au protocole HTTP. Les dernières lignes de la configuration apache permettent de compresser les flux de type json, text, javascript, ... entre le serveur apache et le poste client afin de réduire les temps de transfert. NB : le module apache deflate doit être activé pour que cette directive soit prise en compte. Un autre fichier s'occupera de gérer le serveur tiers (fichier sites-available/drupal). Celui-ci pourra être accessible en HTTP ou en HTTPS. /etc/apache2/sites-available/drupal <VirtualHost *> ServerAdmin [email protected] DocumentRoot /var/www/drupal ServerName drupal.mondomain.com CustomLog /var/log/apache2/drupal.log combined <Directory "/var/www/drupal"> allow from all Options -Indexes order allow,deny </Directory> </VirtualHost> Attention Ne pas oublier d'activer les sites : sudo a2ensite orchestra sudo a2ensite drupal Redémarrez le serveur Apache et testez les accès aux différents serveurs