Configuration de Devolutions Gateway sur Linux
L'installation et l'exécution de Devolutions Gateway sur Linux sont rapides et faciles, sous réserve que plusieurs prérequis soient satisfaits. Ubuntu 22.04 LTS a été utilisé pour démontrer l'installation et la configuration.
Devolutions Server ou Devolutions Cloud est requis pour la configuration, ainsi qu'une licence Devolutions Gateway.
Installer Devolutions Gateway
Accédez à la page Devolutions Gateway GitHub Release et téléchargez le fichier .deb de la dernière version.
Saisissez la commande suivante en ligne de commande :
wget https://github.com/Devolutions/devolutions-gateway/releases/download/v2024.3.2/devolutions-gateway_2024.3.2.0_amd64.deb
Installez le paquet à l'aide de l'utilitaire
dpkg:sudo dpkg -i devolutions-gateway_2024.3.2.0_amd64.deb
Les paquets de configuration et les binaires se trouvent aux emplacements suivants :
Configuration :
/etc/devolutions-gatewayBinaire :
/usr/bin/devolutions-gateway
Mettre à jour Devolutions Gateway
Pour mettre à jour Devolutions Gateway sur Linux, téléchargez le dernier paquet comme expliqué à la section précédente et exécutez la commande d'installation. Le paquet s'installera par-dessus l'installation existante et préservera les configurations.
Installer le module PowerShell de la passerelle
Il est recommandé d'utiliser le module PowerShell de la passerelle pour configurer et gérer l'instance Devolutions Gateway sur Linux.
Installez PowerShell avec cette commande :
Installez le module PowerShell Devolutions Gateway :
Une fois installé, la configuration de Devolutions Gateway peut être démarrée, arrêtée, consultée ou modifiée.
Configurer les certificats
La confiance mutuelle des certificats entre les systèmes est essentielle au bon fonctionnement de Devolutions Gateway. Des fonctionnalités telles que les WebSockets utilisées dans les vues de tableau de bord web de RDP, SSH, etc., nécessitent un certificat correctement approuvé. Un certificat d'une autorité officielle telle que Let's Encrypt est idéal pour la plupart des systèmes de production. Les certificats auto-signés, tels que l'exemple présenté ci-dessous, peuvent être générés, mais nécessitent une configuration supplémentaire pour la confiance. Vous pouvez générer des certificats sur n'importe quel système et les utiliser dans Devolutions Gateway, à condition qu'ils respectent les exigences relatives aux certificats.
Générer un certificat LetsEncrypt sur Ubuntu 22.04 LTS via Certbot
Une option consiste à générer un certificat LetsEncrypt avec l'utilitaire Certbot. Pour installer la dernière version, vous pouvez utiliser le gestionnaire de paquets snap. Selon la distribution Ubuntu, les dépôts APT par défaut peuvent ne pas contenir la dernière version du logiciel. Dans cet exemple, la vérification de domaine est utilisée avec Cloudflare comme fournisseur DNS.
L'exemple ci-dessous montre Certbot installé et exécuté en tant qu'utilisateur root, mais Devolutions Gateway s'exécutant en tant qu'utilisateur différent.
Lors de l'utilisation de Cloudflare, générez un jeton API à portée utilisateur ou compte en utilisant le modèle Edit zone DNS. Une fois le jeton API obtenu, créez le dossier contenant et le fichier
.inicorrespondant pour y stocker le jeton API.Demandez un certificat pour votre domaine Devolutions Gateway en utilisant le plugin DNS Cloudflare. Remplacez la valeur
gateway.mydomain.comci-dessous par votre propre domaine.Modifiez votre fichier de configuration
gateway.jsonpour ajouter les lignes suivantes et utiliser le certificat nouvellement généré, en utilisant le module PowerShell Devolutions Gateway. Les commandes ci-dessous modifient les variables de configurationTlsCertificateFile,TlsPrivateKeyFileetListeners.Avant de pouvoir redémarrer Devolutions Gateway pour utiliser le nouveau certificat, vous devez autoriser l'utilisateur exécutant Devolutions Gateway à lire les fichiers de certificat. On suppose ici que votre utilisateur se nomme devolutions et que le certificat est nommé gateway. Vous accordez des droits de traversée aux répertoires et des droits de lecture aux fichiers de certificat eux-mêmes.
Redémarrez Devolutions Gateway à l'aide de la commande
systemctlou du module PowerShell Devolutions Gateway.
Renouveler le certificat LetsEncrypt
Par défaut, avec la méthode d'installation Snap, un minuteur systemd est utilisé (au lieu d'une tâche cron), qui s'exécute deux fois par jour (mais ne renouvelle un certificat que dans les 30 jours précédant son expiration). Pour forcer un renouvellement, vous pouvez utiliser la commande ci-dessous.
Générer un certificat auto-signé sur Ubuntu 22.04 LTS via OpenSSL
À l'aide de l'utilitaire OpenSSL, générez un certificat directement depuis la ligne de commande. Le certificat doit ensuite être placé directement dans le répertoire de configuration /etc/devolutions-gateway.

