27mar.2009
Certificats ssl pour du https vite fait mal fait :p

https speed c'est par la 
Cet article par du principe que vous avez compilé votre apache,
Pré requis :
- Openssl installé et fonctionnel sinon : article sur l'installation openssl
- Apache installé et fonctionnel sinon : article sur l'installation d'apache
Voici les lignes de commandes à taper dans l'ordre
Commande openssl pour créer le certificat et la clef :
openssl req -new -out system-linux.csr openssl rsa -in privkey.pem -out system-linux.key openssl x509 -in system-linux.csr -out system-linux.crt -req -signkey system-linux.key -days 3650 openssl x509 -in system-linux.crt -out system-linux.der.crt -outform DER
Création des repertoires :
mkdir /opt/httpd/conf/ssl_crt mkdir /opt/httpd/conf/ssl_key
Copie des fichier crt et key :
cp grc-midian.crt /opt/httpd/conf/ssl_crt/ cp grc-midian.key /opt/httpd/conf/ssl_key/
Il faut bien entendu adapter ces commandes à votre environnement.
Maintenant un peu de configuration apache :
Décommentez ce qui suit dans votre httpd.conf :
# Secure (SSL/TLS) connections Include conf/extra/httpd-ssl.conf
Votre apache devra être redémarré pour prendre en compte tout ça.
vi /opt/httpd/conf/extra/httpd-ssl.conf
Vous devriez avoir quelque chose comme ce qui suit :
Listen 443
AddType application/x-x509-ca-cert .crt
AddType application/x-pkcs7-crl .crl
SSLPassPhraseDialog builtin
SSLSessionCache "shmcb:/var/log/httpd/ssl_scache(512000)"
SSLSessionCacheTimeout 300
SSLMutex "file:/var/log/httpd/ssl_mutex"
<VirtualHost _default_:443>
DocumentRoot "/var/www/votre-site"
ServerName localhost:443
ServerAdmin admin@miam.fr
ErrorLog "/var/log/httpd/error_log"
TransferLog "/var/log/httpd/access_log"
SSLEngine on
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLCertificateFile "/opt/httpd/conf/ssl_crt/system-linux.crt"
SSLCertificateKeyFile "/opt/httpd/conf/ssl_key/system-linux.key"
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory "/opt/httpd-svn/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
BrowserMatch ".*MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
CustomLog "/var/log/httpd/ssl_request_log" \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>
Note : vous aurez peut être à rajouter une ligne dans votre vhost pour rediriger les requetes http vers du https comme ci-dessous
<VirtualHost *:80> ServerName chomdu.anpe.fr Redirect / https://ip_ou_url/ [...] </VirtualHost>
Surtout ne pas oublier de redémarrer votre serveur web.
Des questions Messieurs ?
Pour les debianeux, comme Debian change énormément de choses dans ses paquets je ne puis vous éclairer mais si une ame charitable c'est faire la dites besogne merci d'avance pour l'info !
