Appliquer votre certificat aux services FTP, mail etc.
Maintenant que nous disposons d’un certificat signé pour notre serveur, nous pouvons l’utiliser pour les différents services tels que pureftpd, postfix…
Nous commencerons par créer un fichier *.pem (pour Privacy Enhanced Mail) qui sera utilisé par pureftpd et courier. Il s’agit d’un fichier qui combine plusieurs informations (notamment l’autorité de confiance, associée au certificat signé.)
1 2 3 |
cat startssl.sub.class1.server.ca.crt startssl.ca.crt > startssl.chain.class1.server.crt cat ispserver.{key,crt} startssl.chain.class1.server.crt > ispserver.pem chmod 600 ispserver.pem |
Pureftpd
Avant toute chose, on crée un backup de l’ancien certificat /etc/ssl/private/pure-ftpd.pem
1 2 |
cd /etc/ssl/private/ mv pure-ftpd.pem pure-ftpd.pem_bak |
Puis on crée simplement un lien symbolique vers le certificat .pem précedemment créé. (N’oubliez pas de redémarrer le service.)
1 2 |
ln -s /usr/local/ispconfig/interface/ssl/ispserver.pem pure-ftpd.pem /etc/init.d/pure-ftpd-mysql restart |
Courier
On crée un backup des fichiers /etc/courier/imapd.pem et /etc/courier/pop3d.pem
1 2 |
mv /etc/courier/imapd.pem /etc/courier/imapd.pem.bak mv /etc/courier/pop3d.pem /etc/courier/pop3d.pem.bak |
Puis, deux liens symboliques vers notre fichier *.pem
1 2 |
ln -s /usr/local/ispconfig/interface/ssl/ispserver.pem /etc/courier/imapd.pem ln -s /usr/local/ispconfig/interface/ssl/ispserver.pem /etc/courier/pop3d.pem |
Enfin, on redémarre les services:
1 2 |
/etc/init.d/courier-imap-ssl restart /etc/init.d/courier-pop-ssl restart |
Dovecot
Si vous utilisez Dovecot plutôt que courier:
Ouvrez le fichier /etc/dovecot/dovecot.conf
1 |
vi /etc/dovecot/dovecot.conf |
et ajoutez la ligne suivante: ssl_ca_file = /usr/local/ispconfig/interface/ssl/startssl.chain.class1.server.crt
1 2 3 4 5 6 |
[...] ssl_cert_file = </etc/postfix/smtpd.cert ssl_key_file = </etc/postfix/smtpd.key ## Chemin du certificat (à rajouter après mise à jour d'ISPConfig) ssl_ca_file = </usr/local/ispconfig/interface/ssl/startssl.chain.class1.server.crt [...] |
Il vous faudra probablement rajouter cette ligne à nouveau après chaque mise à jour de ISPConfig.
N’oubliez pas de redémarrer le service.
1 |
/etc/init.d/dovecot restart |
Postfix
Pour Postfix, on crée un backup des certificats existants avant de créer un lien symbolique vers notre certificat et notre clé privée.
1 2 3 4 5 |
cd /etc/postfix mv smtpd.cert smtpd.cert_bak mv smtpd.key smtpd.key_bak ln -s /usr/local/ispconfig/interface/ssl/ispserver.crt smtpd.cert ln -s /usr/local/ispconfig/interface/ssl/ispserver.key smtpd.key |
Enfin, il vous faut modifier le fichier /etc/postfix/main.cf afin d’intégrer le certificat racine de l’autorité de confiance. (Puis redémarrage du service.)
1 2 |
postconf -e 'smtpd_tls_CAfile = /usr/local/ispconfig/interface/ssl/startssl.chain.class1.server.crt' /etc/init.d/postfix restart |
Voilà, à présent votre serveur est doté de certificat signés. Ceux-ci sont valable pour une durée de 1 an. Il vous sera donc nécessaire de répéter la manipulation avant leur expiration sous peine de recevoir des erreurs de validation. (StartSSL envoie automatiquement un mail lorsqu’un certificat arrive à expiration.)
Il est intéressant de remarqué que vous auriez pu utiliser des certificats différents pour les différents services si cela convient mieux à votre utilisation. Vous pouvez conserver la même clé privée et donc le même CSR pour créer plusieurs certificats avec des noms de domaines différents.
J’aborderais dans un prochain post la façon de procéder pour installer différents certificats pour les sites web gérés par ISPConfig.
N’hésitez pas, une fois de plus, à faire part de vos remarques ou questions en commentaires.
3 commentaires à “Sécuriser ISPConfig avec un certificat gratuit de classe 1”
Désolé, les commentaire sont désactivés pour l'instant.
Bonjour,
J’ai suivi votre tuto mais je n’ai toujours pas le droit à un cadenas vers. Quadn je clic sur le https barré il me dit que le certificat est valide mais qu’il ne correspond pas au site rensigné. Mon ISPconfig est installé sur mon serveur directement donc sur une adressse du type monip:8080 alors que le certificat que j’ai créé en suivant votre tuto est fait pour mon domaine. Startssl ne me permet pas de renseigner une adresse de serveur dans le Validation Wizard. Une idée ?
Merci d’avance !
[…] Par exemple pour ISPconfig un tuto est disponible pour le configurer. [Lien] […]
[…] de ce type: Installation ISPConfig 3 Je vous conseille également de lire l’article suivant: Sécuriser ISPConfig avec un certificat SSL, ce post vous permettra de mettre en place un certificat global pour votre configuration apache et […]