LangueFrançais

Accès distant

Avec AirCode Ø, vous pouvez travailler depuis n’importe où pendant que l’application, les projets, les terminaux et les agents continuent de tourner sur votre machine. N’exposez jamais le serveur sur Internet sans les contrôles d’accès.

Accès distant intégré

L’application de bureau et le serveur comprennent un tunnel qui établit uniquement des connexions sortantes. Vous n’avez pas besoin d’ouvrir un port sur votre routeur ni de configurer un DNS dynamique :

  1. Ouvrez Paramètres → Accès distant sur ordinateur, ou Plus → Serveurs → Accès distant sur le web adaptatif et dans l’application mobile native.
  2. Connectez votre compte, définissez un mot de passe pour l’instance dans Sécurité et accès, et conservez AirCode Ø relay dans les Paramètres de connexion.
  3. L’accès distant démarre automatiquement. La vue d’ensemble affiche l’adresse HTTPS de l’instance et l’état de connexion.
  4. Ouvrez cette adresse ou choisissez Générer un QR code de couplage, puis scannez-le depuis Ajouter un serveur → Scanner un QR code dans l’application mobile.

L’accès distant géré démarre et se reconnecte automatiquement dès que le compte et le mot de passe de l’instance sont prêts, même après un ancien réglage désactivé. Aucune action d’activation ni fenêtre de configuration n’est nécessaire. Les connexions privées et personnalisées restent disponibles dans les Paramètres de connexion. Hosted gère automatiquement sa connexion ; modifiez son adresse dans les paramètres Hosted.

Le mot de passe AirCode Ø protège toujours le serveur ; l’application, les projets et les sessions restent sur la machine hôte. Le tunnel refuse de démarrer si aucun mot de passe n’est défini. Le QR code de couplage ne contient jamais ce mot de passe. Il contient une autorisation aléatoire qui expire après cinq minutes et cesse de fonctionner après le premier scan réussi. Le serveur donne alors au téléphone son propre token révocable.

Si la sécurité Windows bloque le tunnel de l’application de bureau

AirCode Ø contient frpc.exe, le client qui crée le tunnel sortant. Une règle de sécurité Windows peut le classer comme logiciel potentiellement indésirable et bloquer son démarrage. Dans ce cas, l’écran Accès distant affiche Le client du tunnel n’a pas pu démarrer, avec les actions Voir les instructions et Réessayer.

  1. Choisissez Voir les instructions, puis Ouvrir Sécurité Windows.
  2. Ouvrez Protection contre les virus et menaces → Historique de protection, puis développez la dernière entrée concernant une application potentiellement indésirable.
  3. Vérifiez que le fichier appartient à l’installation AirCode Ø à laquelle vous faites confiance et que son chemin se termine par \resources\payload\vendor\frpc\frpc.exe. L’alerte correspondante peut s’appeler PUA:Win32/FRProxy.
  4. Seulement si l’installation et le chemin correspondent, choisissez Autoriser sur l’appareil.
  5. Revenez dans AirCode Ø et choisissez Réessayer.

Si le nom de l’alerte ou le chemin diffère, laissez le fichier bloqué et examinez-le séparément. Ne désactivez jamais Sécurité Windows et n’excluez pas tout le dossier d’installation d’AirCode Ø. Microsoft décrit ces actions dans son guide de l’historique de protection.

Configuration en ligne de commande sur un serveur Linux

Autorisez le compte du Relay géré ; la connexion de l’instance démarre ensuite automatiquement :

aircode login
aircode whoami
aircode start --projects-root /srv/workspaces --relay managed --generate-password

Les instances AirCode Ø appartenant au même utilisateur Unix partagent l’autorisation de cet appareil. Chaque instance garde son propre port, mot de passe, préfixe d’URL public, identité de tunnel et état d’activation. Au premier démarrage du service, l’inscription se termine ; le tunnel se reconnecte au serveur après une panne ou un redémarrage.

Le Relay géré refuse de démarrer si vous êtes déconnecté, si le compte est inactif ou si l’instance n’a pas de mot de passe. aircode logout retire les identifiants partagés de la machine. Une connexion gérée existante peut rester active jusqu’à l’expiration de son bail : si vous devez couper l’accès immédiatement, arrêtez l’instance ou passez-la en mode privé avant de vous déconnecter.

Les autres choix de démarrage sont explicites :

aircode start --relay private
aircode start --relay custom --relay-url https://relay.example.com \
  --relay-enrollment-token-file /run/secrets/aircode-relay-enrollment

