Freebox, redirection de ports et SSH : une astuce comme un autre

Comme de nombreuses fois expliquées sur mon blog, j'ai une machine sur laquelle je fais de l'autohébergement, cette machine étant derrière une Freebox. La Freebox fait routeur et NAT, une seule IP publique pour différentes IP privées pour chaque machine du réseau. Il est donc nécessaire de faire de la redirection de ports pour rendre accessibles différents services.

Le serveur dispose d'un serveur web et les connexions entrantes sur le port 80 (http) sont automatiquement redirigées vers des connexions via le port 443 au niveau du serveur web. Via HSTS, les connexions suivantes se font automatiquement en connexion https.

HTTP Strict Transport Security (HSTS) est un mécanisme de politique de sécurité proposé pour HTTP, permettant à un serveur web de déclarer à un agent utilisateur (comme un navigateur web), compatible, qu'il doit interagir avec lui en utilisant une connexion sécurisée (comme HTTPS).

De plus les différentes URL, je les ai ajoutées en favori dans Firefox, elles sont donc proposées par défaut quand je saisis quelques lettres de leurs adresses. De ce fait, le port 80 ne me sert pas vraiment.

Il y a certaines situations (cas derrière un proxy par exemple) ou seul les ports 80 et 443 sont ouverts et accessibles en sortie depuis un réseau local vers Internet.

Il y a la solution de multiplexage via SSLH, c'est à dire le fait de mettre en écoute sur le port 443 le serveur web et le serveur SSH et selon le type de demande / client, aiguiller vers l'un ou l'autre
des services.

Autre solution : on fait une redirection au niveau du NAT du port 80 vers le port 22 (port par défaut de SSH). Le port n'est plus alors destiné au serveur web mais aux connexions SSH. Il faut bien penser à définir le port dans la commande qui lance la connexion SSH ou dans le fichier de configuration pour le serveur en question, mais ça marche. Si le proxy est un peu élaboré, le fait de faire passer des connexions chiffrées sur le port 80 ce n'est pas très discret, mais c'est là un tout autre sujet.

Mise à jour : Dans le cadre de renouvellement automatique de certificat Let's Encrypt, le processus utilise une connexion http (et donc le port 80) pour valider l'acme challenge. Le port 80 est donc nécessaire et utilisé... (Si le serveur web ne répond pas correctement sur le port 80, le renouvellement des certificats est en erreur).

Vus : 860
Publié par genma : 387