OPNsense Forum

International Forums => French - Français => Topic started by: freegate on January 10, 2025, 05:29:53 PM

Title: NAT en fonction d'une adresse web
Post by: freegate on January 10, 2025, 05:29:53 PM
Bonjour,

Je ne sais pas si Opnsense gère ce besoin. Je souhaite que lorsque qu'une requête web en provenance du wan correspond à l'adresse https://exemple.com que la translation NAT se fasse sur un serveur Web LAN précis. Et a contrario tout autre requête web se transfère vers un autre serveur web du LAN.
Il s'agit d'un filtre non pas en fonction du port mais en fonction de l'adresse URL. Cela doit se faire au niveau du firewall avant d'entrer dans le LAN.

Est-ce que possible avec Opnsense ? Si oui comment s'y prendre ?

Cordialement.
Title: Re: NAT en fonction d'une adresse web
Post by: EricPerl on January 11, 2025, 08:57:17 PM
C'est un boulot pour un 'reverse proxy': https://docs.opnsense.org/manual/reverse_proxy.html (https://docs.opnsense.org/manual/reverse_proxy.html)
Tu as le choix pour le plug-in.
Title: Re: NAT en fonction d'une adresse web
Post by: freegate on January 13, 2025, 01:44:00 PM
Merci de ta réponse. Tu as parfaitement raison.

A vrai dire, quand je dis que je veux que "tout autre requête web se transfère vers un autre serveur web du LAN", l'autre serveur en question est Nginx Proxy Manager. Mon souci est qu'actuellement Opnsense redirige tout le trafic WAN au niveau des ports 80, 443 vers le serveur https://exemple.com (qui a un certificat SSL Comodo).

Je souhaite rediriger plutôt le WAN vers mon serveur Nginx Proxy Manager(NPM). Mais quand je parametre https://exemple.com dans NPM, ça le rend inaccessible, le certificat SSL de ce dernier n'est pas compatible avec NPM qui gère des certificats let's enscrypt. Je cherche une solution de contournement.
Title: Re: NAT en fonction d'une adresse web
Post by: EricPerl on January 13, 2025, 10:08:06 PM
Je ne comprends pas ton probleme mais je n'ai aucune expérience avec SSL/TLS sur un serveur interne.

Tu as l'air d'avoir des soucis de certificats avec NPM sur un serveur interne.
Quelle aide/fonction attends-tu de la part de OPNsense?
Title: Re: NAT en fonction d'une adresse web
Post by: freegate on January 14, 2025, 05:35:33 PM
J'aurais voulu que Opnsense m'apporte une solution de contournement, compte tenu que NPM ne peut pas rediriger le trafic WAN vers mon serveur web interne.
J'ai pensé que OPNsense était aussi capable de faire du NAT Forwarding en fonction d'une URL, comme il le fait en fonction d'une adresse IP ou d'un port.
Title: Re: NAT en fonction d'une adresse web
Post by: EricPerl on January 14, 2025, 11:33:16 PM
Si tu n'es pas attaché à NPM, il y a plusieurs options pour un reverse proxy directement sur OPN. nginx en particulier.
Title: Re: NAT en fonction d'une adresse web
Post by: freegate on January 15, 2025, 01:44:06 AM
Merci pour cette piste. Je vais l'explorer. On va bien voir.
Title: Re: NAT en fonction d'une adresse web
Post by: DT-O on January 16, 2025, 11:05:31 AM
Bonjour freegate,

Si j'ai bien compris, le problème provient du certificat fournit par Comodo. Celui-ci ne peut pas être importé sur NPM.

Je pense que tu devrais créer sur OPNSense une Autoritée de Certification, tenter d'importer le certificat Comodo. Si l'importation est possible, tu peux installer os-haproxy (plugin) et de l'utiliser en reverse proxy.

Je te laisse faire la config. Lorsque tu seras à l'étape "public services", tu pourras en théorie sélectionner le certificat importer pour l'utiliser sur ton site exemple.com.

N'hésite pas à demander de l'aide sur HAProxy, il est pas forcément facile à prendre en main quand tu connais pas.
Title: Re: NAT en fonction d'une adresse web
Post by: EricPerl on January 16, 2025, 09:26:28 PM
Un CA, c'est pour générer des certificats. Pas besoin de cela.
Si freegate a déjà un certificat, il devrait pouvoir l'importer dans le reverse proxy de son choix. Il pourrait aussi en générer un autre...
Title: Re: NAT en fonction d'une adresse web
Post by: freegate on January 21, 2025, 05:29:16 PM
Tout le monde me parle de HAproxy comme étant largement supérieur à NPM en terme de performance.
J'aime bien l'interface graphique de NPM.
Ceci dit, je pense que je vais quand même investir un peu de temps dans l'apprentissage de HAproxy.
Je sens que la solution à mon problème est dans cette direction.