Pascal Hambourg a écrit :
François Cerbelle a écrit :cerdo cyon a écrit :Bonjour je cherche le moyen de forwarder tout ce qui arrive sur le port 80 vers le port 443 de mon serveur webiptable -t nat -A PREROUTING -p tcp -m tcp -d <IPSERVER> --dport 80 -j DNAT --to-port 443DNAT n'a pas d'option --to-port. Plutôt REDIRECT, ou bien DNAT --to :443Mais tu risque d'avoir des soucis avec la validation des certificats ensuite, dans les navigateurs.Pourquoi, puisque seul le port change et pas l'adresse ?
Oui, je me suis trompé dans ma syntaxe. J'aurais du relire le man et mes scripts avant de répondre.Il y a le problème du HTTPS recu alors que du HTTP est attendu, et je supposais en effet que le serveur était différent (d'où le <IPSERVER>). Ce qui n'est apparemment pas le cas. Sinon, la résolution inverse de l'IP (celle visible pas le navigateur est celle de la machine iptable) donnera certainement un nom different de celui du véritable serveur (trouvé dans les certificats) et cela risque d'entraîner des plaintes des navigateur en indiquant qu'il y a peut être un homme-dans-le-milieu ;-)
Maintenant, je crois qu'une redirection Apache serait plus efficace, voici celles que je mets habituellement en place pour les services nécessitant une authentification :
<VirtualHost *:80> ServerAdmin webmaster@domaine.tld DocumentRoot /usr/share/squirrelmail ServerName webmail.domaine.tld ErrorLog /var/log/apache2/webmail.domaine.tld-error.log CustomLog /var/log/apache2/webmail.domaine.tld-access.log combined LogLevel warn ServerSignature Off <IfModule mod_rewrite.c> RewriteEngine On RewriteRule ^(.*) https://webmail.domaine.tld$1 [R] </IfModule> </VirtualHost> <VirtualHost *:443> ServerAdmin webmaster@domaine.tld DocumentRoot /usr/share/squirrelmail ServerName webmail.domaine.tld ErrorLog /var/log/apache2/webmail.domaine.tld-error.log CustomLog /var/log/apache2/webmail.domaine.tld-access.log combined LogLevel warn ServerSignature Off <IfModule mod_ssl.c> SSLEngine On SSLCertificateFile /etc/apache2/ssl/apache.pem </IfModule> </VirtualHost> (les deux lignes Rewrite de la premiere section)L'avantage est que l'utilisateur va voir qu'il est redirigé, va (peut-etre) s'en souvenir, va (peut-etre) avec des signets plus à jour, va (peut-etre) comprendre que l'adresse qu'il tape n'est pas bonne... En tout cas, je ne lui cache pas son erreur pour qu'il puisse la prendre en compte.
Fanfan