Mise en place d'un certificat SSL gratuit & # 171; Let & # 8217; s Encrypt & # 187; dans Nginx (Ubuntu)

Si vous avez lu de nombreux articles conseils de confidentialité Certes, vous trouverez une astuce qui vous invite à installer l'extension « HTTPS Everywhere « Donc, ça va rediriger automatiquement vers la version HTTPS du site chaque fois que possible . L'inconvénient est que l'extension HTTPS Everywhere fonctionne uniquement lorsque le site Web que vous visitez a mis en œuvre le protocole SSL, et la plupart des webmasters, il peut être une tâche difficile (et coûteux) lui-même. Heureusement, avec le mouvement Crypter Il est maintenant plus facile pour les webmasters d'ajouter des certificats SSL à leurs sites.
Dans le passé (et présent), la configuration d'un certificat SSL exige que vous devez d'abord générer une clé privée sur votre serveur, puis achetez un certificat SSL à l'autorité de certification (qui peut être coûteux) et, enfin, ce que configurer le serveur. Il y a beaucoup d'aspects techniques du processus, et non le faire sera bien faire déposer le certificat SSL est inutile. Avec le projet Let # 8217; de Crypter, vous pouvez ajouter rapidement un certificat SSL à leurs sites sans frais. Et il est soutenu par les grandes entreprises de l'industrie comme Mozilla, Akamai, Cisco, EFFIf vous et Google, est compatible avec la plupart des navigateurs et systèmes d'exploitation.
Dans ce tutoriel, nous allons passer en revue les étapes de configuration du certificat SSL Let & # 8217; s Crypter dans le serveur Nginx. Nous utilisons Ubuntu 14.04 pour ce serveur de tutoriel et supposons que vous utilisez un serveur Ubuntu en cours d'exécution Nginx. Les instructions peuvent être différentes pour le serveur Ubuntu 16.04.
Installer Let # 8217; s Crypter
Tout d'abord, installer Let & # 8217; de Crypter, vous aurez besoin git à cloner à partir git. Installer git en utilisant la commande suivante:
Sudo apt-get install git bc
Une fois installé, cloner le dépôt Let & # 8217; s Crypter:
Les paramètres d'environnement
Avant d'installer et de configurer le certificat SSL, il est important de permettre l'accès à carpeta.well connu dans le répertoire racine du site Web. Par défaut, tous les fichiers et dossiers avec un « & # 8230; » avant le nom de fichier sont cachés et ne sont pas accessibles au public. Cependant, dans ce cas, nous devons donner la permission au public d'accéder au carpeta.well connu, puisque c'est là Let & # 8217; . S Crypter stocker un fichier spécial pour la validation
Allez dans le dossier de votre site configuration Nginx et ouvrez-le (si vous disposez d'un fichier de configuration personnalisée pour votre site), ou utiliser le fichier par défaut:
Cd / etc / nginx / sites disponibles
Sudo nano par défaut & gt; nano sudo
Ajoutez les lignes suivantes dans le serveur de bloc:
~ Emplacement /.Well-known {tout permettre; }
& Gt;
Enregistrer le fichier de configuration (Ctrl + O) et de fermeture (Ctrl + x).
Testez votre configuration Nginx:
Sudo nginx -t
Si tout fonctionne correctement la configuration, recharger la configuration:
Sudo services nginx reload
Générer un certificat SSL
Maintenant que vous avez terminé avec la configuration Nginx, ce qui suit est d'installer le certificat SSL.
Allez dans le dossier Let & # 8217; s Crypter:
Cd / opt / letsencrypt
Exécutez la commande suivante pour générer le certificat:
./Letsencrypt-auto certonly -a Webroot --webroot-path = / usr / share / nginx / html -d example.com
Il y a des choses à changer ici:
- Webroot changer le chemin vers le chemin du document racine de votre site. Par défaut, "/ user / share / nginx / html" mais sa configuration peut être différente.
- Remplacer « example.com » avec votre propre nom de domaine. Notez que « example.com » et « www.example.com » sont deux domaines différents. Si vous voulez que le certificat prend en charge plusieurs domaines, ajoutez simplement -d example1.com à la fin de la commande. Par exemple, pour configurer un certificat SSL pour le domaine « example.com », « www.example.com », « example1.com » et « www.example1.com », utilisez la commande suivante:
./Letsencrypt-auto certonly -a Webroot --webroot-path = / usr / share / nginx / html -d example.com www.example.com -d -d -d example1.com www.example1.com
Dans le premier essai le script d'installation d'un tas de fichiers Python sur votre système. Une fois cela fait, il commencera le processus de génération de certificats. vous devez d'abord vous demander votre adresse e-mail:
Après cela, vous êtes invité à lire les Conditions d'utilisation site Web du Service Let & # 8217; s Crypter. Sélectionnez "OK".
Si vous voyez le message suivant:
& Gt;
Cela signifie que vous avez réussi à produire un certificat SSL pour votre site (s) (s). Si un message d'erreur apparaît à la place, corriger l'erreur et essayez à nouveau.
Activation du certificat SSL pour votre site
Maintenant, qui a généré le certificat SSL, il est temps de l'activer pour votre site.
Retour au dossier de configuration Nginx et ouvrez le fichier de configuration du site:
Cd / etc / nginx / sites disponibles
Sudo nano par défaut & gt; nano sudo
Créer un nouveau bloc de serveur et ajoutez la configuration suivante dans le bloc:
Serveur {
nom_serveur ejemplo.com www.example.com
Écouter ssl 443;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
} & Gt;
Enregistrez et fermez le fichier.
Note : Ce qui précède est une version simplifiée du bloc de configuration Nginx. Vous devez ajouter votre propre configuration personnalisée sur le bloc.
Enfin, tester la configuration:
Sudo nginx -t
Si tout va bien, recharger Nginx:
Sudo services nginx reload
C'est tout. Vous avez configuré avec succès un certificat SSL pour vos sites. Vous pouvez maintenant charger la version « https » de son URL pour le voir en action.
renouvellement automatique d'un certificat de cryptage SSL
Contrairement à la plupart des certificats SSL commerciaux qui sont valables pour au moins un an, un certificat SSL Let & # 8217; de Crypter n'est valable pour trois mois. Passé ce délai devra être renouvelé pour une utilisation continue. Let & # 8217; s Encrypt est livré avec une option de renouvellement de sorte que vous pouvez facilement renouveler vos certificats sans avoir à passer par l'ensemble de l'installation à nouveau. Les instructions suivantes vous montrent comment mettre en place une tâche cron pour renouveler automatiquement votre certificat SSL.
Toujours sur votre serveur, ouvrez l'onglet crontab:
Sudo crontab -e
Ajoutez les lignes suivantes:
00 0 * * 1 / opt / letsencrypt / letsencrypt-renouvellement automatique & gt; & gt; /var/log/le-renew.log
05 0 * * 1 /etc/init.d/nginx reload
Les lignes ci-dessus vérifieront la date d'expiration de vos certificats SSL tous les lundis à 12 heures et renouvelé si elles sont sur le point d'expirer. Nginx recharge également (à 1205 heures) pour veiller à ce que le nouveau certificat est utilisé.
Enregistrer et fermer le crontab.
conclusion
Si vous utilisez un petit site web et sont intéressés à ajouter SSL sur votre site, Let & # 8217; s Encrypt est une excellente option pour ajouter de la crédibilité à votre site. Il est (relativement) facile à installer et ne coûte rien (comme dans la bière gratuite), donc il n'y a aucune raison de ne pas l'utiliser. Cependant, ne fournit un certificat validé par domaine (DV) (le type le plus fondamental du certificat SSL) pour les entreprises qui exigent des certificats SSL validés par l'organisation (VO) ou Extended Validation (EV), un certificat SSL commercial est probablement le chemin à parcourir.
Maintenant que tu as fini de lire Mise en place d'un certificat SSL gratuit & # 171; Let & # 8217; s Encrypt & # 187; dans Nginx (Ubuntu), nous t'invitons à explorer davantage la catégorie Linux. Tu y trouveras d'autres articles intéressants qui élargiront tes connaissances et te tiendront informé. Ne cesse pas de lire et de découvrir plus!
Laisser un commentaire