Utiliser un Mac mini comme serveur proxy
Cœur : Xray-core (VLESS + Reality)
Réseau : routeur TP-Link + le DDNS officiel intégré
Étape 1 : préparer le réseau
Cette étape sert à ce que, depuis l’extérieur, vous trouviez le Mac mini à la maison sans vous tromper.
Donner au Mac mini une IP LAN statique
L’IP du Mac mini sur le réseau domestique ne doit plus jamais changer. Avant de la modifier, vérifiez que l’IP cible (par ex. 192.168.0.2) n’est pas déjà prise par un autre appareil.
Étape 1 : vérifier un conflit d’IP (exemple 192.168.0.2)
- Ouvrez le Terminal sur le Mac.
- Lancez :
arp -apuis Entrée. - Cherchez
(192.168.0.2)dans la liste :- S’il n’apparaît pas, ou s’il affiche
? (192.168.0.2) at (incomplete), cette IP est libre et sûre. - Si cette IP est suivie d’une adresse MAC (ex.
at a1:b2:c3...), elle est prise. Essayez un autre numéro (ex.192.168.0.16) et revérifiez.
- S’il n’apparaît pas, ou s’il affiche
Étape 2 : figer l’IP à la main
Une fois 192.168.0.2 libre, figez-la :
- Ouvrez Réglages Système > Réseau > sélectionnez la connexion actuelle (Wi-Fi ou Ethernet) > Détails.
- Passez à l’onglet TCP/IP.
- Configurer IPv4 : choisissez
Manuellement. - Adresse IP :
192.168.0.2. - Masque de sous-réseau :
255.255.255.0. - Routeur :
192.168.0.1. - Passez à l’onglet DNS, cliquez sur
+et ajoutez de force des DNS pour ne pas perdre la connexion :192.168.0.18.8.8.81.1.1.1
- Cliquez sur OK pour enregistrer.
Configurer le Dynamic DNS (DDNS)
L’IP WAN d’une box change. Utilisez le DDNS gratuit intégré au routeur pour qu’un nom d’hôte fixe suive toujours l’IP actuelle.
- Connectez-vous à l’admin TP-Link dans un navigateur :
192.168.0.1. - Allez dans Avancé > Réseau > Dynamic DNS.
- Fournisseur : choisissez
TP-Link. - On vous demandera de vous connecter avec un TP-Link ID (si vous n’en avez pas, suivez l’invite et inscrivez-vous gratuitement avec un e-mail).
- Après connexion, créez votre propre hostname (ex.
xxx.tplinkdns.com). - Enregistrez, et vérifiez que le statut affiche Successful. Tant que le routeur est allumé, ce hostname pointera toujours vers la maison.
Configurer le port forwarding
Faire suivre les requêtes entrantes précisément vers le Mac mini.
- Dans l’admin TP-Link, allez dans Avancé > NAT Forwarding > Serveurs virtuels.
- Cliquez sur + Ajouter.
- Port externe :
4433 - Port interne :
4433 - IP interne :
192.168.0.2 - Protocole :
TCP - Activez et enregistrez.
Étape 2 : déployer le serveur sur le Mac mini
Installer et configurer Xray dans le Terminal sous macOS.
Réglages d’alimentation
Empêcher le Mac mini de s’endormir et de tuer le proxy.
- Allez dans Réglages Système > Moniteurs > Avancé, et activez « Empêcher la mise en veille automatique lorsque l’écran est éteint ».
- Allez dans Réglages Système > Économiseur d’énergie (ou les réglages avancés d’affichage) et vérifiez que « Démarrer automatiquement après une coupure de courant » est activé.
Installer Xray
Ouvrez le Terminal et lancez :
brew install xray
(Si brew est absent, installez d’abord Homebrew depuis brew.sh.)
Générer les clés
Lancez les commandes suivantes dans le Terminal, et copiez la sortie dans une note :
-
Générer un UUID (le mot de passe client) :
xray uuid -
Générer une paire de clés Reality (Private key et Public key) :
xray x25519
Écrire la config
Ouvrez la config Xray dans n’importe quel éditeur :
/opt/homebrew/etc/xray/config.json
Videz-la et collez le JSON ci-dessous. Remplacez les placeholders par les vraies clés que vous venez de générer :
{
"inbounds": [
{
"port": 4433,
"protocol": "vless",
"settings": {
"clients": [
{
"id": "【填入你生成的 UUID】",
"flow": "xtls-rprx-vision"
}
],
"decryption": "none"
},
"streamSettings": {
"network": "tcp",
"security": "reality",
"realitySettings": {
"dest": "www.apple.com:443",
"serverNames": ["www.apple.com", "apple.com"],
"privateKey": "【填入你生成的 Private key】",
"shortIds": ["88888888"]
}
}
}
],
"outbounds": [
{
"protocol": "freedom"
}
]
}
Démarrer le service et l’activer au login
Dans le Terminal :
sudo brew services start xray
Le serveur devrait maintenant tourner tranquillement en arrière-plan. Vérifiez le statut :
brew services list
Étape 3 : se connecter depuis un appareil que vous emportez
Quand vous êtes sur un réseau restreint, configurez un téléphone ou un ordinateur comme suit.
Clients recommandés
- iOS / iPadOS : Shadowrocket
- Autres : https://clash.guide/en/download.html
Paramètres du nœud
Dans le client, ajoutez à la main un nœud VLESS et remplissez :
- Address/Host : votre hostname DDNS (ex.
xxx.tplinkdns.com) - Port :
4433 - UUID : [l’UUID que vous avez généré]
- Network/Transport :
TCP - Flow :
xtls-rprx-vision - TLS/Security :
Reality - SNI :
www.apple.com - PublicKey : [la Public key que vous avez générée]
- ShortId :
88888888 - SpiderX / empreinte : laisser vide, ou
/
Enregistrez, sélectionnez le nœud, et connectez-vous. Ouvrez un navigateur.
Les deux clients pensent très différemment : Shadowrocket est un formulaire manuel sur le téléphone ; Clash Verge préfère un fichier YAML que vous déployez au même endroit.
Ci-dessous, un import prêt à coller avec les mêmes paramètres (xxx.tplinkdns.com et port 4433). Il ne reste qu’à remplir vos clés.
Shadowrocket
Sur le téléphone, ajouter un nœud à la main est le chemin le plus fiable.
- Nouveau nœud : ouvrez Shadowrocket, tapez
+en haut à droite. - Type : tapez Type en haut, faites défiler, choisissez
VLESS. - Bases :
- Address : votre hostname DDNS (ex.
xxx.tplinkdns.com) - Port :
4433 - UUID : collez l’UUID du Terminal
- Address : votre hostname DDNS (ex.
- Flow : trouvez Flow et mettez
xtls-rprx-vision. - Activer TLS et configurer Reality :
- Activez TLS (vert).
- Entrez dans TLS :
- Allow Insecure : laisser désactivé.
- Peer Name / SNI :
www.apple.com - ALPN : cocher
h2ethttp/1.1
- Plugin : c’est le point important. Tapez Plugin, choisissez
Reality, puis :- Public Key : collez la Public key générée
- Short Id :
88888888 - Spider X : laisser vide
- Enregistrer et connecter : tapez Done/Save en haut à droite. Sur l’écran d’accueil, sélectionnez le nouveau nœud et basculez l’interrupteur du haut pour tester.
Clash Verge
C’est un nœud auto-hébergé, donc pas d’URL d’abonnement générée automatiquement comme chez un fournisseur. L’approche la plus propre dans Clash Verge sur ordinateur est un profil YAML local.
⚠️ Vérifiez d’abord : Clash Verge doit utiliser le core Clash Mihomo (Meta) (barre gauche : Réglages → Clash Core). Seul ce core gère VLESS-Reality.
Étape 1 : créer un profil local
- Ouvrez Clash Verge, cliquez sur Profiles dans la barre gauche.
- Cliquez sur New en haut, choisissez Local.
- Donnez-lui un nom, puis enregistrez.
Étape 2 : coller la config
- Clic droit sur le profil que vous venez de créer, choisissez Edit.
- Un éditeur de texte s’ouvre (ou une vue code dans l’app). Supprimez le contenu par défaut.
- Collez le YAML ci-dessous, en remplaçant [votre UUID] et [votre Public Key] par les vraies chaînes :
proxies:
- name: "【你设置的名字】"
type: vless
server: 【你的DDNS】
port: 4433
uuid: 【你的UUID】
network: tcp
tls: true
udp: true
flow: xtls-rprx-vision
servername: www.apple.com
reality-opts:
public-key: 【你的Public Key】
short-id: "88888888"
client-fingerprint: chrome
proxy-groups:
- name: "Proxy"
type: select
proxies:
- "【你设置的名字】"
- DIRECT
rules:
- MATCH,Proxy