diff --git a/certificate.md b/certificate.md
index 244344d8..53ef663e 100644
--- a/certificate.md
+++ b/certificate.md
@@ -13,109 +13,83 @@ It could afraid a lot of users (rightly).
To avoid this confusion, it's possible to get a signed certificate by a "known" authority : **Gandi**, **RapidSSL**, **StartSSL**, **CaCert**.
In these cases, the point is to replace the self-signed certificate with the one that has been certified by a certificate authority, and the users won't have this warning screen anymore.
-### Add a signed certificate by an authority
+To avoid this confusion, it's possible to get a certificate signed a known
+authority named **Let's Encrypt** which provide free certificates directly
+recognized by browsers. YunoHost allows to directly install this certificate
+from the web administration interface or from the command line.
-Get your certificate from your CA, you must get a private key, file key and a public certificate (file .crt)
-> Be carefull, the key file is very critical, it's strictly personal and have to be secured.
+### Install a Let's Encrypt certificate
-Copy this two files on the server, if not.
+Before attempting to install a Let's Encrypt certificate, you should make sure
+that your DNS is correctly configured (votre.domaine.tld should point to
+your server's IP) and that your domain is accessible though HTTP from outside
+your local network (i.e. at least port 80 should be forwarded to your server).
-```bash
-scp CERTIFICAT.crt admin@DOMAIN.TLD:ssl.crt
-scp CLE.key admin@DOMAIN.TLD:ssl.key
+#### From the web administration interface
+
+Go to the 'Domain' part of the admin interface, then in the section dedicated to
+your.domain.tld. You should find a 'SSL certificate' button :
+
+![](./images/domain-certificate-button.png)
+
+In the 'SSL certificate' section, you can see the status of the current
+certificate. If you just added the domain, it should be a self-signed
+certificate.
+
+![](./images/certificate-before-LE.png)
+
+If your domain is correctly configured, it is then possible to install the
+Let's Encrypt certificate via the green button.
+
+![](./images/certificate-after-LE.png)
+
+Once the install is made, you can check that the certificate is live via your
+browser by going to your domain in HTTPS. The certificate will automatically
+be renewed every three months.
+
+![](./images/certificate-signed-by-LE.png)
+
+#### From the command line interface
+
+Connect to your server through SSH.
+
+You can check the status of your current certificate with :
+
+```
+yunohost domain cert-status your.domain.tld
```
-From Windows, scp can be used with putty, download [pscp](http://the.earth.li/~sgtatham/putty/latest/x86/pscp.exe)
+Install a Let's Encrypt certificate with
-```bash
-pscp -P 22 CERTIFICAT.crt admin@DOMAIN.TLD:ssl.crt
-pscp -P 22 CLE.key admin@DOMAIN.TLD:ssl.key```
+```
+yunohost domain cert-install your.domain.tld
+```
-Now the files are in the server. Open a shell on the server use [ssh](https://yunohost.org/#/ssh_fr) or locally.
+This should return :
-First, create a directory for archive the certificates.
+```
+Success! The SSOwat configuration has been generated
+Success! Successfully installed Let's Encrypt certificate for domain DOMAIN.TLD!
+```
-```bash
-sudo mkdir /etc/yunohost/certs/DOMAIN.TLD/ae_certs
-sudo mv ssl.key ssl.crt /etc/yunohost/certs/DOMAIN.TLD/ae_certs/```
+Once this is done, you can check that the certificate is live via your
+browser by going to your domain in HTTPS. The certificate will automatically
+be renewed every three months.
-Then go to the parent directory and go on.
+##### Troubleshooting
-```bash
-cd /etc/yunohost/certs/DOMAIN.TLD/```
+If due to some bad tweaking, your certificate ends up in a bad state (e.g.
+lost the certificate or unable to read the files), you should be able to clean
+the situation by regenerating a self-signed certificate :
-Make a backup of the YunoHost original certificates , to be safe!
+```
+yunohost domain cert-install your.domain.tld --self-signed --force
+```
-```bash
-sudo mkdir yunohost_self_signed
-sudo mv *.pem *.cnf yunohost_self_signed/```
+If YunoHost thinks that your domain is badly configured despite the fact that
+you checked the DNS configuration and you have access in HTTP to your server
+from outside your local network, then you can :
-Depends on the CA, intermediate certificates and root have to be downloaded.
-
-> **StartSSL**
-> ```bash
-> sudo wget http://www.startssl.com/certs/ca.pem -O ae_certs/ca.pem
-> sudo wget http://www.startssl.com/certs/sub.class1.server.ca.pem -O ae_certs/intermediate_ca.pem```
-
-> **Gandi**
-> ```bash
-> sudo wget https://www.gandi.net/static/CAs/GandiStandardSSLCA.pem -O ae_certs/intermediate_ca.pem```
-
-> **RapidSSL**
-> ```bash
-> sudo wget https://knowledge.rapidssl.com/library/VERISIGN/INTERNATIONAL_AFFILIATES/RapidSSL/AR1548/RapidSSLCABundle.txt -O ae_certs/intermediate_ca.pem```
-
-> **Cacert**
-> ```bash
-> sudo wget http://www.cacert.org/certs/root.crt -O ae_certs/ca.pem
-> sudo wget http://www.cacert.org/certs/class3.crt -O ae_certs/intermediate_ca.pem```
-
-Intermediate certificates and root must be merged with certificates obtained to create a unified chain certificates.
-
-```bash
-cat ae_certs/ssl.crt ae_certs/intermediate_ca.pem ae_certs/ca.pem | sudo tee crt.pem```
-
-
-The private key have to be converted in PEM format.
-
-```bash
-sudo openssl rsa -in ae_certs/ssl.key -out key.pem -outform PEM```
-
-Check certificates syntaxe, check file contents.
-
-```bash
-cat crt.pem key.pem```
-
-Certificates and private key look like this :
-
-`-----BEGIN CERTIFICATE-----`
-`MIICVDCCAb0CAQEwDQYJKoZIhvcNAQEEBQAwdDELMAkGA1UEBhMCRlIxFTATBgNV`
-`BAgTDENvcnNlIGR1IFN1ZDEQMA4GA1UEBxMHQWphY2NpbzEMMAoGA1UEChMDTExC`
-`MREwDwYDVQQLEwhCVFMgSU5GTzEbMBkGA1UEAxMSc2VydmV1ci5idHNpbmZvLmZy`
-`MB4XDTA0MDIwODE2MjQyNloXDTA0MDMwOTE2MjQyNlowcTELMAkGA1UEBhMCRlIx`
-`FTATBgNVBAgTDENvcnNlIGR1IFN1ZDEQMA4GA1UEBxMHQWphY2NpbzEMMAoGA1UE`
-`ChMDTExCMREwDwYDVQQLEwhCVFMgSU5GTzEYMBYGA1UEAxMPcHJvZi5idHNpbmZv`
-`LmZyMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDSUagxPSv3LtgDV5sygt12`
-`kSbN/NWP0QUiPlksOkF2NkPfwW/mf55dD1hSndlOM/5kLbSBo5ieE3TgikF0Iktj`
-`BWm5xSqewM5QDYzXFt031DrPX63Fvo+tCKTQoVItdEuJPMahVsXnDyYHeUURRWLW`
-`wc0BzEgFZGGw7wiMF6wt5QIDAQABMA0GCSqGSIb3DQEBBAUAA4GBALD640iwKPMf`
-`pqdYtfvmLnA7CiEuao60i/pzVJE2LIXXXbwYjNAM+7Lov+dFT+b5FcOUGqLymSG3`
-`kSK6OOauBHItgiGI7C87u4EJaHDvGIUxHxQQGsUM0SCIIVGK7Lwm+8e9I2X0G2GP`
-`9t/rrbdGzXXOCl3up99naL5XAzCIp6r5`
-`-----END CERTIFICATE-----`
-
-At last, secure files of your certificate
-
-```bash
-sudo chown root:metronome crt.pem key.pem
-sudo chmod 640 crt.pem key.pem
-sudo chown root:root -R ae_certs
-sudo chmod 600 -R ae_certs```
-
-Reload Nginx configuration to take into account the new certificate.
-
-```bash
-sudo service nginx reload```
-
-Your certificate is ready to serve. You can check that every thing is correct byan external service like geocerts
+- add a line `127.0.0.1 your.domain.tld` to the file `/etc/hosts` on your server ;
+- if the certificate installation still doesn't work, you can disable the checks with `--no-checks` after the `cert-install` command.
diff --git a/certificate_fr.md b/certificate_fr.md
index 23b9a5ab..834e9bf0 100644
--- a/certificate_fr.md
+++ b/certificate_fr.md
@@ -2,121 +2,94 @@
Un certificat est utilisé pour garantir la confidentialité des échanges entre votre serveur et votre client.
-YunoHost fournit par défaut un certificat **auto-signé**, ce qui veut dire que c’est votre serveur qui garantit la validité du certificat. C’est suffisant **pour un usage personnel**, car vous pouvez avoir confiance en votre serveur, en revanche cela posera problème si vous comptez ouvrir l’accès à votre serveur à des anonymes, par exemple pour héberger un site web.
+YunoHost fournit par défaut un certificat **auto-signé**, ce qui veut dire que c’est votre serveur qui garantit la validité du certificat. C’est suffisant **pour un usage personnel**, car vous pouvez avoir confiance en votre serveur, en revanche cela posera problème si vous comptez ouvrir l’accès à votre serveur à des anonymes, par exemple pour héberger un site web.
En effet, les utilisateurs devront passer par un écran de ce type :
-Cet écran revient à demander **« Avez-vous confiance au serveur qui héberge ce site ? »**.
+Cet écran revient à demander **« Avez-vous confiance au serveur qui héberge ce site ? »**.
Cela peut effrayer vos utilisateurs (à juste titre).
-Pour éviter cette confusion, il est possible d’obtenir un certificat signé par une autorité « connue » : **Gandi**, **RapidSSL**, **StartSSL**, **Cacert**.
-Dans ce cas, il s’agira de remplacer le certificat auto-signé par celui qui a été reconnu par une autorité de certification, et vos utilisateurs n’auront plus à passer par cet écran d’avertissement.
+Pour éviter cette confusion, il est possible d’obtenir un certificat signé par
+une autorité « connue » qui est **Let's Encrypt** et qui propose des
+certificats gratuits et reconnus directement par les navigateurs. YunoHost
+permet d'installer directement un tel certificat depuis l'interface
+d'administration ou la ligne de commande.
-### Ajout d’un certificat signé par une autorité
+### Installer un certificat Let's Encrypt
-Après création du certificat auprès de votre autorité d’enregistrement, vous devez être en possession d’une clé privée, le fichier key et d’un certificat public, le fichier crt.
-> Attention, le fichier key est très sensible, il est strictement personnel et doit être très bien sécurisé.
+Avant de chercher à installer un certificat Let's Encrypt, assurez vous que
+votre DNS est correctement configuré (votre.domaine.tld doit pointer sur l'IP
+de votre serveur) et que votre site est accessible en HTTP depuis l'extérieur
+(i.e. qu'au moins le port 80 est correctement redirigé vers votre serveur).
-Ces deux fichiers doivent être copiés sur le serveur, s’ils ne s’y trouvent pas déjà.
+#### Via l'interface d'administration web
-```bash
-scp CERTIFICAT.crt admin@DOMAIN.TLD:ssl.crt
-scp CLE.key admin@DOMAIN.TLD:ssl.key
+Rendez-vous dans la partie 'Domaine' de l'interface d'administration, puis dans
+la section dédiée à votre domaine. Vous trouverez un bouton 'Certificat SSL'.
+
+![](./images/domain-certificate-button-fr.png)
+
+Dans la section 'Certificat SSL', vous pourrez voir l'état actuel du certificat.
+Si vous venez d'ajouter le domaine, il dispose d'un certificat auto-signé.
+
+![](./images/certificate-before-LE-fr.png)
+
+Si votre domaine est correctement configuré, il vous est alors possible de
+passer à un certificat Let's Encrypt via le bouton vert.
+
+![](./images/certificate-after-LE-fr.png)
+
+Une fois l'installation effectuée, vous pouvez vous rendre sur votre domaine
+via votre navigateur, en HTTPS, pour vérifier que votre certificat est bien
+signé par Let's Encrypt. Le certificat sera renouvelé automatiquement tous les
+trois mois environ.
+
+![](./images/certificate-signed-by-LE.png)
+
+#### Via la ligne de commande
+
+Connectez-vous sur votre serveur en SSH.
+
+Vous pouvez vérifier le statut actuel de votre certificat via
+
+```
+yunohost domain cert-status votre.domaine.tld
```
-Depuis Windows, scp est exploitable avec putty, en téléchargeant l’outil [pscp](http://the.earth.li/~sgtatham/putty/latest/x86/pscp.exe)
+Installez le certificat Let's Encrypt via
-```bash
-pscp -P 22 CERTIFICAT.crt admin@DOMAIN.TLD:ssl.crt
-pscp -P 22 CLE.key admin@DOMAIN.TLD:ssl.key```
+```
+yunohost domain cert-install votre.domaine.tld
+```
-Dès lors que les fichiers sont sur le serveur, le reste du travail se fera sur celui-ci. En [ssh](https://yunohost.org/#/ssh_fr) ou en local.
+Cette commande doit retouner :
-Tout d’abord, créez un dossier pour stocker les certificats obtenus.
+```
+Success! The SSOwat configuration has been generated
+Success! Successfully installed Let's Encrypt certificate for domain DOMAIN.TLD!
+```
-```bash
-sudo mkdir /etc/yunohost/certs/DOMAIN.TLD/ae_certs
-sudo mv ssl.key ssl.crt /etc/yunohost/certs/DOMAIN.TLD/ae_certs/```
+Une fois l'installation effectuée, vous pouvez vous rendre sur votre domaine
+via votre navigateur, en HTTPS, pour vérifier que votre certificat est bien
+signé par Let's Encrypt. Le certificat sera renouvelé automatiquement tous les
+trois mois environ.
-Puis allez dans le dossier parent pour poursuivre.
+##### En cas de problème
-```bash
-cd /etc/yunohost/certs/DOMAIN.TLD/```
+Si suite à une mauvaise manipulation, un certificat se retrouve dans une
+situation fâcheuse (e.g. perte du certificat ou impossible de lire le
+certificat), il est possible de repartir sur des bases propres en regénérant un
+certificat auto-signé :
-Faites une sauvegarde des certificats d’origine de yunohost, par précaution.
+```
+yunohost domain cert-install votre.domaine.tld --self-signed --force
+```
-```bash
-sudo mkdir yunohost_self_signed
-sudo mv *.pem *.cnf yunohost_self_signed/```
+Si YunoHost trouve que votre domaine est mal configuré quand bien même vous
+avez bien vérifié votre configuration DNS et avez bien accès à votre serveur en
+HTTP depuis l'extérieur, vous pouvez tenter :
-En fonction de l’autorité d’enregistrement, des certificats intermédiaires et racines doivent être obtenus.
+- d'ajouter une ligne `127.0.0.1 votre.domaine.tld` au fichier `/etc/hosts` sur votre serveur ;
+- si l'installation ne fonctionne toujours pas, désactiver les vérifications en ajouter `--no-checks` à la commande `cert-install`.
-> **StartSSL**
-> ```bash
-> sudo wget http://www.startssl.com/certs/ca.pem -O ae_certs/ca.pem
-> sudo wget http://www.startssl.com/certs/sub.class1.server.ca.pem -O ae_certs/intermediate_ca.pem```
-
-> **Gandi**
-> ```bash
-> sudo wget https://www.gandi.net/static/CAs/GandiStandardSSLCA.pem -O ae_certs/intermediate_ca.pem```
-> Attention si votre certificat expire après le 01/01/2017, choisissez le certificat intermédiaire SHA2 suivant (à la place du certificat SHA1 précédent)
-> ```bash
-> sudo wget https://www.gandi.net/static/CAs/GandiStandardSSLCA2.pem -O ae_certs/intermediate_ca.pem```
-
-> **RapidSSL**
-> ```bash
-> sudo wget https://knowledge.rapidssl.com/library/VERISIGN/INTERNATIONAL_AFFILIATES/RapidSSL/AR1548/RapidSSLCABundle.txt -O ae_certs/intermediate_ca.pem```
-
-> **Cacert**
-> ```bash
-> sudo wget http://www.cacert.org/certs/root.crt -O ae_certs/ca.pem
-> sudo wget http://www.cacert.org/certs/class3.crt -O ae_certs/intermediate_ca.pem```
-
-Les certificats intermédiaires et root doivent être réunis avec le certificat obtenu pour créer une chaîne de certificats unifiés.
-
-```bash
-cat ae_certs/ssl.crt ae_certs/intermediate_ca.pem ae_certs/ca.pem | sudo tee crt.pem```
-
-La clé privée doit être, elle, convertie au format pem.
-
-```bash
-sudo openssl rsa -in ae_certs/ssl.key -out key.pem -outform PEM```
-
-Afin de s’assurer de la syntaxe des certificats, vérifiez le contenu des fichiers.
-
-```bash
-cat crt.pem key.pem```
-
-Les certificats et la clé privée doivent ressembler à cela :
-
-`-----BEGIN CERTIFICATE-----`
-`MIICVDCCAb0CAQEwDQYJKoZIhvcNAQEEBQAwdDELMAkGA1UEBhMCRlIxFTATBgNV`
-`BAgTDENvcnNlIGR1IFN1ZDEQMA4GA1UEBxMHQWphY2NpbzEMMAoGA1UEChMDTExC`
-`MREwDwYDVQQLEwhCVFMgSU5GTzEbMBkGA1UEAxMSc2VydmV1ci5idHNpbmZvLmZy`
-`MB4XDTA0MDIwODE2MjQyNloXDTA0MDMwOTE2MjQyNlowcTELMAkGA1UEBhMCRlIx`
-`FTATBgNVBAgTDENvcnNlIGR1IFN1ZDEQMA4GA1UEBxMHQWphY2NpbzEMMAoGA1UE`
-`ChMDTExCMREwDwYDVQQLEwhCVFMgSU5GTzEYMBYGA1UEAxMPcHJvZi5idHNpbmZv`
-`LmZyMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDSUagxPSv3LtgDV5sygt12`
-`kSbN/NWP0QUiPlksOkF2NkPfwW/mf55dD1hSndlOM/5kLbSBo5ieE3TgikF0Iktj`
-`BWm5xSqewM5QDYzXFt031DrPX63Fvo+tCKTQoVItdEuJPMahVsXnDyYHeUURRWLW`
-`wc0BzEgFZGGw7wiMF6wt5QIDAQABMA0GCSqGSIb3DQEBBAUAA4GBALD640iwKPMf`
-`pqdYtfvmLnA7CiEuao60i/pzVJE2LIXXXbwYjNAM+7Lov+dFT+b5FcOUGqLymSG3`
-`kSK6OOauBHItgiGI7C87u4EJaHDvGIUxHxQQGsUM0SCIIVGK7Lwm+8e9I2X0G2GP`
-`9t/rrbdGzXXOCl3up99naL5XAzCIp6r5`
-`-----END CERTIFICATE-----`
-
-Enfin, sécurisez les fichiers de votre certificat.
-
-```bash
-sudo chown root:metronome crt.pem key.pem
-sudo chmod 640 crt.pem key.pem
-sudo chown root:root -R ae_certs
-sudo chmod 600 -R ae_certs```
-
-Rechargez la configuration de nginx pour prendre en compte le nouveau certificat.
-```bash
-sudo service nginx reload```
-
-
-Votre certificat est prêt à servir. Vous pouvez toutefois vous assurez de sa mise en place en testant le certificat à l’aide du service de geocerts.
diff --git a/images/certificate-after-LE-fr.png b/images/certificate-after-LE-fr.png
new file mode 100644
index 00000000..c2c41313
Binary files /dev/null and b/images/certificate-after-LE-fr.png differ
diff --git a/images/certificate-after-LE.png b/images/certificate-after-LE.png
new file mode 100644
index 00000000..6b55fe99
Binary files /dev/null and b/images/certificate-after-LE.png differ
diff --git a/images/certificate-before-LE-fr.png b/images/certificate-before-LE-fr.png
new file mode 100644
index 00000000..3a50a8d1
Binary files /dev/null and b/images/certificate-before-LE-fr.png differ
diff --git a/images/certificate-before-LE.png b/images/certificate-before-LE.png
new file mode 100644
index 00000000..bfc896db
Binary files /dev/null and b/images/certificate-before-LE.png differ
diff --git a/images/certificate-signed-by-LE.png b/images/certificate-signed-by-LE.png
new file mode 100644
index 00000000..aad3c51f
Binary files /dev/null and b/images/certificate-signed-by-LE.png differ
diff --git a/images/domain-certificate-button-fr.png b/images/domain-certificate-button-fr.png
new file mode 100644
index 00000000..ae8c4359
Binary files /dev/null and b/images/domain-certificate-button-fr.png differ
diff --git a/images/domain-certificate-button.png b/images/domain-certificate-button.png
new file mode 100644
index 00000000..998c2f21
Binary files /dev/null and b/images/domain-certificate-button.png differ