À propos du projet
Aether est un client de contournement de la censure écrit en Rust, destiné aux réseaux fortement restreints où le DPI, l'empreinte des protocoles, la limitation d'UDP et le blocage des points de terminaison sont courants. Il découvre automatiquement les points de terminaison joignables, établit un tunnel chiffré et expose un proxy SOCKS5 local (par défaut 127.0.0.1:1819) pour les applications.
Principales capacités décrites dans le README :
- Découverte automatique des points de terminaison avec validation de bout en bout du plan de données, de sorte qu'une passerelle n'est approuvée qu'après avoir réellement fait passer du trafic.
- Transport MASQUE sur HTTP/3 (QUIC) ou HTTP/2 (TLS), avec fragmentation optionnelle du ClientHello TLS sur HTTP/2.
- Transport WireGuard, plus des modes imbriqués : WireGuard imbriqué (`gool`) et MASQUE imbriqué (`--mim`), où un tunnel interne est établi depuis l'intérieur d'un tunnel externe pour obtenir une adresse de sortie différente.
- Obfuscation du trafic et règles de routage par domaine, adresse ou port, mises en correspondance à partir du nom de serveur TLS afin que les règles continuent de fonctionner derrière une interface tun.
- Prise en charge d'un proxy en amont, permettant à Aether de sortir via un autre VPN ou proxy déjà en cours d'exécution sur la machine.
- Intégration Tor optionnelle (compilée avec la fonctionnalité `tor`, utilisant arti) : Tor via le tunnel (`--tor`), le tunnel via Tor (`--tor-reverse`), ou Tor seul (`--tor-only`). Avec `--tor`, un second proxy sur 127.0.0.1:1820 sort via Tor. Là où Tor est bloqué, les modes reverse/only récupèrent des bridges depuis bridgedb et utilisent des transports enfichables fournis dans le dossier `pt/`.
- Reconnexion automatique et reconnexion rapide à la dernière passerelle connue comme fonctionnelle.
- Configuration via des options de ligne de commande, des variables d'environnement ou des invites interactives.
Plateformes et empaquetage : binaires précompilés pour Windows x86_64, macOS (Apple Silicon et Intel), Linux x86_64/arm64/armv7 (builds statiques glibc et musl), routeurs OpenWrt (aarch64, armv7l, x86_64 ; MIPS non pris en charge), et Android via Termux avec un script d'installation en une ligne. Chaque archive dispose d'un fichier `.sha256` correspondant et d'un `SHA256SUMS.txt` combiné. Une image Docker est publiée sur GHCR, avec un volume `/data` recommandé pour conserver l'identité WARP générée entre les exécutions.
La compilation depuis les sources nécessite Rust 1.98 ou plus récent, un compilateur C/C++ et CMake, avec le dépôt `quiche` de Cloudflare placé à côté du répertoire `aether` ; le manifeste Cargo se trouve à `aether/Cargo.toml`.
Notes opérationnelles tirées du README : le proxy SOCKS5 n'a pas d'authentification, il doit donc être lié à localhost ou à une adresse LAN et jamais exposé sur le WAN ; sur OpenWrt, la configuration doit résider sur un stockage persistant tel que `/etc/aether` ; et lorsque le routeur achemine son propre trafic vers une interface tun, `--mark 0xff` peut être utilisé pour que les sockets d'Aether contournent le tun. Le projet est développé par CluvexStudio et sa prise en charge de MASQUE repose sur la bibliothèque Quiche de Cloudflare.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.