# Redirection DNS et certificat SSL

**URL:** <https://www.debian-fr.org/t/redirection-dns-et-certificat-ssl/89053>\
**Category:** Support Debian\
**Created:** [Octobre 30, 2023, 3:24 UTC](https://www.debian-fr.org/t/redirection-dns-et-certificat-ssl/89053 "2023-10-30T15:24:00Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![roired](https://www.debian-fr.org/user_avatar/www.debian-fr.org/roired/32/13143_2.png) [@roired](https://www.debian-fr.org/u/roired)\
**Post date:** [Octobre 30, 2023, 3:24 UTC](https://www.debian-fr.org/t/redirection-dns-et-certificat-ssl/89053/1 "2023-10-30T15:24:00Z")

</div>

Bonjour,

Je suis un novice sur le domain, j’ai récemment acquis un serveur dédiée pour me faire la main.

Je bloque maintenant depuis un bon moment, je n’arrive pas faire mes redirection dns et avoir un certificat ssl.

Je vous explique sur mon serveur racine, j’ai plusieur vm qui tourne sous debian. xx1.nomdomaine .fr, xx2.nomdomaine .fr, xx3.nomdomaine. fr, ect…

après plusieurs galère, j’ai réussie a faire fonctionner le sous domaine numéro 1 correctement en https, le port 440 et 80 est donc monopoliser par la vm.

Je bloque totalement sur comment faire un certificat ssl pour avoir mes autre sous domaine en https. (l’et encrypte obligeant d’avoir le port 80 et 440)

(pour info, je procède par NAT pour rediriger les ports de mon serveur racine vers le VM et ensuite via nginx pour le reverse proxy)

---

<div class="post-metadata">

**Author:** ![Zargos](https://www.debian-fr.org/user_avatar/www.debian-fr.org/zargos/32/10889_2.png) [@Zargos](https://www.debian-fr.org/u/Zargos)\
**Post date:** [Octobre 31, 2023, 1:13 UTC](https://www.debian-fr.org/t/redirection-dns-et-certificat-ssl/89053/2 "2023-10-31T13:13:54Z")

</div>

Bonjour,

on va commencer à remettre à plat les terminologie 🙂

tu as un serveur dédié: un VPS (Virtual Private Server).  
Sur ce serveur tu as plusieurs sites web:  
[xx1.nomdomaine.de](http://xx1.nomdomaine.de)  
[xx2.nomdomaine.de](http://xx2.nomdomaine.de)  
[xx3.nomdomaine.de](http://xx3.nomdomaine.de)  
etc..

1ère Question: Ces serveurs tournent sur Apache?

si on considère que tu utlises Apache, pour cchacun des sites tu dois avoir (ex: xx1):

- Un fichier /etc/apache2/sites-available/sitexx1.conf  
Qui contient une déclaration Virtualhost:

> \<VirtualHost \*:80\> # Virtualhost écoutant sur le port 80  
> ServerName [xx1.nomdomaine.fr](http://xx1.nomdomaine.fr)# Nom du serveur auquel le vhost doit répondre  
> ServerAdmin [webmaster@nomdomaine.fr](mailto:webmaster@nomdomaine.fr) # Mail du webmaster
> 
> ```
> ErrorLog /var/log/apache2/xx1-error.log 
> CustomLog /var/log/apache2/xx1-access.log 
> ServerSignature Off
> DocumentRoot "/var/www/xx1" # Racine des fichiers du site
> <Directory "/var/www/xx1/"> #Définition des droits d'un répertoire
> Options Indexes FollowSymLinks # Options choisies
> AllowOverride All # Permet d'utiliser le htaccess dans un site
> Require all granted # On autorise tout le monde
> </Directory> # Fin de la définition des droits
> 
> ```
> 
> # Fin de la définition du vhost

pour activer cette configuration:  
a2ensite xx1.conf  
systemctl reload apache2

Dans le DNS de la zone n`omdomaine.fr` tu declares un enregistrement :

- Type A:  
` xx1 IN A ipVPS`
- Type CNAME  
` xx1 IN CNAME vps.nomdomaine.fr.`

La différence des deux enregistrements:  
A tu pointes sur une IP  
CNAME: tu pointe sur un enregistrement de type A existant; Celui-ci est intéressant dans le sens où tu as déjà l’IP présente dans un type A. Si ton serveur change d’IP, tu ne modifie que le type A, les CNAME n’ont rien à modifier. Tu utilises en fait une notion de service.

Pour faire la partie SSL,

Il te faut modifier ton virtualhost pour prendre en charge le protocole HTTPS, et donc 443; il faut aussi ajouter les entrées vers ton certificat:

> \<VirtualHost \*:443\> # Virtualhost écoutant sur le port 80  
> ServerName [xx1.nomdomaine.fr](http://xx1.nomdomaine.fr)# Nom du serveur auquel le vhost doit répondre  
> ServerAdmin [webmaster@nomdomaine.fr](mailto:webmaster@nomdomaine.fr) # Mail du webmaster  
> ErrorLog /var/log/apache2/xx1-error.log  
> CustomLog /var/log/apache2/xx1-access.log  
> ServerSignature Off  
> SSLEngine on  
> SSLCertificateFile /etc/letsencrypt/live/xx1.nomdomaine.fr/fullchain.pem  
> SSLCertificateKeyFile /etc/letsencrypt/live/xx1.nomdomaine.fr/privkey.pem  
> DocumentRoot «&nbsp;/var/www/xx1&nbsp;» # Racine des fichiers du site  
> \<Directory «&nbsp;/var/www/xx1/&nbsp;»\> #Définition des droits d’un répertoire  
> Options Indexes FollowSymLinks # Options choisies  
> AllowOverride All # Permet d’utiliser le htaccess dans un site  
> Require all granted # On autorise tout le monde  
> # Fin de la définition des droits  
> # Fin de la définition du vhost

Tu recharges ton apache:  
`systemctl reload apache2`

Il n’y a aucun NAT necessaire ici, il te suffit de faire ecouter ton apache sur ton interface Publique.  
`Listen <ip pub>:443`

n’oublie pas bien sur de mettre en place un parefeu avec comme règles:  
Accepter net IP\_PUB\_VPS SSH  
Accepter net IP\_PUB\_VPS HTTPS  
A adapter en fonction de l’outil de parefeu que tu utilises.

Si tu utilises un reverse proxy, c’est lui qui porte les certificats et c’est lui qui reçoit les requêtes.  
Il va donc servir de frontal (tu devras faire une decllaration de frontal pour chaque xx1,x2, etc.. incluant la declaration du certificat correspondant.  
Il te faudra déclarer un backend pour chaque site aussi. personnellement je modifierais pour faire écouter apache en local (127.0.0.1) pour éviter de ne pouvoir attaquer ton apache directement.  
Ton apache en local ecoute sur le port 80 en 127.0.0.1, le reverse proxy écoute sur le port 443 en IP publique.

---

<div class="post-metadata">

**Author:** ![roired](https://www.debian-fr.org/user_avatar/www.debian-fr.org/roired/32/13143_2.png) [@roired](https://www.debian-fr.org/u/roired)\
**Post date:** [Octobre 31, 2023, 1:51 UTC](https://www.debian-fr.org/t/redirection-dns-et-certificat-ssl/89053/3 "2023-10-31T13:51:36Z")

</div>

Bonjour Zargos,

Tout d’abord merci pour cette explication avant d’entrée plus dans les détails pour revenir sur ma configuration.

Mon serveur tourne avec Windows Serveur qui sert uniquement de base pour vmware. c’est sur se dernier que je possède des VM sous Debian avec apache effectivement.

Il y a donc sur ses vm des sites web ( [xx1.nomdedomine.de](http://xx1.nomdedomine.de), [xx2.nomdomaine.de](http://xx2.nomdomaine.de), ect…)

J’utilise le nat pour la redirection entre les port du serveur racine «&nbsp;windows&nbsp;» et les différentes VM sous vmware.

---

<div class="post-metadata">

**Author:** ![Zargos](https://www.debian-fr.org/user_avatar/www.debian-fr.org/zargos/32/10889_2.png) [@Zargos](https://www.debian-fr.org/u/Zargos)\
**Post date:** [Octobre 31, 2023, 2:29 UTC](https://www.debian-fr.org/t/redirection-dns-et-certificat-ssl/89053/4 "2023-10-31T14:29:06Z")

</div>

En fait tu n’aurais pas besoin du NAT, un reverse proxy pourrait tout autant rediriger les URL bvers les serveurs.  
Ceci dit, tu pourrais tout faire avec un seul serveur. Car utiliser un hyperviseur sous windows c’est une grosse perte de ressources machines

Mais sinon tu met ton reverse proxy sur le windows, c’est lui qui recoit les requetes et qui ensuite les renvoies vers les VMs

---

<div class="post-metadata">

**Author:** ![Almtesh](https://www.debian-fr.org/user_avatar/www.debian-fr.org/almtesh/32/10312_2.png) [@Almtesh](https://www.debian-fr.org/u/Almtesh)\
**Post date:** [Octobre 31, 2023, 3:23 UTC](https://www.debian-fr.org/t/redirection-dns-et-certificat-ssl/89053/5 "2023-10-31T15:23:12Z")

</div>

Bonjour et bienvenue sur le forum,

Je ne sais pas si ça peut t’aider, mais pour ce genre de fonctionnement, j’ai fait une machine qui gère tout ce qui est le HTTPS et qui fait proxy avec tous mes services web qui sont en HTTP.  
Si tu as du NAT, ça risque d’être assez compliqué de faire autrement.

---

<div class="post-metadata">

**Author:** ![roired](https://www.debian-fr.org/user_avatar/www.debian-fr.org/roired/32/13143_2.png) [@roired](https://www.debian-fr.org/u/roired)\
**Post date:** [Octobre 31, 2023, 3:34 UTC](https://www.debian-fr.org/t/redirection-dns-et-certificat-ssl/89053/6 "2023-10-31T15:34:14Z")

</div>

Bonjour Almtesh et merci,

c’est vrais que cela peut être une solution, avec le message plus haut de zargos, je commence à avoir une bonne idée de quoi essayer.

Je me pose aussi la question de la viabilité de mon système en terme de consommation de ressource avec plusieurs Vms car j’héberge seulement un gestionnaire de livre, un cloud, un médiacentre, et diverse app peut gourmande qui sorte en interfaces web.

comme le mentionne Zargos, c’est peut être plus intéressent en terme de ressource d’avoir tout sur un seul serveur ou bien sur un hyperviseur de type 1 comme esxi ?

---

<div class="post-metadata">

**Author:** ![Almtesh](https://www.debian-fr.org/user_avatar/www.debian-fr.org/almtesh/32/10312_2.png) [@Almtesh](https://www.debian-fr.org/u/Almtesh)\
**Post date:** [Octobre 31, 2023, 3:40 UTC](https://www.debian-fr.org/t/redirection-dns-et-certificat-ssl/89053/7 "2023-10-31T15:40:47Z")

</div>

Aucune idée, moi, j’utilise des conteneurs Linux, ça évite de devoir virtualiser complètement la machine.
