Au menu :

  • La veille, préparer un petit nom de domaine spécifique pour ranger son webmail (par exemple, webmail.mondomaine.fr) en tapotant dans son navigateur préféré pour causer avec son gestionnaire de noms (on peut faire avec n'importe quoi d'autre, mais j'aime bien un nom pour un service). Laisser diffuser (toute la nuit).
  • Créer un hôte virtuel. Recommencer parce qu'on se rend compte qu'on avait oublié de repasser super-utilisateur (jeter les morceaux non-utiles de la première tentative). J'ai un script qui me fait ça bien, en entrant le truc dans awstats, et me prépare tout ce qu'il faut.
  • Éditer l'hôte virtuel pour qu'il agisse en SSL (https), parce que des mots de passe vont quand même être diffusés sur ce canal. Activer PHP5 pour cet hôte (j'ai une préférence pour l'activation avec FastCGI, me servant ponctuellement seulement de PHP ; moins d'encombrement mémoire quand je ne m'en sers pas, et possibilité d'utiliser les démons efficaces d'Apache).
  • Générer un certificat qui accepte le nouveau nom webmail.mondomaine.fr en plus des autres.
  • Redémarrer Apache. Vérifier qu'on obtient bien un fichier rangé dans la racine du nouveau domaine.
  • sudo aptitude install roundcube et suivre les instructions. Il faut juste connaître le mot de passe de sa base de données (je le connaissais).
  • Patauger cinq minutes pour être sûr de ce qu'il faut mettre. Se mettre dans la racine du nouveau domaine, et faire un for i in /var/lib/roundcube/*; do ln -s $i; done. Recopier un fichier de lancement de php5 depuis un autre répertoire.
  • Pointer son navigateur sur https://webmail.mondomaine.fr/. Tester une première connexion. Tout marche. Constater que la connexion au serveur n'est pas en https, et qu'on ne peut pas du coup se connecter directement aux autres serveurs (celui de mon laboratoire, par exemple).
  • Modifier une ligne de config/main.inc.php pour faire apparaître à la place $rcmail_config['default_host'] = array('ssl://monimap.mondomaine.fr','ssl://mail.monboulot.fr','ssl://monautreserveur.fr');. Laisser refroidir, c'est prêt.

Voici le fichier final dans /etc/apache2/sites-available/webmail.mondomaine.fr et juste derrière celui pour lancer FCGI :

<virtualHost *:443="">
DocumentRoot /var/www/webmail.mondomaine.fr/
ServerName webmail.mondomaine.fr
ErrorLog /var/log/apache2/webmail.mondomaine.fr/error.log
CustomLog /var/log/apache2/webmail.mondomaine.fr/access.log combined
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/oberon.mondomaine.fr.crt
SSLCertificateKeyFile /etc/apache2/ssl/oberon.mondomaine.fr.key
ServerAdmin monadresse@chezmoi.fr
AddDefaultCharset utf-8
DirectoryIndex index.html index.php
# Uncomment to use PHP5
AddHandler fastcgi-script .fcgi
AddHandler php-fastcgi .php
AddHandler php5-fastcgi .php5
Action php-fastcgi /php5-wrapper.fcgi
Action php5-fastcgi /php5-wrapper.fcgi
</VirtualHost>
#!/bin/dash
PHP_FCGI_CHILDREN=4
export PHP_FCGI_CHILDREN
PHP_FCGI_MAX_REQUESTS=1000
export PHP_FCGI_MAX_REQUESTS
exec /usr/bin/php5-cgi

[Ajout] : J'ai dû aussi modifier une autre ligne, pour mettre $rcmail_config['create_default_folders'] = TRUE;. Sinon, je ne pouvais pas effacer les messages.