sommaire
SquirrelMail
sécurisation de l'interface d'identification via SSL
1/ Génération des clés et certificats SSL: (pour les détails voir la page sur OpenSSL)
clé privée pour webmail.fredaria.org:
openssl genrsa 1024 > webmail.fredaria.org.key
Fichier de demande de signature de certificat (CSR Certificate Signing Request)
openssl req -new -key webmail.fredaria.org.key > webmail.fredaria.org.csr
Signature du certificat serveur par le CA:
openssl x509 -req -in
webmail.fredaria.org.csr -out webmail.fredaria.org.crt -CA ca.crt
-CAkey ca.key -CAcreateserial -CAserial ca.srl
Une autre solution serait de souscrire un certificat auprès d'une autorité reconnue mais c'est bien souvent payant.
Cas gratuit connu:
Gandi.net si l'on possède un nom de domaine chez eux
StartCom
2/ sécurisation du webmail via apache HTTPS
*** ajout le port 443 en ecoute
dans /etc/apache2/ports.conf:
Listen 80
Listen 443
*** activer le module ssl apache
a2enmod ssl
ou via la création d'un lien symbolique
depuis /etc/apache2/mods-enable: ln -s ../mods-avaible/ssl.load ssl.load
*** modifier les virtual host
si la gestion des virtual host se faisait précédement via:
NameVirtualHost *
< VirtualHost *>
...
</VirtualHost>
il faut changer cela en
NameVirtualHost ip_serveur:80
NameVirtualHost ip_serveur:443
< VirtualHost ip_serveur:80>
...
</VirtualHost>
et ajouter celui concerné par squirrelmail
<VirtualHost ip_serveur:80>
ServerName webmail.fredaria.org
Redirect / https://webmail.fredaria.org
</VirtualHost>
<VirtualHost ip_serveur:443>
ServerName webmail.fredaria.org
SSLEngine on
SSLCertificateFile /etc/PKI/webmail.fredaria.org.crt
SSLCertificateKeyFile /etc/PKI/webmail.fredaria.org.key
ServerAdmin postmaster@fredaria.org
DocumentRoot /var/www/html/webmail/
Options FollowSymlinks
ErrorLog /var/log/apache2/error.log
LogLevel warn
CustomLog /var/log/apache2/access.log combined
ErrorDocument 403 http://www.fredaria.org
ErrorDocument 404 http://www.fredaria.org
ErrorDocument 500 http://www.fredaria.org
</VirtualHost>
=> l'accès au webmail se fera donc toujours par l'interface sécurisée
Et recharger apache : invoke-rc.d apache2 reload
Précisions:
Le certificat n'étant pas généré par une autorité reconnue, il y aura un
message alertant de ce fait à la connexion et cela tant qu'une
exception n'aura pas été ajoutée au navigateur web.
Il faudra aussi penser à modifier le firewall pour autoriser le port
443 en entrée, voir à rediriger le port 443 vers la machine hébergeant
le webmail.