Les stratégies TeamViewer permettent d'importer automatiquement les enregistrements des sessions de contrôle à distance vers un stockage SFTP auto-hébergé ou hébergé dans le cloud. Le stockage des enregistrements pour consultation ultérieure peut être utile pour les évaluations de qualité, les formations et les audits. Cet article explique comment configurer les règles de stratégie TeamViewer requises pour y parvenir. Pour en savoir plus sur la manière de démarrer l’enregistrement d’une session à distance, veuillez consulter cet article.
Cet article s'applique aux détenteurs d'une licence TeamViewer Tensor. Windows prend en charge l'enregistrement des sessions entrantes et sortantes, tandis que Linux ne prend en charge que l'enregistrement des sessions sortantes.
TeamViewer prend en charge l'enregistrement et l'importation des sessions de contrôle à distance, entrantes et sortantes, à l'aide de règles distinctes. Les capacités d'enregistrement et de d'importation varient selon le sens de la session et le système d'exploitation.
Configurer une stratégie TeamViewer
Pour configurer votre installation pour l'enregistrement automatique des sessions de contrôle à distance, vous devez créer ou mettre à jour une stratégie TeamViewer existante puis ajouter les règles de stratégie mentionnées dans les paragraphes suivants. Vous pouvez combiner plusieurs règles de stratégie au sein même de la stratégie afin de parvenir à votre objectif spécifique. Une fois que la stratégie est ensuite appliquée aux appareils souhaités, la configuration prendra effet.
Apprenez à créer/mettre à jour et appliquer des stratégies et obtenez plus de détails sur les règles de stratégie.
TeamViewer peut enregistrer et importer les enregistrements des sessions entrantes et sortantes à l'aide de deux règles distinctes, dont la prise en charge dépend du système d'exploitation. Les sections suivantes expliquent la configuration de chaque règle. Les deux règles peuvent être combinées, lorsque cela est pris en charge, pour permettre l'importation des enregistrements entrants et sortants.
Sessions sortantes
La règle principale pour l'enregistrement des sessions sortantes s'appelle Charger les enregistrements des sessions sortantes dans l'espace de stockage personnalisé et permet de transférer les enregistrements vers votre serveur SFTP. La configuration de cette règle sera également expliquée dans la section suivante. Deux autres règles doivent être prises en compte, car elles permettent de mieux contrôler le moment où les enregistrements sont lancés et arrêtés.
La règle de stratégie Appliquer l'enregistrement automatique des sessions de contrôle à distance sortantes démarre automatiquement dès qu'une connexion sortante est établie depuis l'appareil sur lequel la stratégie est appliquée. Si vous souhaitez empêcher l'utilisateur situé devant l'appareil d'arrêter ou de mettre en pause l'enregistrement avant la fin de la session de contrôle à distance, vous pouvez également ajouter la règle de stratégie Désactiver l'arrêt et la mise en pause des enregistrements de sessions. Ces deux règles peuvent être ajoutées et activées sans aucune autre configuration.
Sessions entrantes
Si vous souhaitez enregistrer les sessions entrantes, vous devez appliquer la règle de stratégie Enregistrement automatique des sessions de contrôle à distance entrantes, qui lancera automatiquement l'enregistrement dès qu'une connexion sera établie avec l'appareil auquel la stratégie est appliquée.
Pour importer également ces enregistrements sur votre serveur SFTP, la règle de stratégie Charger les enregistrements des sessions entrantes dans l'espace de stockage personnalisé doit être ajoutée. La configuration de cette règle de stratégie sera également expliquée dans la section suivante.
Comment configurer la règle de stratégie d'importation automatique des enregistrements
Lorsque vous ajoutez la règle Charger les enregistrements des sessions sortantes dans l'espace de stockage personnalisé ou Charger les enregistrements des sessions entrantes dans l'espace de stockage personnalisé à votre stratégie, vous devez configurer quelques champs obligatoires et facultatifs, que les paragraphes suivants expliquent plus en détail.
Champs obligatoires
Actuellement, seuls les serveurs SFTP, qui peuvent être hébergés dans un centre de données sur site ou dans un environnement cloud tel qu'Azure ou Amazon Web Services, sont pris en charge en tant que type de service.
Deux types d'authentification sont disponibles :
- Authentification par mot de passe
- Authentification par clé publique
Choisissez votre option préférée puis vérifiez qu'elle soit bien prise en charge par votre serveur ou service SFTP. Vous devez configurer le nouveau compte et son authentification avant de continuer, car le mot de passe ou la clé privée est nécessaire dans les paragraphes suivants.
Saisissez le nom d'utilisateur du compte à utiliser pour s'authentifier auprès de votre serveur, puis importez l'enregistrement. Spécifiez votre URL de destination, qui doit être une URL SFTP ciblant votre serveur, y compris le chemin d'accès au dossier dans lequel les enregistrements de la session de contrôle à distance doivent être importés. Il est recommandé de minimiser les autorisations du compte choisi, en n'accordant qu'un accès en écriture au dossier spécifique désigné pour l'importation des enregistrements.
Champ mot de passe chiffré ou clé privée chiffrée
Seuls vous et l'appareil d'importation pouvez accéder aux informations d'identification du compte SFTP en toute sécurité, et le mot de passe ou la clé privée doit être chiffré à l'aide d'un certificat défini par l'utilisateur afin de fournir les informations d'identification du compte SFTP en toute sécurité.
Les informations d'identification chiffrées seront alors ajoutées à la règle de stratégie en tant que mot de passe chiffré ou clé privée chiffrée. La raison pour laquelle vous avez besoin d'un certificat pour le chiffrement est qu'il sera ultérieurement déployé sur plusieurs appareils pour le déchiffrement. Votre serveur SFTP ne traitera pas les informations d'identification chiffrées, car l'application TeamViewer les déchiffrera au préalable. Pour cette configuration, il est recommandé d'installer OpenSSL sur votre système.
Il existe de nombreuses façons de générer des certificats, en fonction du système d'exploitation et des outils utilisés. Toutes ces méthodes devraient être viables si les paramètres importants requis pour le certificat x509 sont spécifiés correctement :
- Utilisation des clés : KeyEncipherment, DataEncipherment, KeyAgreement
- Type/Utilisation étendue de la clé : DocumentEncryptionCert, également connu sous le nom 1.3.6.1.4.1.311.80.1
Si vous souhaitez utiliser des certificats auto-signés, vous pouvez utiliser la commande openssl req (vous trouverez sa documentation ici), en remplaçant <CertificateAndKeyName> par un nom de votre choix :
openssl req -x509 \-newkey rsa:2048 \-keyout <CertificateAndKeyName>.pem \-out <CertificateAndKeyName>.crt \-addext keyUsage='keyEncipherment, dataEncipherment, keyAgreement' \-addext extendedKeyUsage='1.3.6.1.4.1.311.80.1'
Cette commande génère un certificat CRT et un fichier de clé privée PEM, qui sont capables de chiffrer et de déchiffrer des données. Ces fichiers devront être convertis en PFX avant d'être déployés sur les appareils Windows, ce qui sera expliqué dans un paragraphe ultérieur.
Une fois que vous avez votre fichier de certificat, vous pouvez vérifier ses paramètres clés en exécutant la commande suivante, en remplaçant <CertificateAndKeyName> par votre véritable certificat, afin de vérifier s'il est compatible. Ceci est particulièrement important si vous souhaitez vérifier si un certificat existant ou provenant d'une tierce partie peut être utilisé :
openssl x509 -text -in <CertificateAndKeyName>.crt
Si la génération de votre clé a réussi, vous pouvez voir les lignes suivantes dans la sortie de votre terminal. Si elles ne sont pas présentes, le chiffrement et le déchiffrement de vos informations d'identification échoueront.
X509v3 Key Usage: critical Key Encipherment, Data Encipherment, Key Agreement X509v3 Extended Key Usage: 1.3.6.1.4.1.311.80.1
Les informations d'identification que vous avez choisies doivent être chiffrées dans la Cryptographic Message Syntax (CMS, vous pouvez en savoir plus à ce sujet dans RFC 5652) à l'aide de votre certificat. Cela peut être fait en lançant la commande openssl cms (vous trouverez sa documentation ici). Pour les commandes suivantes, vous pouvez également spécifier -out <FileName> pour rediriger la sortie du terminal vers un fichier.
Pour générer le mot de passe chiffré, vous devrez remplacer <Password> par le mot de passe de votre compte de serveur SFTP et <CertificateAndKeyName> par le nom de votre fichier de certificat. Veuillez utiliser echo -n sous Linux pour éviter d'ajouter un caractère de nouvelle ligne à la fin de votre mot de passe :
echo "<Password>" | openssl cms -encrypt -outform PEM <CertificateAndKeyName>.crt
Si vous souhaitez utiliser la clé privée chiffrée, vous devez remplacer <PathToPrivateKey> par le chemin relatif ou absolu vers votre clé privée du compte du serveur SFTP.
openssl cms -encrypt -in <PathToPrivateKey> -outform PEM <CertificateAndKeyName>.crt
Une fois les informations d'identification chiffrées avec succès, le résultat ressemblera à l'exemple suivant :
-----BEGIN CMS-----
MIIBwgYJKoZIhvcNAQcDoIIBszCCAa8CAQAxggFqMIIBZgIBADBOMDoxCzAJBgNVBAYTAkRFMSsw
(...)
hvcNAQcBMB0GCWCGSAFlAwQBKgQQddXx6ufF4KafytY5RKIZqYAQtpGNqX/eU+Oz+lxUnYUTJQ==
-----END CMS-----
Prenez la sortie respective de la commande choisie et copiez-la dans le champ de la règle, y compris l'en-tête et le pied de page de la sortie qui signifient le début et la fin du message.
Les préparatifs de la règle de stratégie utilisant ce certificat sont effectués, mais les fichiers PEM et CRT générés sont encore nécessaires lors du déploiement du certificat sur les appareils. La règle de stratégie comporte d'autres champs facultatifs qui sont expliqués dans les paragraphes suivants.
Champ facultatif
Le préfixe d'URL de téléchargement est un champ facultatif, qui peut être spécifié pour offrir des téléchargements directs d'enregistrements à partir de vos serveurs. Ces informations sont ensuite disponibles via notre API Web (pour en savoir plus, cliquez ici) ou dans le cadre de nos intégrations avec Salesforce et ServiceNow. Le champ requiert une URL web comprenant le chemin d'accès, qui contient vos enregistrements. Étant donné que TeamViewer n'a pas accès à votre stockage, les enregistrements devront conserver leur nom d'origine lors de l'importation pour que les chemins d'accès restent valides.
Bien que TeamViewer mette en cache du public host-key de votre serveur SFTP lors de la première connexion afin de vérifier l'identité du serveur et d'empêcher les attaques de type man-in-the-middle, vous pouvez également la spécifier explicitement à l'aide du paramètre optionel SSH public host-key, qui est alors utilisé pour vérifier l'identité du serveur à la place. Ceci est particulièrement utile lorsque vous devez remplacer le host-key de votre serveur SFTP à un moment donné et indiquer aux appareils de s'attendre à un host-key différent de celui qu'ils ont initialement mis en cache.
Dans la plupart des cas, vous pouvez spécifier le public host-key lors de l'installation de votre serveur SFTP ou vous pouvez le rechercher dans les fichiers de configuration ou les tableaux de bord de votre serveur SFTP. Si vous n'avez pas accès à ces valeurs, vous pouvez également les obtenir à partir de votre appareil actuel.
Si vous vous êtes connecté au serveur avant d'utiliser ssh, vous pouvez l'obtenir à partir du fichier known_hosts dans votre dossier .ssh. Vous pouvez également utiliser la commande suivante, en remplaçant <SftpServerDomain> par votre serveur :
ssh-keyscan <SftpServerDomain>
Lorsque vous copiez le host-key dans le champ paramètres, veillez à ne copier que l'empreinte du host-key, et non le nom, l'adresse IP, le type de clé ou le commentaire du serveur.
La configuration de la stratégie est terminée. Vous pouvez étendre la stratégie en y ajoutant d'autres paramètres ou l'enregistrer immédiatement.
Préparation et déploiement du certificat
Pour que l'application TeamViewer puisse importer les enregistrements des sessions de contrôle à distance vers le serveur SFTP, elle doit pouvoir déchiffrer les informations d'identification. Pour ce faire, le certificat créé doit être converti au format du système d'exploitation de l'appareil receveur avant d'être déployé. La même stratégie peut être déployée sur des machines Windows et Linux si les clés sous-jacentes sont les mêmes.
Déploiement des certificats
Si vous déployez ce système sur des appareils Windows, vous devrez convertir vos fichiers PEM et CRT au format PFX à l'aide de la commande suivante, en remplaçant <CertificateAndKeyName> et <CertificateName> par les noms de fichiers respectifs :
openssl pkcs12 \
-inkey <CertificateAndKeyName>.pem \
-in <CertificateAndKeyName>.crt \
-export \
-out <CertificateName>.pfx
Le certificat PFX obtenu peut être déployé dans le stockage de certificats de l'ordinateur local des appareils cibles à l'aide de votre solution de gestion des terminaux. Après le déploiement, le certificat devrait apparaître dans le Gestionnaire de certificats de l'ordinateur local (recherchez Gérer les certificats de l'ordinateur) dans le dossier Personnel ➜ Certificats.
PowerShell nomme cet emplacement :
cert:\LocalMachine\My
Pour limiter au maximum l'accès à la clé privée, restreignez les autorisations au compte SYSTEM et aux comptes administrateurs nécessaires uniquement. Vous pouvez vérifier cela dans le Gestionnaire de certificats de l'ordinateur local en cliquant avec le bouton droit sur le certificat, en sélectionnant Toutes les tâches (All Tasks), puis Gérer les clés privées… (Manage Private Keys...), et en vous assurant que seuls les comptes requis y ont accès.
Si vous déployez cette fonctionnalité sur des appareils Linux, aucun changement n'est nécessaire. Vous devez placer les clés privées PEM dans /etc/teamviewer/ssl/private et les certificats publics CRT dans /etc/teamviewer/ssl/certs. Assurez-vous que le certificat public et la clé privée correspondante ont le même nom de fichier de base, par exemple <CertificateAndKeyName>.pem et <CertificateAndKeyName>.crt. Veillez à ce que root soit le propriétaire du fichier de la clé privée. Il est recommandé de minimiser l'accès à root lui-même.
Test et application de la stratégie
La configuration de cette fonctionnalité étant complexe, elle doit être testée avant d'être déployée sur d'autres appareils. Pour ce faire, installez le certificat sur un appareil local puis appliquez la stratégie à ce même appareil.
Pour importer l'enregistrement de la session sortante, démarrez une session de contrôle à distance à partir de l'appareil, puis lancez l'enregistrement. Pour importer l'enregistrement de la session entrante, établissez une connexion avec l'appareil et vérifiez que l'enregistrement démarre automatiquement. Vérifiez ensuite que le fichier a bien été importé sur le serveur SFTP une fois l'enregistrement terminé. Cela permet de confirmer que le chiffrement, le déchiffrement et la configuration SFTP, ainsi que la connexion au serveur à partir de l'appareil d'importation, fonctionnent correctement.
Si une importation échoue, elle sera réessayée après un court laps de temps, qui augmentera à chaque nouvel échec, jusqu'à une heure. Ce délai permet de réduire le nombre de requêtes erronées adressées au serveur SFTP. En particulier pendant les tests, lorsque la configuration est encore activement adaptée, il se peut que la prochaine tentative ne soit pas effectuée immédiatement après l'arrêt d'un enregistrement. Pour tenter une nouvelle importation immédiatement, un redémarrage complet de TeamViewer peut être effectué (par exemple, en redémarrant l'ordinateur).
Une fois le test réussi, déployez d'abord le certificat sur tous les appareils cibles à l'aide de votre solution de gestion des terminaux, puis appliquez la stratégie à ces appareils. Une fois que ces appareils auront enregistré des sessions de contrôle à distance, tous les enregistrements de ces appareils seront automatiquement importés sur votre serveur.