Ortho
This commit is contained in:
@@ -1,3 +1,3 @@
|
||||
# Mise en place de reverse proxy NGINX avec certificats SSL cerbot
|
||||
# Mise en place de reverse proxy NGINX avec certificats SSL certbot
|
||||
|
||||
Vous trouverez ici toute la documentation relative à la mise en place de reverse proxy NGINX, à l'édition de certificat SSL et au renouvellement automatique de ces certificats.
|
||||
Vous trouverez ici toute la documentation relative à la mise en place de reverse proxy NGINX, à l'édition de certificat SSL et au renouvellement automatique de ces certificats.
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Configuration type d'un reverse proxy NGINX
|
||||
|
||||
Nous allons voir ici comment configurer un reverse proxy NGINX dans deux cas,
|
||||
Ici, nous allons voir comment configurer un reverse proxy NGINX dans deux cas,
|
||||
- Si le container du service est sur la node principale (Alpha).
|
||||
- Si le container du service n'est pas sur la node principale mais sur Beta.
|
||||
|
||||
Dans le premier cas nous redirigerons directement la requête sur le container du service à l'aide d'un reverse proxy NGINX configuré du le container NGINX de Alpha.
|
||||
Dans le premier cas nous redirigerons la requête sur le container du service à l'aide d'un reverse proxy NGINX configuré sur le container NGINX de Alpha.
|
||||
|
||||
Dans le second cas nous redirigerons la requête sur Beta à l'aide d'un reverse proxy NGINX configuré sur le container NGINX de Alpha. Sur Beta la requête sera redirigé vers le container NGINX de Beta avec une règle DNAT.
|
||||
Dans le second cas nous redirigerons la requête sur Beta à l'aide d'un reverse proxy NGINX configuré sur le container NGINX de Alpha. Sur Beta la requête sera redirigée vers le container NGINX de Beta avec une règle DNAT puis vers le container du service.
|
||||
|
||||
|
||||
## Mise en place des DNAT
|
||||
@@ -44,18 +44,18 @@ On redémarre Shorewall
|
||||
systemctl restart shorewall
|
||||
```
|
||||
|
||||
## Dans tout les cas
|
||||
### Instatalation de Certbot
|
||||
## Dans tous les cas
|
||||
### Installation de Certbot
|
||||
|
||||
On installe certbot qui est l'outils utilisé par Let's Encrypt pour obtenir des certificats SSL.
|
||||
On installe certbot qui est l'outil utilisé par Let's Encrypt pour obtenir des certificats SSL.
|
||||
```
|
||||
apt-get install certbot
|
||||
apt-get install python-certbot-nginx
|
||||
```
|
||||
|
||||
Il faut configurer notre zone DNS pour que address.fr pointe vers l'adresse ip publique du cluster. La mention subdomain représente le sous domaine, s'il n'y en a pas laisser un blanc.
|
||||
Il faut configurer notre zone DNS pour que _address.fr_ pointe vers l'adresse ip publique du cluster. La mention subdomain représente le sous-domaine, s'il n'y en a pas, laisser un blanc.
|
||||
```
|
||||
subdomain IN A 84.100.250.4
|
||||
subdomain IN A ip_publique
|
||||
```
|
||||
## Configuration du reverse proxy NGINX pour une connexion sur un container présent sur Alpha.
|
||||
|
||||
@@ -85,7 +85,7 @@ certbot --nginx -d address.fr
|
||||
```
|
||||
Choisir No redirect.
|
||||
|
||||
Maintenant que le certificat est générer on va remplacer la configuration du serveur web.
|
||||
Maintenant que le certificat est généré, on va remplacer la configuration du serveur web.
|
||||
|
||||
```
|
||||
nano /etc/nginx/conf.d/address.fr.conf
|
||||
@@ -100,7 +100,7 @@ server {
|
||||
|
||||
server {
|
||||
listen 443 ssl;
|
||||
server_name address.fr;
|
||||
server_name address.fr;
|
||||
location / {
|
||||
proxy_pass http://ip_ct_alpha/;
|
||||
proxy_set_header Host $http_host;
|
||||
@@ -119,7 +119,7 @@ server {
|
||||
|
||||
### Sur Alpha
|
||||
|
||||
On commence par configurer un serveur NGINX simple pour l'obtention du certificat. Se reverse proxy rediregera les requêtes sur _address.fr_ vers la container NGINX de la node Beta via DNAT.
|
||||
On commence par configurer un serveur NGINX simple pour l'obtention du certificat. Ce reverse proxy redirigera les requêtes sur _address.fr_ vers le container NGINX de la node Beta via DNAT.
|
||||
|
||||
```
|
||||
nano /etc/nginx/conf.d/address.fr.conf
|
||||
@@ -138,7 +138,7 @@ server {
|
||||
```
|
||||
|
||||
### Sur Beta
|
||||
On configure un serveur web qui va rediriger les requetes entrante sur Beta pour l'host "address.fr" vers le container de se site.
|
||||
On configure un serveur web qui va rediriger les requêtes entrantes sur Beta avec comme host _address.fr_ vers le container du service associé à l'host.
|
||||
|
||||
```
|
||||
nano /etc/nginx/conf.d/address.fr.conf
|
||||
@@ -162,7 +162,7 @@ certbot --nginx -d address.fr
|
||||
```
|
||||
Choisir No redirect.
|
||||
|
||||
Maintenant que le certificat est générer on va remplacer la configuration du serveur web.
|
||||
Maintenant que le certificat est généré, on va remplacer la configuration du serveur web.
|
||||
|
||||
### Sur Alpha
|
||||
|
||||
@@ -181,7 +181,7 @@ server {
|
||||
|
||||
server {
|
||||
listen 443 ssl;
|
||||
server_name address.fr;
|
||||
server_name address.fr;
|
||||
location / {
|
||||
proxy_pass http://10.40.0.2/; #Ip de Beta sur le bridge Alpha/Beta
|
||||
proxy_set_header Host $http_host;
|
||||
@@ -196,15 +196,15 @@ server {
|
||||
}
|
||||
```
|
||||
|
||||
## Renouvelement automatique des certificats SSL sur le container NGINX de Alpha
|
||||
Tout les certificats SSL sont édité depuis le container NGINX de Alpha pour éviter d'avoir à les renouveler manuellement nous allons créer une tache de renouvellement automatique avec cron.
|
||||
## Renouvellement automatique des certificats SSL sur le container NGINX de Alpha
|
||||
Tous les certificats SSL sont édités depuis le container NGINX de Alpha. Pour éviter d'avoir à les renouveler manuellement, nous allons créer une tâche de renouvellement automatique avec une tâche cron.
|
||||
|
||||
On accède au fichier de configuration des tâches cron
|
||||
```
|
||||
crontab -e
|
||||
```
|
||||
On ajoute notre tache de renouvelement en fin de fichier
|
||||
On ajoute notre tâche de renouvellement en fin de fichier
|
||||
```
|
||||
0 12 * * * /usr/bin/certbot renew --quiet
|
||||
```
|
||||
Ainsi les certificats se renouveleront automatiquement.
|
||||
Ainsi les certificats se renouvelleront automatiquement.
|
||||
|
||||
Reference in New Issue
Block a user