- Se placer dans le dossier
~Sites
et créer un dossiercerts
- Se placer dans le dossier
certs
- Générer une passphrase qui va être utilisée tout au long de la procédure. La stocker dans un fichier texte par exemple. Elle sera supprimée à la fin de la procédure.
- Générer une clé (.key) qui permettra de signer le certificat avec la commande suivante :
openssl genrsa -des3 -out server.key 1024
- Générer le fichier .crs (Cerficat Signing Request) avec la commande suivante :
openssl req -new -key server.key -out server.csr
. Renseigner les infos demandées (tout peut être laissé vide) - Supprimer la passphrase de la clé :
cp server.key server.key.org
puisopenssl rsa -in server.key.org -out server.key
- Générer le certificat en lui-même :
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
- ajouter ce bloc de déclaration dans le fichier du vhost du site (après le bloc *:80)
<VirtualHost *:443>
DocumentRoot "/Users/user/Sites/mon-site"
ServerName mon-site.dev
ServerAlias *.mon-site.dev
ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://127.0.0.1:9056/Users/user/Sites/mon-site/$1
SSLEngine On
SSLOptions +FakeBasicAuth +ExportCertData +StrictRequire
SSLCertificateFile "/Users/user/Sites/certs/server.crt"
SSLCertificateKeyFile "/Users/user/Sites/certs/server.key"
<Directory "/Users/user/Sites/mon-site">
Options -Indexes +FollowSymLinks +MultiViews
Order allow,deny
Allow from all
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
- Editer le fichier
/usr/local/etc/apache2/2.4/httpd.conf
- Chercher la ligne
Listen 80
et ajouter une ligne contenantListen 443
- Activer le module SSL en décommentant la ligne
LoadModule ssl_module libexec/mod_ssl.so
Redémarrer Apache avec a2rs
et tout doit fonctionner maintenant