Vérifier que les paquets nécessaires sont déjà installés (libssl0.9.8, openssl, ssl-cert) :
dpkg -l | grep ssl
Chaque paquet doit apparaitre avec les deux lettres ii
en suffixe si c’est déjà le cas. Il sont normalement sensés déjà être installés.
Dans le cas contraire, installer openSSL
sudo apt-get install openssl
Création d’un certificat auto-signé
Afin de pouvoir utiliser une connexion ssl, il est nécessaire d’avoir un certificat signé qui peut coûter très cher. Dans notre cas nous allons créer un certificat auto-signé, considéré comme non sûr par les navigateurs mais suffisant pour obtenir une connexion SSL au serveur.
On va créer le certificat nécessaire dans le répertoire /etc/apache2/ssl
que l’on crée s’il n’existe pas :
sudo mkdir /etc/apache2/ssl
Puis nous allons y créer notre certificat :
sudo /usr/sbin/make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem
Il faut alors répondre à une question demandant le nom d’hôte du serveur.
Votre certificat se trouve donc à l’emplacement /etc/apache2/ssl/apache.pem
.
Configuration spécifique d’apache
Dans un premier temps il est nécessaire que le serveur apache écoute sur le port 443. Pour cela il suffit d’éditer le ficher /etc/apache2/ports.conf
et vérifier que la ligne Listen 443
y soit présente.
La meilleur manière de l’intégrer est de l’écrire de la sorte :
<IfModule mod_ssl.c> Listen 443 </IfModule>
Ainsi, lors de la désactivation (volontaire ou non) du module SSL d’Apache, la configuration restera correcte et ne plantera pas le serveur.
Dans un second temps il est nécessaire de créer un virtualhost Apache prenant en compte notre certificat ssl. Debian et Ubuntu en fournisse un par défaut (/etc/apache2/sites-available/default-ssl
) que nous allons modifier pour tester.
sudo nano /etc/apache2/sites-available/default-ssl
On vérifie que le contenu suivant au moins y soit présent (commentez avec le caractère dièse "#
" toute référence à d’autres certificats :
<IfModule mod_ssl.c> <VirtualHost _default_:443> ServerAdmin webmaster@localhost DocumentRoot /var/www <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog /var/log/apache2/error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog /var/log/apache2/ssl_access.log combined # SSL Engine Switch: # Enable/Disable SSL for this virtual host. SSLEngine on SSLCertificateFile /etc/apache2/ssl/apache.pem </VirtualHost> </IfModule>
Activation finale et redémarrage du serveur apache
Puis vous pouvez activer le module ssl pour Apache, le virtualhost ssl et redémarrer Apache :
a2enmod ssl a2ensite default-ssl sudo /etc/init.d/apache2 restart
Il est ensuite possible de tester que cela fonctionne en allant à l’adresse : https://www.domaine.tld:443
ou https://www.domaine.tld
.
Votre navigateur devrait spécifier que le certificat n’est pas considéré comme sûr mais vous permettre de voir et d’accepter le certificat afin de pouvoir avoir accès à la page en question (qui devrait être la même sans le "s" à http et sans le :443 en fin d’adresse).
# Le 21 décembre 2012 à 09:53, par DF4ze En réponse à : Installer et configurer le module ssl pour Apache2
Super tuto !
A fonctionné du 1er coup sur mon RaspberryPi sous Raspbian
Un gros merci !
Répondre à ce message
# Le 21 décembre 2012 à 13:51, par Quentin Drouet En réponse à : Installer et configurer le module ssl pour Apache2
Merci ;) ça fait toujours plaisir
Répondre à ce message
# Le 30 janvier 2013 à 17:48, par Sam En réponse à : Installer et configurer le module ssl pour Apache2
Merci nickel ça fonctionne du 1er coup
Répondre à ce message
# Le 19 juillet 2014 à 09:38, par Saad En réponse à : Installer et configurer le module ssl pour Apache2
Merci, un tuto clair et précis.
Répondre à ce message
# Le 20 mai 2015 à 08:12, par Lwiz En réponse à : Installer et configurer le module ssl pour Apache2
Bonjour,
Bon, me concernant, et étant donné que je suis novice, rien n’a fonctionné.
Les commandes dans le terminal se soldent par des "command not found" à chaque entrée. Et je n’ai rien pu faire.
Ce tuto est certainement bien fait pour ceux qui s’y connaissent déjà un peu, mais moi, je n’y ai rien compris. Quelqu’un pourrait m’aider SVP ?
Répondre à ce message
# Le 20 mai 2015 à 08:40, par Quentin Drouet En réponse à : Installer et configurer le module ssl pour Apache2
J’imagine que vous avez ce message d’erreur car vous n’avez pas la commande
sudo
installée.Pour en savoir plus, il faudrait savoir quelle est votre distribution exactement (son nom, sa version).
Et le retour complet de la commande.
Voir cet article pour des informations sur
sudo
Répondre à ce message
# Le 6 novembre 2015 à 19:25, par Fred En réponse à : Installer et configurer le module ssl pour Apache2
Merci beaucoup Quentin, ton tuto m’a permis d’installer ssl en 10 minutes chrono sur mon Raspberry Pi 2 !!!
Je plussois !!
Répondre à ce message
# Le 6 novembre 2015 à 20:26, par Quentin Drouet En réponse à : Installer et configurer le module ssl pour Apache2
De rien. Avec plaisir.
Répondre à ce message
# Le 15 mai 2016 à 22:28, par Jean En réponse à : Installer et configurer le module ssl pour Apache2
Bonsoir,
je n’ai pas réussi a installer le certificat
a partir de "sudo? /usr/sbin/make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem"
j’ai valider toujour ok
puis sur la dernière question j’ai mis /etc/apache2/ssl/apache.pem
Comment faire pour désinstaller ?
Merci d’avance
Répondre à ce message
# Le 1er janvier 2017 à 14:03, par Timothée En réponse à : Installer et configurer le module ssl pour Apache2
Bonjour,
J’aimerai installer un certificat SSL sur mon VPS Debian 7 et j’ai peur de faire planter Apache2 ou encore PhpMyAdmin, etc..
Est-ce qu’il n’y à aucun risque d’installer un certificat SSL ?
Merci d’avance et bonne année !
Répondre à ce message
# Le 1er janvier 2017 à 14:19, par Quentin Drouet En réponse à : Installer et configurer le module ssl pour Apache2
S’il n’y a pas d’erreur dans la configuration, pas de risques non
Sauvegardez les fichiers que vous modifiez avant de faire quoique ce soit, vous pourrez toujours les remettre
Répondre à ce message
# Le 1er janvier 2017 à 14:21, par Timothée En réponse à : Installer et configurer le module ssl pour Apache2
D’accord, merci beaucoup pour votre réponse rapide ! :)
Répondre à ce message
# Le 12 mars 2017 à 21:59, par joseph En réponse à : Installer et configurer le module ssl pour Apache2
Super !!!
Enfin une personne qui fait un tuto fonctionnel !
sur Debian 6, 7, et 8(jessie) OK
Thanks
Répondre à ce message
# Le 22 septembre 2017 à 22:58, par BackBoneFR En réponse à : Installer et configurer le module ssl pour Apache2
Un grand merci pour le tuto, toujours efficace en septembre 2017 sur Ubuntu 16.04 LTS !
Répondre à ce message
# Le 15 février 2018 à 18:37, par Dim7283 En réponse à : Installer et configurer le module ssl pour Apache2
Bonjour et merci pour ce tuto,
Malheureusement j’ai dû faire une mauvaise manip car jeedom fonctionnait très bien en interne et depuis je n’y ai pus accès.
J’ai essayé de suivre à la lettre mais par exemple dans le fichier "/etc/apache2/sites-available/default-ssl" je n’avais rien et j’ai donc tout retapé.
Et à l’activation avec cette commande "/etc/init.d/apache2 restart" j’ai eu : "failed !". J’ai donc entré "apache2 restart" et ça m’a affiché des lignes (j’ai pris des photos donc si besoin je peux les poster) qui me semblaient être positives. Mais rien...
J’ai donc entré "service apache2 restart" (ce que m’indiquait Debian avec le retour "failed !") ce qui m’a donné le retour suivant :
"Job for apache2.service failed. See ’systemctl status apache2.service’ and ’journalctl -xn’ for details."
Je ne sais pas quoi faire...
Est ce qu’il faut que je supprime les lignes entrées dans le fichier "/etc/apache2/sites-available/default-ssl" ?
Merci d’avance !!
Répondre à ce message
# Le 14 juin 2019 à 09:16, par taken En réponse à : Installer et configurer le module ssl pour Apache2
Bonjour à tous,
Alors je sais que je déterre un vieux sujet mais essayons quand même ....
J’ai exactement le même problème, as tu pu trouver une solution ? Quelqu’un passant par là aurait il une idée ?
#bouteillealamer
Répondre à ce message
# Le 5 mars 2020 à 20:54, par LockHar_ En réponse à : Installer et configurer le module ssl pour Apache2
J’avais fait toute une installation Jeedom etc et pour un accès extérieur en https j’ai suivi ce tuto jusqu’à l’activation du SSL
avec
a2enmod ssl
qui me retournait :Enabling module socache_shmcb.
Could not create /etc/apache2/mods-enabled/socache_shmcb.load : Permission denied
Après prise de tête et bidouille en tout genre, j’ai tout supprimé et juste testé le SSL sur une install Raspbian + Apache2 propre et à cette étape toujours la même erreur, du coup pour que ça fonctionne j’ai essayé
sudo su root
et ensuitea2enmod ssl a2ensite [...]
et là plus d’erreur \o/Et là j’accède bien en https de l’extérieur sur mon pi, m’en va réinstaller Jeedom
Répondre à ce message
# Le 5 mars 2020 à 21:01, par LockHar_ En réponse à : Installer et configurer le module ssl pour Apache2
Et pour l’accès en local impossible, il faut bien garder la ligne
Listen 80
lors de l’édition du fichier /etc/apache2/ports.confRépondre à ce message