Important : terminez la configuration SSH avant d’appliquer cette modification
Cette configuration oblige toutes les connexions Screen Sharing à utiliser SSH, y compris les connexions depuis des appareils sur le même réseau local.Une fois activé, macOS n’acceptera que les connexions directes Screen Sharing (VNC) provenant du Mac lui-même (localhost). Les connexions VNC directes depuis d’autres appareils cesseront donc de fonctionner, qu’elles proviennent d’Internet, d’un VPN ou de votre réseau local.
Avant de continuer, assurez-vous que Remote Login est activé sur votre Mac et que Screens est configuré pour utiliser des Secure Connections, y compris Enable on Local Connections, comme décrit ci-dessous. Sinon, Screens ne pourra pas se connecter.
À partir de macOS 10.12 Sierra, macOS peut être configuré de sorte que son service Screen Sharing intégré n’accepte que les connexions provenant du Mac lui-même (localhost). Cela empêche d’autres appareils de se connecter directement au service Screen Sharing (VNC), y compris les appareils du même réseau local.
Screens peut toujours se connecter en établissant d’abord une connexion SSH vers le Mac, puis en faisant transiter la connexion Screen Sharing par SSH. Par conséquent, SSH devient obligatoire pour toutes les connexions Screens à ce Mac, y compris les connexions locales.
Avant de commencer
Comme les connexions Screen Sharing directes ne seront plus acceptées après cette modification, Remote Login (SSH) doit être activé sur votre Mac.
- Ouvrez System Settings.
- Allez dans General > Sharing.
- Activez Remote Login.
- Assurez-vous que votre compte utilisateur Mac est autorisé à accéder.
Vous devrez également configurer Screens et Screens Connect, s’il est installé, pour utiliser des connexions sécurisées comme décrit ci-dessous.
Configurer Screens
Avant de restreindre Screen Sharing aux connexions locales, modifiez votre connexion enregistrée dans Screens et ouvrez la section Security.
Activez Secure Connections et assurez-vous que Enable on Local Connections est également activé.
Ceci est important : une fois que Screen Sharing est restreint aux connexions locales, Screens doit utiliser SSH même lorsque votre appareil se trouve sur le même réseau local que votre Mac.
Configurer Screens Connect
Si vous utilisez Screens Connect, ouvrez ses réglages, sélectionnez General, puis activez Use Remote Login.
Cela garantit que Screens Connect configure les connexions distantes pour utiliser SSH au lieu de se connecter directement au service Screen Sharing.
Restreindre Screen Sharing aux connexions locales
Une fois Remote Login et les options SSH ci-dessus configurés, ouvrez Terminal sur le Mac et saisissez :
sudo defaults write /Library/Preferences/com.apple.RemoteManagement.plist VNCOnlyLocalConnections -bool yes
Entrez le mot de passe de votre compte utilisateur Mac lorsqu’il vous est demandé.
Le réglage VNCOnlyLocalConnections indique à macOS Screen Sharing d’accepter les connexions VNC directes uniquement depuis localhost.
Cela signifie :
- Les connexions VNC directes depuis Internet ne fonctionneront plus.
- Les connexions VNC directes via des VPN tels que Tailscale ou ZeroTier ne fonctionneront plus.
- Les connexions VNC directes depuis d’autres appareils de votre réseau local ne fonctionneront plus.
- Screens doit se connecter via SSH d’abord et faire transiter la connexion VNC par ce biais, que la connexion soit distante ou locale.
Annuler la modification
Si vous souhaitez à nouveau que macOS Screen Sharing accepte directement les connexions réseau, ouvrez Terminal et saisissez :
sudo defaults write /Library/Preferences/com.apple.RemoteManagement.plist VNCOnlyLocalConnections -bool no
Laissez à macOS quelques secondes pour appliquer la modification avant d’essayer de vous reconnecter.
Une fois la modification prise en compte, Screens pourra de nouveau se connecter directement au service Screen Sharing (VNC), y compris via votre réseau local ou un VPN, sans nécessiter de tunnel SSH.
Vous pouvez alors désactiver les réglages spécifiques à SSH dans Screens et Screens Connect si vous ne souhaitez plus utiliser de connexions sécurisées.
Important : une fois Screen Sharing restreint à localhost, Screens doit utiliser SSH pour chaque connexion à ce Mac, même lorsque votre appareil se trouve sur le même réseau local ou que le Mac apparaît dans Nearby.
Sans Enable on Local Connections, les connexions locales tenteront de se connecter directement au service VNC et échoueront.