private limite l’accès au VPN ou au réseau privé. Le Relay géré démarre automatiquement dès que le compte et le mot de passe sont prêts.

Limites de confiance du Relay géré

Le Relay géré d’AirCode Ø termine actuellement la connexion TLS avant de transmettre le trafic authentifié à votre hôte AirCode Ø. Ses opérateurs peuvent donc techniquement voir le trafic pendant qu’il traverse le relais, même si les données de l’application et des sessions ne sont pas stockées sur le Relay dans le fonctionnement normal du service. Un chiffrement de bout en bout empêchant l’inspection par le Relay n’est pas encore disponible.

Si cela ne répond pas à vos exigences, utilisez Réseau privé uniquement avec Tailscale ou un autre VPN, ou exploitez votre propre relais.

Fast preview et navigateur partagé

L’écran Navigateur propose deux modes de transport :

  • Fast preview est le choix par défaut pour une URL de développement locale. La page, ses ressources, le rechargement automatique et les WebSockets HMR s’affichent directement sur l’appareil qui consulte l’aperçu ; Chromium ne tourne pas sur le serveur. Quand l’accès distant est activé, AirCode Ø crée une origine d’aperçu révocable via le Relay. La première ouverture échange le lien d’accès contre un cookie HttpOnly. Vous pouvez ajouter un mot de passe propre à cet aperçu comme seconde protection ; le lien privé reste nécessaire, le mot de passe n’est conservé localement que sous forme de hash et les tentatives ratées sont limitées.
  • Navigateur partagé exécute Chromium sur le serveur et diffuse la même session interactive aux personnes et aux agents. Choisissez-le si un agent doit contrôler le navigateur ou produire des diagnostics, captures ou traces.

Fermer une Fast preview révoque son origine sur le Relay. Ses liens donnent un accès, même quand un mot de passe est activé : ne les publiez pas.

Tailscale ou votre propre VPN

Pour une connexion directe sans passer par le Relay AirCode Ø, ouvrez Accès distant → Paramètres et choisissez Réseau privé uniquement. AirCode Ø n’ouvre alors aucun tunnel public.

Installez Tailscale sur le serveur et vos appareils. AirCode Ø détecte l’adresse IP du tailnet et s’y attache automatiquement. Ouvrez http://<tailnet-ip>:7860 depuis un autre appareil. tailscale serve peut fournir HTTPS avec un véritable certificat :

sudo tailscale serve --bg "http://$(tailscale ip -4):7860"

Au premier lancement, Tailscale peut afficher un lien vers sa console d’administration pour activer Serve/HTTPS sur votre tailnet. Cette activation ne se fait qu’une fois.

WireGuard, ZeroTier ou un tunnel SSH (ssh -L 7860:localhost:7860 server) fonctionnent aussi.

Relais personnalisé

Une organisation peut exploiter l’appliance Caddy + FRP + registre, composée de trois conteneurs et fournie dans le code source d’AirCode Ø. Les données des applications et des projets restent sur les machines des employés. L’inscription d’une nouvelle machine est fermée par défaut et chaque instance reçoit sa propre identité de tunnel.

Sur la machine du Relay :

cd infra/relay
./aircode-relay init \
  --control-domain relay.example.com \
  --tunnel-domain tunnel.example.com \
  --tls-mode provided
# Add a certificate covering relay.example.com and *.tunnel.example.com:
#   tls/fullchain.pem
#   tls/privkey.pem
./aircode-relay up
./aircode-relay doctor
./aircode-relay enrollment create --expires 15m --uses 1 --label alice-laptop

Placez la valeur à usage unique affichée dans un fichier de mode 0600 sur l’hôte AirCode Ø, puis utilisez la commande de Relay personnalisé indiquée plus haut. AirCode Ø consomme et supprime le token en attente après une inscription réussie. FRPS exige TLS ; l’hôte vérifie l’autorité de certification interne et le nom du serveur fournis par la réponse HTTPS authentifiée lors de l’inscription.

Plusieurs employés peuvent partager un Relay. Cela ne rend pas pour autant sûr le partage d’une même instance AirCode Ø : attribuez à chaque employé un compte Unix, un conteneur ou une machine virtuelle ainsi que sa propre instance, tant que les rôles et l’isolation d’exécution sur une instance commune ne sont pas disponibles.

Applications de bureau et mobile

Ajoutez manuellement une connexion avec l’URL du serveur et son mot de passe, ou créez un QR code à usage unique dans Paramètres → Sécurité et accès → Coupler un téléphone. Les connexions et les tokens des appareils couplés sont stockés dans l’espace sécurisé prévu par la plateforme. Dans l’application de bureau, le serveur actif figure dans l’indicateur d’état en bas à gauche : cliquez dessus pour changer de serveur ou en ajouter un, local ou distant.

