Apache MAMP: création d’un certificat ssl

mercredi 27 août 2014

Voici un tutoriel sur comment mettre en place un site en https.
Se positionner dans le dossier qui contiendra le certificat ssl.
Pour ma part dans MAMP/conf/apache/ssl/.

sudo ssh-keygen -b 2048 -t rsa -f host.key

Il nous demandera une passphrase pour générer notre clé.

Maintenant, il nous faut créer un fichier de requête.

sudo openssl req -new -key host.key -out host.csr

Une série de question vous sera posé:

Country Name (2 letter code) [AU]:BE
State or Province Name (full name) [Some-State]:BE
Locality Name (eg, city) []:Brussels
Organization Name (eg, company) [Internet Widgits Pty Ltd]:company
Organizational Unit Name (eg, section) []:company
Common Name (e.g. server FQDN or YOUR name) []:website_name
Email Address []:mt@uchrony.be

Attention le plus important c’est le website_name qui est le nom de votre Servername dans votre apache configurer par exemple avec le VirtualHost

Et maintenant, on génère le certificat ssl:

sudo openssl x509 -req -days 365 -in host.csr -signkey ipa.key -out host.crt

Pour ne pas avoir la passphrase il suffit de faire ceci:

openssl rsa -in host.key -out host.nopass.key

Maintenant que nous avons généré le certificat et la clé, il nous reste à configurer notre site web et l’https.

Allez dans MAMP/conf/httpd.conf, retirer le # derrière

`
Include /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf

Dans le fichier httpd-vhosts.conf, on ajoute un virtualhost

<VirtualHost *:443>    
    ServerName website_name
    DocumentRoot "/path/to/the/website"
    <Directory "/path/to/the/website">
        Options All
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
    SSLEngine on 
    SSLCertificateFile "/Applications/MAMP/conf/apache/ssl/host.crt"
    SSLCertificateKeyFile "/Applications/MAMP/conf/apache/ssl/host.nopass.key"
</VirtualHost>

Dans le fichier httpd.conf, on rajoute le port 443 à écouter

Listen 443

Sinon on obtient une erreur