On n'a besoin d'un reverse proxy **que dans le cas ou on n'a pas d'ipv6**. et comme tout le monde n'a pas encore ipv6 (il y a même des gens qui vont désactiver l'ipv6 sur leur machine...) on va mettre en place un reverse proxy: il suffit d'installer par exemple un server nginx, que ce soit dans l'hyperviseur ou une machine virtuelle. il est préférable d'installer le reverse proxy dans une machine virtuelle plutôt que dans l'hyperviseur de façon à faciliter les sauvegardes.
user www-data;
worker_processes auto;
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf;
events {
worker_connections 768;
# multi_accept on;
}
#Les streams:
stream {
map $ssl_preread_server_name $name {
ikce.numericore.com stream_backend_ikce.numericore.com;
visio.ikce.numericore.com stream_backend_ikce.numericore.com;
err404.numericore.com stream_backend_err404.numericore.com;
visio.err404.numericore.com stream_backend_err404.numericore.com;
default stream_backend_err404.numericore.com;
}
# Les backends:
upstream stream_backend_ikce.numericore.com { server 192.168.1.171:443; }
#default backend:
upstream stream_backend_err404.numericore.com { server 192.168.1.160:443; }
server {
listen 443;
listen [::]:443;
proxy_pass $name;
# Le proxy_protocole ici casse le map plus haut
proxy_protocol on;
# indispensable
ssl_preread on;
}
}
on rajoute les blocs stream et backend avant le bloc http dans ''/etc/nginx/nginx.conf''
====== les machines (virtuelles ou pas) ======
d'autre part il faudra modifier les fichiers nginx des machines concernées (dans mon cas c'est les machines ikce.numericore.com et err404.numericore.com)
dans err404.numericore.com:
on rajoute simplement ''proxy_protocol'' dans le segment ''server'' et uniquement pour le port 443
on ne touche pas au port 80
on ne touche pas à l'ipv6 vu que dans mon cas les machines ont de l'ipv6 public.
voici un extrait du fichier ''/etc/nginx/conf.d/err404.numericore.com.conf'':
server {
listen 443 ssl http2 proxy_protocol;
listen [::]:443 ssl http2;
server_name err404.numericore.com;
lorsque on modifie le fichier de conf nginx, Yunohost ne va pas être content et refusera de les mettre à jour car ils auront étés modifiés
il faut faire pareil pour les autres machines virtuelles (ikce.numericore.com dans mon cas)
====== la box ======
et enfin sur la box il faut rediriger les ports 80 et 443 vers l'ip de la machine qui héberge le reverse proxy sni
====== fichiers complets ======
{{ :notes:formation_webperso:rpsni:nginx.conf |-> /etc/nginx/nginx.conf}}
{{ :notes:formation_webperso:rpsni:err404.numericore.com.conf |-> /etc/nginx/conf.d/err404.numericore.com.conf}}