L’application mobile native doit d’abord disposer d’une adresse de serveur accessible. Une fois connectée, la page Plus → Serveurs → Accès distant gère la même configuration sur le serveur que les interfaces bureau et web adaptatif : compte du Relay géré, méthode de connexion, inscription à un relais personnalisé, préfixe de l’URL publique, connexion et reconnexion automatiques, URL en direct et rotation définitive de l’adresse. Les identifiants du compte, l’autorisation ponctuelle d’inscription et l’identité du tunnel restent sur le serveur, pas dans le profil du téléphone. L’adresse mobile peut être une adresse de réseau local ou VPN, un proxy inverse exploité par vous ou une URL Relay publique.

Un QR code récent importe cette adresse et échange son autorisation à usage unique contre un token propre au téléphone. Les anciens QR codes contenant seulement l’adresse demandent toujours le mot de passe. Scanner un QR code n’active pas le Relay et ne l’exige pas. Vous pouvez consulter et révoquer les téléphones couplés individuellement dans Sécurité et accès, sur le web de bureau, le web adaptatif ou l’application native.

Le couplage utilise HTTPS par défaut. Si le serveur est déjà accessible par une adresse HTTP locale ou un VPN privé, activez Autoriser le couplage sur cette connexion locale avant de créer le QR code. Ce choix ne vaut que pour le prochain code de cinq minutes et se désactive après sa création.

Installer l’application web depuis l’instance HTTPS

Le client AirCode Ø sans boutique s’installe depuis l’origine HTTPS exacte qui sert votre instance. Une fois le Relay géré, un Relay personnalisé ou votre propre proxy inverse HTTPS fiable en service :

  1. ouvrez l’adresse HTTPS de l’instance sur un téléphone ou une tablette et connectez-vous ;
  2. choisissez Installer l’application web dans Plus ou Paramètres → Application web ;
  3. acceptez la proposition d’installation de Chromium ou, sur iPhone et iPad, suivez le guide Partager → Ajouter à l’écran d’accueil ;
  4. ouvrez l’icône installée, puis activez explicitement les notifications Push si vous souhaitez recevoir des alertes quand l’application est fermée.

Sur iPhone et iPad, Web Push n’est proposé qu’après ouverture de l’application web depuis son icône sur l’écran d’accueil. Le navigateur et le système d’exploitation gardent la maîtrise de l’installation et des autorisations. Une application web installée est liée à une origine précise : si l’instance change d’origine, installez-la de nouveau depuis cette adresse et reconnectez-vous.

Vous pouvez lancer le même parcours depuis la page d’installation de l’application web ou depuis la page Télécharger. Le site public vérifie l’adresse dans votre navigateur, ignore les identifiants, les chemins, les paramètres et les fragments, puis ouvre seulement /?pwa-install=1 sur l’origine HTTPS obtenue. Il ne reçoit et ne conserve jamais l’adresse de l’instance.

L’application web adaptative couvre l’espace de travail, les sessions, les demandes d’attention, le terminal, les fichiers, Git, le navigateur et les applications, les Focus Plans, Prompt Queue, Scheduled Tasks, les paramètres et les appareils de notification. L’application mobile native reste plus intégrée au système : stockage local chiffré, profils sûrs pour plusieurs serveurs, tâches en arrière-plan délimitées, partage natif de fichiers et d’images, appareil photo, retours haptiques, canaux de notification et liens aircode://. Le navigateur peut supprimer ses données locales, l’exécution en arrière-plan n’est pas garantie et l’installation sur iPhone/iPad est manuelle.

Pare-feu

Le tunnel intégré ne demande aucun port entrant. Il établit des connexions sortantes vers le Relay en HTTPS et FRP. Le mode réseau privé n’ouvre aucune connexion supplémentaire : l’accès dépend de votre VPN. Les Fast preview utilisent des ports temporaires authentifiés sur la même interface que le serveur AirCode Ø ; un pare-feu restrictif doit autoriser le trafic venant du réseau privé vers ces ports.

Pour une session dans un environnement Docker isolé, cette route atteint toujours l’interface de gestion d’AirCode Ø sur l’hôte. Le trafic du terminal traverse ensuite l’API Docker jusqu’au conteneur. Le tunnel ne transporte pas automatiquement le trafic sortant du conteneur et ne publie pas ses ports de développement.