VPN du téléphone à la maison : faire du pare-feu votre sortie internet
Atteindre le LAN de la maison n'est pas la même chose que sortir par le lien montant de la maison. Décidez du transfert, du résolveur, d'IPv6 et de l'état déconnecté sur le téléphone.
Connecter un téléphone au tunnel de la maison et ouvrir un partage de fichiers sur le LAN prouve que le tunnel fonctionne. Cela ne prouve pas que les requêtes internet du téléphone sortent par la maison. La différence entre ces deux résultats est une politique de transfert plus une route, et non une case à cocher supplémentaire sur le téléphone. C'est aussi la différence que la plupart des gens supposent avoir déjà configurée.
Trois décisions produisent le chemin de sortie : ce que le téléphone envoie dans le tunnel, où la passerelle de la maison le transfère et ce qui se passe quand le tunnel n'est pas là. Chacune a un mode de défaillance qui, depuis l'écran du téléphone, ressemble aux autres.
Deux sauts, deux politiques
La connexion extérieure se termine à l'écouteur VPN de la maison. Le paquet intérieur est un objet distinct qui doit être transféré quelque part, et le transfert est une décision de pare-feu différente de l'acceptation du tunnel au départ.
phone app -> encrypted tunnel -> home listener
-> decrypted packet -> forward policy -> home uplink -> destination
Sur un routeur domestique typique, ces éléments vivent dans des jeux de règles différents. Accepter le tunnel est une politique d'entrée sur l'interface VPN ; envoyer le trafic du téléphone vers internet est une politique de transfert plus la traduction de source dont le lien montant a besoin. Un routeur qui accepte le tunnel et ne transfère rien produit un téléphone qui affiche connecté et ne charge aucune page.
Si le service VPN tourne sur une machine séparée à l'intérieur de la maison, ajoutez un saut. Le routeur voit désormais le trafic venant de cette machine, donc ses règles s'appliquent à l'adresse du serveur plutôt qu'à l'adresse tunnel du téléphone, et la traduction de source peut faire ressembler chaque téléphone à un seul hôte.
L'écouteur n'est pas le filtre
Décidez où l'application a lieu tant que l'information dont vous avez besoin existe encore. Sur le routeur, l'adresse tunnel du téléphone est visible et peut être mise en correspondance directement. Derrière une seconde traduction, elle a disparu, et les règles écrites pour l'adresse du téléphone ne correspondent plus à rien, en silence.
C'est la raison habituelle pour laquelle une politique fonctionne pour l'ordinateur portable et pas pour le téléphone. L'ordinateur portable se connecte directement au routeur, le téléphone se connecte à un serveur qui transfère via le routeur, et seul le premier chemin préserve l'adresse que la règle attend. La règle n'est pas fausse ; elle compare une valeur qui n'existe plus à cet endroit.
Écrivez le chemin avec l'adresse source telle qu'elle apparaît à chaque point d'application. Ce seul schéma résout la plupart de ces cas avant qu'une règle ne soit modifiée.
Ce que le téléphone doit réellement envoyer
Un téléphone qui ne reçoit qu'une route vers le sous-réseau de la maison n'envoie dans le tunnel que le trafic de ce sous-réseau. Tout le reste sort par le réseau mobile, ce qui explique que le partage de fichiers fonctionne et que les requêtes internet n'atteignent jamais la maison.
La couverture tunnel complète est une décision de routage côté client, et elle doit être définie avec le mécanisme pris en charge par la plateforme, non supposée à partir du profil installé. Une fois définie, la route de retour vers le serveur VPN lui-même doit rester hors du tunnel, sinon le client ne peut pas maintenir son propre transport.
Le DNS mérite sa propre décision, car c'est la partie la plus susceptible de diverger du reste du trafic. Une adresse de résolveur dans le profil est une suggestion que les clients traitent différemment, et une application dotée de son propre résolveur chiffré peut emprunter un chemin totalement séparé. Si la politique de la maison dépend de l'arrivée des requêtes à un résolveur particulier, appliquez-la là où le trafic passe réellement, ou acceptez que certaines requêtes ne le fassent pas. Une requête qui contourne votre résolveur n'atteint jamais une règle écrite pour elle.
IPv6 appartient au même paragraphe que le DNS, pas à une annexe. Un tunnel IPv4 complet ne dit rien du trafic AAAA, et un téléphone sur un réseau mobile à double pile utilisera volontiers le chemin natif pour cela. Choisissez le transport ou le blocage explicitement.
Ce que le pare-feu peut voir et ce qu'il ne peut pas voir
La passerelle peut agir sur ce que son point d'application expose : adresses, ports, protocole, interface et les métadonnées de la connexion. Une requête HTTPS transférée ne livre pas le corps de la page ni le mot de passe simplement parce qu'elle traverse le tunnel de la maison.
Cette limite mérite d'être énoncée, car l'expression « faites-le passer par le pare-feu » implique plus d'inspection qu'un routeur domestique n'en effectue. Une règle de destination, une politique DNS et un proxy de couche applicative sont trois contrôles différents avec trois coûts de déploiement différents.
Ne supposez pas qu'une fonction configurée pour les clients du LAN de la maison s'applique à l'interface VPN. L'appartenance à une zone est un choix de configuration, et une interface VPN qui n'est pas dans la bonne zone n'hérite d'aucune des règles que vous avez testées depuis le canapé.
Décidez l'état déconnecté
Quand le tunnel n'est pas disponible, le téléphone revient au réseau mobile ou refuse d'envoyer le trafic. Les deux sont raisonnables, et un seul correspond à ce que la plupart des gens croient avoir configuré.
Le repli est pratique et fuit par définition : l'instant où le tunnel tombe est l'instant où les requêtes sortent par le chemin de l'opérateur. Le blocage est plus fort et rend le téléphone dépendant du fait que la maison soit joignable, ce qui représente un coût de disponibilité réel pour un voyageur. Aucun des deux comportements n'est un défaut ; les deux sont des produits, et vous choisissez entre eux que vous le disiez ou non.
Testez le choix au lieu de le supposer. Arrêtez le service de la maison, puis essayez une requête depuis le navigateur du téléphone et une depuis une application qui tourne en arrière-plan. Se reconnecter plus tard n'annule pas les requêtes déjà sorties.
Terminez par deux contrôles maîtrisés depuis le téléphone lui-même : une opération autorisée qui doit traverser la maison, et un refus que la politique de la maison est censée appliquer. Confirmez que la passerelle a journalisé le flux attendu, dans la famille d'adresses attendue, après une reconnexion. Un téléphone affichant Connecté est le début de cette vérification, jamais la fin.