La demande de certificat sera différente pour chaque configuration.
Notez que le certificat doit inclure une extension Subject Alternative Name (SAN) avec soit un nom DNS soit une adresse IP, et devrait également contenir l'extension Extended Key Usage (EKU) avec le rôle Server Authentication (serverAuth). Cela est requis car les systèmes d'exploitation et navigateurs modernes, notamment Google Chrome et macOS, rejetteront les certificats ne comportant pas de SAN ou l'EKU approprié, même si le Common Name (CN) est défini. Il est possible d'assouplir cette exigence en définissant l'option TlsVerifyStrict à false si nécessaire, mais cela n'est pas recommandé.
Options de personnalisation
Explication
req
Crée et traite les demandes de certificat, y compris les certificats auto-signés au format PKCS#10.
-x509
Génère un certificat auto-signé.
-subj
Définit le sujet du certificat en ligne de commande. Il ne doit y avoir aucun espace entre les sections.
/C- Pays en code à 2 chiffres, comme « CA » pour le Canada ou « US » pour les États-Unis./ST- État ou province, comme Quebec ou California./L- Localité, comme Lavaltrie ou Sacramento./O- Organisation, comme Devolutions ou Microsoft./CN- Nom commun, iciubuntu-2204(tel qu'affiché par la commandehostname).
-addext
Pour ajouter un Subject Alternate Name (SAN), vous pouvez utiliser ce paramètre pour définir une entrée IP ou DNS.
"subjectAltName = IP:10.10.0.20""subjectAltName = DNS:ubuntu-2204"
-nodes
Ne chiffre pas la clé privée créée.
-days
Le nombre de jours de validité du certificat.
-newkey
Définit l'algorithme et la taille en bits ; ici rsa:2048 est utilisé.
-keyout
L'emplacement où créer le fichier de clé privée.
-out
L'emplacement où créer le fichier de clé publique.
Faire approuver le certificat auto-signé sur Ubuntu
Le certificat TLS a deux rôles :
Sécuriser l'API de gestion ;
Sécuriser tout tunnel client-passerelle dans lequel la passerelle peut inspecter ou filtrer le trafic (sites web, tunnel de passerelle, SCP/SFTP, etc.). Pour les protocoles opaques tels que RDP ou SSH, Devolutions Gateway transfère simplement des octets déjà chiffrés, mais le certificat reste nécessaire pour les vérifications de santé de la passerelle et les fonctionnalités futures.
Une fois le certificat auto-signé créé, il devra être approuvé dans le système Ubuntu. Pour une approbation à l'échelle du système, utilisez l'ensemble de commandes suivant :

Le paquet ca-certificates est peut-être déjà installé. En exécutant la commande update-ca-certificates, un lien symbolique sera créé dans /etc/ssl/certs pointant vers le fichier de certificat copié dans /usr/local/share/ca-certificates.
Si cette opération est effectuée dans Firefox, plusieurs erreurs de confiance apparaîtront, car le navigateur n'utilise pas le magasin de certificats du système. Leur documentation propose quelques solutions.
Faire approuver le certificat auto-signé sur Windows
Une fois le certificat auto-signé créé, il devra être approuvé sur Devolutions Server. Les fichiers server.crt et server.key devront être transférés vers le système Windows, ou leur contenu peut être copié-collé dans des fichiers (par exemple via sudo cat server.crt dans Ubuntu, puis collé dans un fichier texte sur Windows).
Ignorez cette section si Devolutions Server ne s'exécute pas sur Windows.
1. Copiez la clé publique vers Windows (dans l'exemple, C:\Gateway est un emplacement temporaire) :
sudo cat server.crt

Collez le contenu dans un fichier server.crt.

Copiez la clé privée vers Windows :
sudo cat server.key
Collez le contenu dans un fichier server.key.

Créez un fichier PFX à l'aide de l'outil en ligne de commande Windows certutil. Pour que cela fonctionne, le fichier de clé doit avoir le même nom que le fichier crt, avec seulement l'extension qui diffère :
certutil -mergepfx server.crt server.pfx
Importez le fichier PFX dans le magasin de certificats des autorités de certification racines de confiance.
Double-cliquez sur le fichier server.pfx pour démarrer l'assistant d'importation et choisissez Ordinateur local.
Cliquez sur Suivant et acceptez l'invite.

Cliquez sur Suivant.

Saisissez le mot de passe utilisé avec la commande
certutil.Facultatif : choisissez Marquer cette clé comme exportable.

Choisissez l'option Placer tous les certificats dans le magasin suivant.
Sélectionnez Autorités de certification racines de confiance à l'aide du bouton Parcourir....
Cliquez sur Suivant.

Cliquez sur Terminer pour finaliser l'importation.
Ouvrir les ports du pare-feu Ubuntu
Si le système Linux utilise UFW (Uncomplicated Firewall) pour gérer le pare-feu basé sur iptables, exécutez les commandes suivantes pour ouvrir les ports nécessaires :

Modifier la configuration de Devolutions Gateway
La configuration par défaut d'une passerelle contenue dans le fichier /etc/devolutions-gateway/gateway.json nécessite l'ajout des directives de certificat (l'InternalUrl devra utiliser HTTPS) :
Modifiez le fichier ci-dessus pour qu'il corresponde à ce qui suit, en supposant que server.crt et server.key se trouvent dans le même répertoire que gateway.json (l'utilisation de l'éditeur de fichiers intégré Nano est recommandée) :

Redémarrer Devolutions Gateway
Une fois la nouvelle configuration en place, redémarrez Devolutions Gateway. Cela peut être effectué avec la commande systemctl :

Les commandes PowerShell Stop-DGateway et Start-DGateway peuvent également être utilisées.
Connecter Devolutions Gateway à Devolutions Server
Copier la clé publique de Devolutions Server vers Devolutions Gateway Linux
Connectez-vous à la console web Devolutions Server et accédez à Administration – Devolutions Gateway.
Cliquez sur le bouton Plus et choisissez l'option Télécharger la clé publique.

Copiez le contenu du fichier gateway_public_key.pem téléchargé sur Windows.

Remplacez le contenu du fichier /etc/devolutions-gateway/provisioner.pem (l'utilitaire Nano est recommandé) par le contenu copié depuis Windows.

Redémarrez Devolutions Gateway avec la commande
sudo systemctl restart devolutions-gateway.service.
Configurer Devolutions Gateway dans Devolutions Server
Accédez à l'interface web Devolutions Server pour y ajouter le nouveau Devolutions Gateway Linux configuré.
Ignorez cette section si vous installez Devolutions Gateway avec Devolutions Cloud.
Connectez-vous à la console web Devolutions Server et accédez à Administration – Devolutions Gateway.
Cliquez sur le bouton Ajouter (+).
Sélectionnez Gateway.

Saisissez les informations suivantes (celles-ci varieront selon la configuration).
Nom : Linux Gateway
URL :
https://10.10.0.20:7171Nom d'hôte TCP :
Ubuntu-2204
Cliquez sur Enregistrer.

Cliquez sur le menu d'options Plus de la passerelle et choisissez l'option Publier la liste de révocation si la liste de révocation est périmée.


Résoudre les hôtes dans Ubuntu
Le système Devolutions Gateway hébergé sous Linux doit être en mesure de résoudre les adresses demandées par Devolutions Server. La méthode la plus simple pour les tests consiste à modifier le fichier hosts.
Connectez-vous au système suivant :
Hostname :
it-help-dcFully-Qualified Domain Name (FQDN) :
it-help-dc.ad.it-help.ninjaAdresse IP :
10.10.0.3
Ouvrez le fichier hosts en édition avec sudo nano /etc/hosts pour ajouter l'hôte dans Ubuntu.

Ouvrir une session RDP sur le web
La passerelle peut maintenant se connecter aux hôtes. Puisque l'hôte it-help-dc a été ajouté comme résolvable dans Ubuntu, il peut être utilisé pour établir une connexion dans une session web.
Les sessions web nécessitent une passerelle active configurée pour l'entrée, et l'utilisateur qui la lance devra disposer d'une licence Remote Desktop Manager édition Team ou d'une licence Devolutions Launcher.
De plus, si des modifications ont été apportées aux attributions de licences, une déconnexion puis reconnexion peuvent être nécessaires pour voir l'option de lancement de la connexion web.
Dans l'interface web Devolutions Server, cliquez sur Ajouter. Sélectionnez une entrée de session RDP.
Cliquez sur Continuer.

Saisissez un Nom et un Hôte qui doivent être résolvables par l'installation Linux de Devolutions Gateway.
Cliquez sur Ajouter.

Saisissez ou liez les justificatifs nécessaires à la session RDP et cliquez sur Ajouter.

Sous l'onglet VPN/Tunnel/Gateway, choisissez Devolutions Gateway comme type de VPN.
Définissez l'option Connexion sur Toujours se connecter.
Choisissez la passerelle appropriée.
Cliquez sur Ajouter.

Cliquez sur Ouvrir dans le client web.

Ouvrir une session RDP dans Remote Desktop Manager
Si l'entrée est déjà configurée dans l'interface web Devolutions Server, elle peut être lancée depuis Remote Desktop Manager lorsque celui-ci est connecté à l'espace de travail Devolutions Server.
Ignorez cette section si vous installez Devolutions Gateway avec Devolutions Cloud.
Lors de la création d'une nouvelle entrée depuis Remote Desktop Manager, la procédure est similaire à celle de Devolutions Server.
Dans Remote Desktop Manager, cliquez sur Nouvelle entrée. Sélectionnez une entrée de session RDP.
Cliquez sur Sélectionner.

Saisissez un Nom et un Hôte qui doivent être résolvables par l'installation Linux de Devolutions Gateway.
Saisissez ou liez les justificatifs nécessaires à la session RDP.

Définissez l'option Connexion sur Toujours se connecter.
Sous l'onglet VPN/Tunnel/Gateway, choisissez Devolutions Gateway comme type de VPN.

Accédez au sous-onglet Paramètres (Devolutions Gateway).
Choisissez le Devolutions Gateway souhaité.
Cliquez sur Ajouter.

Cliquez sur le bouton Ouvrir la session.
En survolant la barre de titre, une info-bulle apparaîtra indiquant que la session RDP est connectée via Devolutions Gateway.

Mis à jour
Ce contenu vous a-t-il été utile ?