Authentification UltraVNC
Il existe actuellement trois méthodes d'authentification disponibles pour UltraVNC:
L'Authentification VNC Classique enregistre un mot de passe sur la machine
distante. Lors de la connexion avec le client, ce mot de passe doit être
saisi.
Les deux méthodes de Login Windows reposent sur l'authentification d'une
Ouverture de Session Microsoft Windows, c'est-à-dire que le nom d'utilisateur
et le mot de passe d'un domaine Windows ou d'un compte machine sont utilisés
pour l'authentification.
Le Login Windows Classique (MS-Logon I) impose aux comptes utilisateurs d'être situés dans
le même domaine que le compte machine, et est disponible sous Windows
9x.
Le Login Windows Avancé (MS-Logon II) permet une authentification entre domaines, et ne fonctionne que
sous Windows NT, 2000, XP et 2003.
Authentification VNC Classique
Avec UltraVNC, l'accès au Serveur UltraVNC peut (et doit) être protégé au moins par un mot de passe paramétré sur la machine qui héberge ce serveur UltraVNC.
Faites un clic droit sur l'icône UltraVNC dans la Barre d'Etat Système et choisissez "Paramètres d'Administration".
Dans la fenêtre Paramètres d'Administration, tapez un "Mot de Passe VNC", puis cliquez sur "Appliquer".
Remarque importante: si aucune des méthode par Login Windows n'a été choisie, il faut IMPERATIVEMENT saisir un mot de passe, sans quoi le serveur VNC refusera toute tentative de connexion.
Login Windows ( MS-Logon I)
Avec UltraVNC, l'accès au Serveur UltraVNC peut être géré par les Utilisateurs, les Domaines et les Groupes MS disponibles à partir de la machine qui héberge ce serveur UltraVNC. Actuellement, les domaines et dossiers actifs NT sont pris en charge. Les sous-domaines ne sont PAS pris en charge, l'utilisateur devant appartenir au domaine du serveur.
Faites un clic droit sur l'icône UltraVNC dans la Barre d'Etat Système et choisissez "Paramètres d'Administration".
Dans la fenêtre Paramètres d'Administration, cochez "Login Windows Nécessaire".
Puis cliquez sur "Paramètres de Login Windows ".
Vous pouvez ajouter ou supprimer ici des utilisateurs et groupes ou modifier
leurs droits.
Peu de choses sont à connaître et à configurer si vous souhaitez que cet outil fonctionne correctement sur votre machine Serveur WinVNC, ces réglages dépendant de la version de Windows utilisée.
Pour utiliser le Login Windows sous Windows 95, Windows 98, et Windows Millennium Edition, vous devez aussi activer les services de sécurité NTLM via le Panneau de Configuration > Réseau > Contrôle d'Accès, en sélectionnant le contrôle d'accès au niveau Utilisateur. Win 9.x nécessite les 2 dlls radmin32.dll et rlocal32.dll que l'on peut trouver dans nexus.exe.
Sous Windows XP, la valeur de registre ForceGuest est réglée
sur 1 par défaut dans la clé suivante :
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
Sur un ordinateur sous Windows XP, vous devez vérifier :
Si le compte Invité est activé, une ouverture de session SSPI sera réussie
comme Hôte pour tout utilisateur qualifié.
Si ForceGuest est désactivé (réglé sur 0), SSPI
ouvrira une session pour l'utilisateur spécifié.
Si l'utilitaire Authtest indique que le compte Invité est bloqué, c'est
qu'un compte Invité ouvert est détecté et le Login Windows refusera tout
accès.
Login Windows Avancé (MS-Logon II)
Description
En plus de la première implémentation du Login Windows (MS-Logon I), le Login Windows Avancé (MS-Logon II) peut effectuer une authentification entre domaines, c'est-à-dire que le compte utilisateur peut se situer dans un autre domaine que le compte de l'ordinateur.
Prise en charge :
- Windows NT, Windows 2000, Windows XP et Windows 2003.
- Toute imbrication possible de groupes et d'utilisateurs.
- Différents styles de synthaxe possibles:
- domaine\utilisateur
- utilisateur@domaine.com (UPN, c'est-à-dire Nom de l'Utilisateur Principal)
Configuration Nécessaire
- Sous Windows NT 4, il vous faut au moins avoir installé le SP4 et le gestionnaire de configuration de sécurité.
- Sous Windows XP, la valeur de registre
ForceGuest
est réglée sur1
par défaut dans la clé de registre suivante :
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
Si le compte Invité est activé, une ouverture de session SSPI sera réussie comme Invité pour tout utilisateur qualifié.
SiForceGuest
est désactivé (réglé sur0
), SSPI ouvrira une session pour l'utilisateur spécifié.
Il est donc important de désactiverForceGuest
. Sinon, toute autorisation est attribuée concernant le compte Invité! - Stratégies de Sécurité : L'authentification échouera
si "Refuser l'ouverture de session pour l'ordinateur à partir du
réseau" est activée pour un groupe dont fait partie le compte d'ouverture
de session. Ce qui s'applique aussi bien aux Stratégies de Sécurité Locales qu'aux Politiques de Groupe (GPO).
Par conséquent, vérifiez que les comptes utilisateurs utilisés pour l'authentification de Login Windows ne sont pas affectés par ces réglages.
Configuration
Configuration Manuelle
Faites un clic droit sur l'icône de UltraVNC dans la Barre des Tâches et choisissez "Paramètres d'Administration".
Dans la fenêtre Paramètres d'Administration, cochez "Login Windows Nécessaire" et "Login Windows Avancé ".
Cliquez ensuite sur "Paramètres de Login Windows".
Vous pouvez ajouter ou supprimer ici des utilisateurs ou des groupes, ou modifier
leurs droits.
Intéragir
est le mode normal avec lequel vous pouvez prendre
le contrôle de la souris et du clavier. C'est un synonyme de Contrôle Total
.
Voir
permet au compte de visionner l'écran distant,
mais la souris et le clavier locaux ne peuvent contrôler l'écran
distant.
Configuration Automatisée
Vous pouvez utiliser l'outil MSLogonACL pour exporter le ACL d'une machine et l'importer dans une autre.
A tester
Comme le Login Windows Avancé ( MS-Logon II) est relativement nouveau et qu'il existe différents
scénarios d'utilisation, nous vous encourageons à partager vos
expériences. Merci d'envoyer vos résultats sur le forum
UltraVNC consacré à MS-Logon.
Un certain nombre de facteurs sont à considérer : Versions d'OS
différentes, Active Directory ou ancienne approbation de domaines NT,
comptes locaux ou de domaines utilisés, convention de nommage (synthaxe) utilisée
et différentes possibilités d'imbrications de groupes.
- OS
- WinNT, W2K, wXP, W2K3
- Infrastructure
-
Avec/sans Active Directory
- Comptes
- Utilisateurs/groupes locaux et/ou de domaines
- Synthaxe
- utilisateur, machine\utilisateur, domaine\utilisateur, user@domain.com (UPN), groupe, domaine\groupe
- Domaines
- (implique approbation/AD) utilisateur et/ou groupe d'un autre domaine que l'ordinateur, groupes imbriqués sur plusieurs domaines
Bogues connus (non encore réglés)
- Rapport d'erreur / débogage à améliorer
Historique
-
31. 01. 2005
- Réglé: Changement dans la détection de la plate-forme
pour appeler security.dll ou secur32.dll.
Désormais, aucune détection de plate-forme n'est traitée (semble influencer le problème sous NT4SP6a), secur32.dll étant appelée à la place. Si l'appel échoue, security.dll est appelée. - 10. 12. 2004
- Réglé: Certains mots de passe (comme Abc0DefG) influencent
l'échec de l'authentification.
(voir https://forum.uvnc.com/viewtopic.php?t=803) - 08. 12. 2004
- Réglé: authSSP.dll changé en Unicode pour autoriser
les caractères étendus (ä, ö, ü, ç, ß etc.) des mots de passe.
(voir https://forum.uvnc.com/viewtopic.php?t=1259) - 29. 10. 2004
- Réglé: Les noms d'utilisateurs avec des espaces entrainaient
l'échec du chargement avec l'outil MSLogonACL.
(voir https://forum.uvnc.com/viewtopic.php?t=1046&highlight=#4025) - 07. 10. 2004
- Liste des groupes modifiée pour un ACL réel.
UI changé dans la Fenêtre Sécurité.
Outil d'import/export ajouté pour ACL.
- 20. 08. 2004
- Réglé: Changement dans la plate-forme de détection pour appeler security.dll au lieu de secur32.dll sous NT 4.
- 04. 08. 2004
- L'autorisation utilise désormais AccessCheck avec SecurityDescriptor
et Access Token.
Une seule tentative d'ouverture de session Windows est nécessaire pour tester l'authentification et l'autorisation. - 25. 06. 2004
- Premier essai.
MSLogonACL pour UltraVNC
Qu'est-ce que MSLogonACL?
Le but de MSLogonACL est de permettre des installations UltraVNC automatisées comprenant la configuration des droits d'accès pour le Login Windows Avancé (MS-Logon II).
Avec la nouvelle fonctionnalité Login Windows d'UltraVNC, les droits d'accès sont enregistrés dans une ACL (liste de contrôle d'accès). Il s'agit d'une structure binaire qui détient une liste de SID (identifiants de sécurité) avec une description des droits accordés ou refusés pour chaque SID.
L'ACL peut être éditée via la fenêtre des propriétés VNC. Pour permettre des installations VNC automatisées, une méthode de configuration de l'ACL est nécessaire à partir de la ligne de commande. C'est la raison d'être de MSLogonACL.
Exporter une ACL
MSLogonACL /e fichier
pour exporter vers le fichier
.
Si fichier
est omis, les réglages de sécurité
sont imprimés dans une console (stdout).
Les lignes commençant par ==
sont des informations de
débogage de stderr.
Importer une ACL
MSLogonACL /i /a fichier
pour ajouter les ACL à
l'ACL en cours ou
MSLogonACL /i /o fichier
pour remplacer l'ACL en cours
en lisant la configuration de sécurité à partie du
fichier
.
Format du fichier de configuration
allow 0x3 domaine\compte
ou
deny 0x3 domaine\
compte
0x1
pour Lecture Seule, 0x3
pour Interaction ou
implique que vous pouvez aussi afficher le bureau distant.
domaine
peut représenter le nom de l'ordinateur ou le
nom d'un domaine.
Si le domaine n'est pas spécifié (comme deny 0x3
compte
),
Windows tente de faire correspondre le nom du compte à un compte
local ou à un domaine.
Il n'est pas recommandé d'omettre la partie domaine car ceci peut entrainer
des résultats inattendus.
compte
peut être un nom de groupe ou un nom d'utilisateur.
Si le nom de compte contient des espaces, l'expression domaine\compte doit
être limitée par des guillemets:
allow 0x3 "domaine\compte"
Même si le nom de compte ne contient pas d'espaces, les guillemets ne
choqueront pas.
MSLogonACL propose deux abréviations spéciales pour les domaines
:
un point pour désigner le nom de l'ordinateur et deux points pour le
domaine de l'ordinateur:
.\
compte
pour le compte local d'un ordinateur
ou
..\
compte
pour le compte d'un domaine d'ordinateur.