Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédenteProchaine révisionLes deux révisions suivantes |
tutoriel:internet:nginx:ssl:letsencrypt:start [2021/01/24 09:02] – [SSL pour Nginx : mettre en place un certificat SSL Let's Encrypt] admin | tutoriel:internet:nginx:ssl:letsencrypt:start [2021/01/24 09:26] – [Autres étapes] admin |
---|
====== Pré-requis ====== | ====== Pré-requis ====== |
| |
* Un serveur Ubuntu avec un utilisateur non root disposant des privilèges sudo. | * **avoir enregistré officiellement le nom de domaine** avec lequel vous souhaitez utiliser le certificat. Ce nom de domaine doit être configuré et pointer vers votre site (adresse IP)<WRAP center round info 60%> |
* **Nginx** installé | Dans ce tutoriel, ce sera le domaine **mondomaine.fr** |
* posséder le **nom de domaine** enregistré avec lequel vous souhaitez utiliser le certificat. | </WRAP> |
* Un **enregistrement DNS A** qui fait pointer votre domaine vers l'adresse IP publique de votre serveur. | * **[[logiciel:internet:nginx:start|Nginx]]** installé avec un bloc //server// pour votre domaine.<WRAP center round info 60%> |
| Ce tutoriel utilisera **/etc/nginx/sites-available/mondomaine.fr** comme exemple. |
| </WRAP> |
====== Première étape : Installation de Certbot ====== | ====== Première étape : Installation de Certbot ====== |
| |
Pour installer Certbot, exécutez :<cli>...@...:~$ sudo apt update && sudo apt install certbot python-certbot-nginx python-certbot-apache</cli> | Exécutez :<cli>...@...:~ $ sudo apt update |
| ...@...:~ $ sudo apt install certbot python-certbot-nginx python-certbot-apache</cli> |
| |
====== Autres étapes ====== | ====== Autres étapes ====== |
| |
Nous allons récupérer depuis Let’s Encrypt un certificat SSL pour notre serveur. | Nous allons récupérer depuis Let’s Encrypt un certificat SSL pour notre serveur. |
| <subnumberlist> |
===== Configuration de Nginx ===== | - **Configuration de Nginx** : |
| - **Certbot** recherche dans votre config de Nginx une directive **server_name** correspondant au domaine pour lequel vous demandez un certificat. |
Pour configurer automatiquement SSL pour Nginx, **Certbot** doit pouvoir de trouver le bloc server correct dans votre config. | - Si vous avez bien configuré l'hôte virtuel lors l'installation de Nginx, le fichier **/etc/nginx/sites-available/mondomaine.fr** doit contenir un bloc //server// pour votre domaine avec la directive **server_name** définie de manière appropriée :<code - /etc/nginx/sites-available/mondomaine.fr> |
| |
Pour ce faire, il recherche une directive server_name correspondant au domaine pour lequel vous demandez un certificat. | |
| |
Si vous avez bien configuré l'hôte virtuel lors l'installation de Nginx, le fichier **/etc/nginx/sites-available/your_domain** doit contenir un bloc server pour votre domaine avec la directive **server_name** définie de manière appropriée. | |
- Pour le vérifier, ouvrez avec les droits d'administration le fichier **/etc/nginx/sites-available/your_domain** et recherchez la ligne server_name qui devrait ressembler à ceci :<code txt /etc/nginx/sites-available/your_domain> | |
server { | server { |
<...> | <...> |
server_name your_domain www.your_domain; | server_name mondomaine.fr www.mondomaine.fr; |
<...> | <...> |
} | } |
</code>Si c'est le cas, quittez votre éditeur et passez à l'étape suivante ; sinon, mettez le fichier à jour pour qu'il corresponde. | </code>Si c'est le cas, quittez votre éditeur et passez à l'étape suivante ; sinon, mettez le fichier à jour pour qu'il corresponde. |
- Vérifiez la syntaxe de vos modifications de configuration avec :<cli>...@...:~$ sudo nginx -t | - Vérifiez la syntaxe de vos modifications de configuration avec :<cli>...@...:~ $ sudo nginx -t |
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok | nginx: the configuration file /etc/nginx/nginx.conf syntax is ok |
nginx: configuration file /etc/nginx/nginx.conf test is successful</cli>S'il y a des erreurs, rouvrez le fichier de l'hôte et recherchez les fautes de frappe. | nginx: configuration file /etc/nginx/nginx.conf test is successful</cli>S'il y a des erreurs, rouvrez le fichier de l'hôte et recherchez les fautes de frappe. |
- Si cela fonctionne sans erreur, rechargez Nginx pour charger la nouvelle configuration :<cli>...@...:~$ sudo nginx -s reload</cli> | - Si cela fonctionne sans erreur, rechargez Nginx pour charger la nouvelle configuration :<cli>...@...:~ $ sudo nginx -s reload</cli> |
| - Certbot peut maintenant trouver le bon bloc server et le mettre à jour. |
Certbot peut maintenant trouver le bon bloc server et le mettre à jour. | </subnumberlist> |
===== Autoriser HTTPS sur le pare-feu ===== | ===== Autoriser HTTPS sur le pare-feu ===== |
| |