DeskVNCServer - Guide

Lancez un serveur VNC standard sur votre Mac et partagez ecran, presse-papiers, fichiers et meme l'IME avec QuickRemote, le tout sur votre reseau local, sans relais cloud.


Premiers pas

1. Definir un mot de passe

Ouvrez les Reglages (icone d'engrenage, barre du bas) et renseignez le VNC password. Les clients VNC standard utilisent le challenge DES de RFB, qui ne respecte que les 8 premiers octets compatibles ASCII : choisissez un mot de passe d'au plus 8 caracteres.

A propos des mots de passe courts : il s'agit d'une limitation du protocole RFB lui-meme, pas de DeskVNCServer. Si vous avez besoin d'une authentification plus robuste, limitez le serveur a un reseau prive ou utilisez le flux QREX (jeton Bearer apres appairage par PIN) et desactivez le mot de passe VNC.

2. Demarrer le serveur

  1. Dans la fenetre principale, cliquez sur Start. L'indicateur de statut passe a Running.
  2. Quatre listeners sont lances simultanement : VNC 5900, controle QREX 5911, media QREX 4010 et la file API 8766.
  3. Cliquez sur Copy Info pour copier dans le presse-papiers une ligne contenant l'hote, les ports et le PIN actuel.

3. Connecter un client

Pour un visualiseur VNC standard (macOS Screen Sharing, RealVNC, TightVNC, applications VNC mobiles) :

  1. Ouvrez le visualiseur et saisissez vnc://<your-mac-ip>:5900 comme adresse
  2. Tapez le VNC password defini a l'etape 1
  3. Controlez votre Mac immediatement : clavier, souris, copier/coller via RFB

Pour l'application QuickRemote :

  1. Ouvrez QuickRemote sur le telephone ou la tablette et choisissez Add Mac
  2. Saisissez le PIN d'appairage a 6 chiffres affiche par DeskVNCServer (ou scannez le QR code si votre version de QuickRemote le prend en charge)
  3. QuickRemote conserve le jeton Bearer retourne et debloque les fonctions etendues : IME, audio, synchronisation du presse-papiers et transfert de fichiers

Vue d'ensemble de l'interface

Ligne de statut

ElementDescription
Libelle du serveurIdentifie ce panneau.
Badge de statutRunning tant que les listeners sont actifs, Stopped sinon.

Boutons d'action

  • Start : lance les quatre listeners.
  • Stop : ferme tous les listeners et deconnecte les sessions actives.
  • Copy Info : copie dans le presse-papiers un resume rapide de connexion (hote, port VNC, port de controle, PIN) pour le partager facilement avec un client.

Panneau de connexion

Affiche l'hote de bind, les ports, le Server ID actuel et le PIN d'appairage actif. Le texte est mis a jour automatiquement quand les reglages changent.

Panneau QuickRemote API

Reference rapide des protocoles parles par le serveur. Liste les versions RFB prises en charge, la forme des endpoints QREX et l'ensemble des commandes IME, afin que QuickRemote (ou votre propre client) sache ce qui est disponible.


Protocoles et ports

ServicePort par defautProtocoleUtilise par
VNC / RFBTCP 5900RFB 3.8 / 3.7 / 3.3Tout client VNC standard
QREX controlTCP 5911HTTP JSON RPC + WebSocketQuickRemote et autres clients QREX
QREX mediaUDP 4010Paquets compatibles QuickRemoteMessages IME, streaming audio
File APITCP 8766HTTP compatible QuickRemoteNavigation et transfert de fichiers

Authentification

  • Clients VNC : mot de passe RFB DES (les 8 premiers octets compatibles ASCII du mot de passe configure).
  • Clients QREX : l'echange initial du PIN a 6 chiffres sur POST /qr/v1/pair retourne un jeton Bearer. Tout appel HTTP QREX et toute frame WebSocket ulterieurs doivent inclure Authorization: Bearer <token>.
  • Si le VNC password est vide, le serveur annonce le mode no-auth standard RFB. A reserver aux segments LAN de confiance.

Reference rapide des endpoints QREX

GET  /qr/v1/capabilities    # public, returns supported features
POST /qr/v1/pair            # public, exchange PIN for Bearer token
GET  /qr/v1/ws              # WebSocket, auth required
POST /qr/v1/ime/get         # auth required, query active IME
POST /qr/v1/ime/list        # auth required, list available IMEs
POST /qr/v1/ime/set         # auth required, switch IME
POST /qr/v1/ime/toggle      # auth required, toggle IME on/off
POST /qr/v1/ime/commit      # auth required, commit a text string

Reglages

ReglageDefautDescription
Bind host0.0.0.0Interface d'ecoute. Definissez 127.0.0.1 pour limiter au localhost.
VNC port5900Port TCP pour le listener RFB standard.
QREX control port5911Port TCP pour le trafic HTTP + WebSocket QREX.
QREX media UDP port4010Port UDP pour les paquets auxiliaires IME et audio.
QuickRemote file API port8766Port TCP pour l'API de navigation et transfert de fichiers.
VNC password(vide)Jusqu'a 8 octets compatibles ASCII. Vide signifie aucune authentification sur le canal VNC.
QREX bearer token(genere)Jeton actif emis lors de l'appairage. Pour le regenerer, refaites l'appairage ou modifiez ce champ.
Pairing PIN(genere)PIN a 6 chiffres affiche a QuickRemote lors de l'appairage. Change lors de la regeneration.
Stable server ID(genere)Identifiant longue duree utilise par QuickRemote pour reconnaitre ce Mac.
Start server automaticallyOffLancer les listeners au demarrage de l'application.
Allow remote keyboard and mouseOnDesactivez pour des sessions en lecture seule.
Enable IME bridgeOnAutoriser les clients QREX a interroger et controler la methode d'entree macOS.
Enable audio APIOffAutoriser le streaming audio Opus via QREX media UDP. Desactive par defaut pour economiser le CPU.
Enable clipboard syncOnMirroir du presse-papiers entre le Mac et le client distant.
Enable file transferOnAutoriser QuickRemote a lister et lire des fichiers. Lecture seule a moins d'activer aussi les mutations.
Enable file mutationsOffAutoriser uploads, renommages et suppressions. Desactive par defaut ; n'activez que pour des clients de confiance.
Max frame width1440Plafond de largeur de capture d'ecran. Des valeurs plus basses reduisent la bande passante.
Max frame height900Plafond de hauteur de capture d'ecran.
Frame rate12Cible d'images par seconde envoyees aux clients.

Exemples de client

macOS Screen Sharing

  1. Finder → Aller → Se connecter au serveur
  2. Tapez vnc://<your-mac-ip>:5900
  3. Saisissez le VNC password

cURL : decouvrir les capabilities

curl http://<your-mac-ip>:5911/qr/v1/capabilities

cURL : appairer et appeler le IME bridge

# 1. Exchange the PIN for a Bearer token
TOKEN=$(curl -s http://<your-mac-ip>:5911/qr/v1/pair \
  -H "Content-Type: application/json" \
  -d '{"pin":"123456"}' | jq -r .token)

# 2. Commit text via the IME bridge
curl http://<your-mac-ip>:5911/qr/v1/ime/commit \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"text":"hello from remote"}'

Astuces

  • Baissez la frequence d'images et les dimensions maximales lorsque vous etes sur une liaison Wi-Fi lente ou que vous passez par un VPN.
  • N'appairez chaque appareil qu'une seule fois. Apres l'echange initial du PIN, le jeton Bearer survit aux redemarrages, et QuickRemote se reconnecte silencieusement.
  • Utilisez Copy Info comme moyen rapide d'envoyer les details de connexion par chat ou e-mail : il inclut tout ce dont un client a besoin.
  • Laissez Enable file mutations desactive sauf si vous avez vraiment besoin des uploads. Le mode lecture seule suffit pour parcourir captures, notes ou telechargements.
  • Desactivez l'audio API quand vous ne l'utilisez pas. Les codecs au repos consomment encore un peu de CPU sur le chemin d'encodage.

Depannage

Le serveur ne demarre pas

  • Un autre serveur VNC (par exemple macOS Screen Sharing) peut deja occuper le port 5900. Arretez-le depuis System Settings → General → Sharing, ou changez le port dans les reglages de DeskVNCServer.
  • Les ports 5911 / 4010 / 8766 doivent tous etre libres. Verifiez avec lsof -i :5911 et equivalents.

Les clients VNC echouent a s'authentifier

  • Assurez-vous que le mot de passe ne depasse pas 8 octets compatibles ASCII. Les caracteres multioctets ou les chaines plus longues sont silencieusement tronques par l'authentification RFB DES.
  • Si vous souhaitez deliberement aucun mot de passe, laissez le champ vide et connectez-vous avec un visualiseur prenant en charge le mode no-auth de VNC.

QuickRemote ne s'appaire pas

  • Verifiez que le telephone ou la tablette est sur le meme Wi-Fi que le Mac.
  • Ouvrez le panneau de connexion et relisez le PIN. Le PIN peut etre regenere depuis les reglages.
  • Verifiez les reglages du pare-feu macOS : les connexions entrantes sur les ports QREX doivent etre autorisees.

Le controle a distance est laggy

  • Baissez la frequence d'images et les dimensions maximales dans les reglages.
  • Desactivez les fonctions inutilisees (audio, presse-papiers, IME) pour liberer du CPU.

Les fichiers ne se transferent pas

  • Confirmez que Enable file transfer est active. Les listages en lecture seule fonctionnent sans Enable file mutations.
  • Si les uploads echouent, activez aussi Enable file mutations. Sinon, la File API ne repond qu'aux requetes de lecture.

Confidentialite

  • Toutes les sessions se deroulent directement entre le client et votre Mac. Pas de relais cloud, pas de telemetrie, pas d'analytics.
  • Le VNC password, le jeton Bearer QREX, le PIN d'appairage et le Stable Server ID ne sont stockes que dans les reglages locaux de l'application.
  • Les mutations de fichiers sont desactivees par defaut. Les clients distants ne peuvent que lire jusqu'a ce que vous accordiez explicitement l'acces en ecriture.
  • Vous pouvez desactiver toute extension (audio, presse-papiers, transfert de fichiers, IME, saisie distante) a tout moment pour revoquer cette capacite immediatement.
  • Pour conserver le serveur uniquement local au Mac, definissez le bind host sur 127.0.0.1.