Déploiement à distance d'Agent des services Terminal Server à l'Aide de Ansible

Déploiement à distance d'Agent des services Terminal Server à l'Aide de Ansible

27663
Created On 09/25/18 18:09 PM - Last Modified 06/14/23 06:19 AM


Resolution


Ansible est un outil de gestion de configuration généralement utilisé pour appliquer l'état d'un serveur dans votre infrastructure informatique. Il est utilisé pour s'assurer que le serveur est en effet dans le même État que vous souhaitez qu'il soit. Il assure les paquets de droite sont installés, les bons fichiers de configuration sont en place, les services de droite sont en cours d'exécution avec les autorisations droites... etc. 

 

Les administrateurs écrivent ensemble de règles dans un langage simple (YAML), sous la forme de Playbooks.  Ansible fonctionne en se connectant à vos nœuds et en poussant de petits programmes, appelés «modules Ansible» pour eux. Plus de détails sur la façon dont Ansible fonctionne peut être trouvé ici

 

Les administrateurs peuvent utiliser les modules Windows Ansible (http://docs.Ansible.com/Ansible/latest/list_of_windows_modules.html) et installer et gérer à distance l'Agent des services Terminal Server (Guide d'administration)  

 

Ansible par défaut utilise SSH pour gérer Linux. Pour gérer Windows, l'accès distant PowerShell est utilisé. Pour que Ansible gère les machines Windows, les étapes documentées dans le site Ansible doivent être suivies

 

Référence:http://docs.Ansible.com/Ansible/latest/intro_windows.html  

 

Les étapes suivantes présentent certains des modules Ansible de Windows qui permettent d'écrire Ansible PlayBook pour déployer à distance l'Agent des services Terminal Server (TS).

  

Ansible fonctionne en même temps contre plusieurs systèmes de votre infrastructure. Il le fait en sélectionnant des portions de systèmes répertoriés dans l'inventaire de Ansible, qui par défaut est enregistré à l'emplacement /etc/Ansible/hosts

 

Par exemple, J'ai défini un serveur d'Agent TS (tsagent1. palab. local) sous une balise (Windows)

 

Windows 
tsagent1. palab. local

 

Le module suivant installe l'Agent TS sur Windows Server. Les détails sur le module win_package peuvent être trouvés ici

Dans L'exemple ci-dessous, le programme d'installation de l'Agent TS (*. msi) est hébergé sur un partage réseau. 

 

-hosts:
tâches Windows:
-nom: installer TS agent
win_package:
Path: \\DC1\Users\Administrator\Downloads\TaInstall64.x64-8.0.8-2.msi
product_id: Pan Terminal Server Agent
État: présent
nom_utilisateur: PALAB \Administrateur
user_password: MySuperSecretPass                                      

 

La commande suivante exécuterait le PlayBook:

 

Ansible-PlayBook-VVV install_ts. yml 

 

Ansible est livré avec un outil appelé comme Ansible Vault (lien) pour crypter les secrets. Ces secrets peuvent ensuite être utilisés dans les tâches.

 

Créez un fichier secret. yml.

 

---
MonSecret: MySuperSecretPass 

 

Crypter le fichier secret. yml

 

# Ansible-Vault crypter secret. yml
nouveau mot de passe Vault: EnterASuperSecretPass
confirmer nouveau mot de passe Vault: EnterASuperSecretPass

cryptage réussi

 

Contenu du fichier secret. yml sera crypté et regardera comme indiqué ci-dessous (le contenu sera différent dans votre environnement)

 

Cat secret. yml 

$ANSIBLE _vault; 1.1; AES256

63303662393262633865366536333531383362633838316462313739306431656130383730303036
6433623639316439313565393430333430643930623266350a353533666432613438626331396636
32326366386361363363383335333135386364346466636533353434323261373739363533626238
3635613765383762380a306439383961336261316432376266386338643765313064376264633535
35616534613264353739333564633534353230623630653762373632323766643838

 

La variable (par exemple: MonSecret) définie dans secret. yml peut maintenant être utilisée dans le Playbooks comme suit:

 

-hosts:
tâches Windows:
-nom: secret
include_vars: secret. yml

-nom: installer TS agent
win_package:
Path: \\DC1\Users\Administrator\Downloads\TaInstall64.x64-8.0.8-2.msi
product_id: Pan terminal État de l'Agent serveur
: présent
nom_utilisateur: PALAB\Administrator
user_password: "{{MonSecret} }"                                           

 

Pour exécuter le PlayBook ci-dessus, vous devez entrer la commande folllowing:

 

root @ Kali:/etc/Ansible# Ansible-PlayBook-demander-Vault-passer install_ts_vault. yml
mot de passe Vault : EnterASuperSecretPass

 

Référez http://docs.Ansible.com/Ansible/latest/playbooks_vault.html pour plus de détails sur le coffre-fort.

 

(Facultatif)

 

Pour authentifier les connexions SSL entre le pare-feu et l'agent TS, les administrateurs peuvent télécharger des certificats personnalisés sur l'agent TS. 

 

Pour activer l'authentification mutuelle entre les agents pare-feu et TS, effectuez les étapes suivantes sur un serveur maître Windows et utilisez les configurations et les certificats de ce serveur et poussez à distance vers d'autres serveurs.

 

  • Installer l'Agent TS sur un serveur Windows
  • Transférez des certificats personnalisés sur ce serveur.
  • Ne redémarrez pas le service agent des services Terminal Server
  • Copiez les valeurs du Registre à partir du serveur Windows et copiez également le certificat personnalisé (Custom-CERT. PEM) à partir du répertoire d'installation de l'Agent TS du serveur

L'Agent TS crypte la phrase de passe du certificat et crée une entrée de Registre (TSAgentSSL). Lorsque le service de l'Agent TS est redémarré, l'Entrée du registre sera supprimée et la phrase de passe chiffrée sera écrite dans la Banque d'informations d'identification. Le certificat personnalisé (Custom-CERT. pem) sera chargé et sera utilisé pour la communication avec le pare-feu.

 

Screen Shot 2018-03-20 à 11.35.57 AM. png

 

Screen Shot 2018-03-20 à 11.36.20 AM. png

 

Screen Shot 2018-03-20 à 11.36.47 AM. png

 

Screen Shot 2018-03-20 à 11.37.04 AM. png

 

Screen Shot 2018-03-20 à 11.37.40 AM. png

 

 

Dans l'étape suivante, nous copierons le «Custom-CERT. PEM» à partir d'un serveur maître Windows sur lequel l'agent TS a été installé (reportez-vous aux étapes précédentes) aux serveurs d'agent TS distants.

"win_copy" (lien) est utilisé pour copier le fichier Custom-CERT. PEM dans le dossier d'installation de l'agent TS sur les serveurs d'agent TS distants. Par exemple, vous allez utiliser la commande "Ansible-PlayBook-VVV copy_ts_cert. yml" pour exécuter la tâche suivante.

 

-hosts:
tâches Windows:
-nom: copiez un fichier unique en gardant le nom de
win_copy:
SRC: Custom-CERT. pem
dest: c Program Files Files\Palo Alto Networks\Terminal Server Agent \                   

 

Dans la tâche ci-dessus, le fichier Custom-CERT. pem a été téléchargé depuis maître Windows Server vers le contrôleur Ansible et à partir du contrôleur Ansible, il sera copié sur des serveurs d'Agent TS distants

 

root @ Myans:/etc/Ansible# ls Files/Custom-CERT. pem 
Files/Custom-CERT. pem

 

Sur les serveurs Windows de l'Agent TS distant, nous allons mettre à jour les clés de registre. À partir des étapes précédentes, nous avons pris note des clés de Registre suivantes:

 

  • TSAgentCNEXPIRY
  • TSAgentCNISSUER
  • TSAgentCNNAME
  • TSAgentCNSUBJECT
  • TSAgentSSL

 

À l'Aidedumodule «win_regedit» (lien), les clés de registre des serveurs distants seront mises à jour

 

-hôtes:
tâches Windows:
-nom: CN expiration
win_regedit:
Path: HKLM: \ Software\Palo Alto Networks\TS Agent\Conf
nom: TSAgentCNEXPIRY
données: Mar 14 20:15:                          47 2019 GMT
      type: String
  -Name: CN Emetteur
    win_regedit:
      Path: HKLM: \ Software\Palo Alto Networks\TS Agent\Conf
      Name: TSAgentCNISSUER
      Data:/CN = FW16. palab. local
      type: String
  -Name: nom du CN
    WIN_ regedit:
      Path: HKLM: \ Software\Palo Alto Networks\TS Agent\Conf
      nom: TSAgentCNNAME
      données: cert_TS12Cert. pem
      type: String
  -nom: CN sujet
    win_regedit:
      Path: HKLM: \ Software\Palo Alto Networks\TS Agent\Conf
      Name: TSAgentCNSUBJECT
      Data:/CN = 192.168.75.12
      type: String
  -Name: phrase de passe
    WIN_REGEDIT:
      Path: HKLM: \ Software\Palo Alto Networks\TS Agent\Conf
      Name: TSAgentSSL
      Data: ro6lSTTRERERERERTRRRR
      type: String

 

En utilisant lemodule "win_service" (Link), nous pouvons redémarrer le service Terminal Server Agent. Une fois le service redémarré, l'Agent TS utilise le certificat personnalisé et déplace le mot de passe du Registre vers le magasin d'informations d'identification. Une fois que la clé de Registre (TSAgentSSL) est déplacée, elle ne sera plus visible pour l'affichage dans le registre.

 

-hosts:
tâches Windows:
-nom: Restart Service
win_service:
nom: Pan Terminal Server Agent
État: redémarré

 

Sur le pare-feu, vous pouvez noter que la sécurité de connexion a été configurée sous (Device > identification de l'utilisateur > sécurité de connexion). Dans cette étape, le pare-feu vérifie le certificat d'autorité de certification qui a signé les certificats de l'Agent du service Terminal. 

 

Screen Shot 2018-03-20 à 1.24.49 PM. png

 

Screen Shot 2018-03-20 à 1.25.13 PM. png

 

Il est supposé que sur les serveurs Windows de l'Agent TS, les certificats d'AUTORITÉ de certification sont installés. Les certificats de L'AUTORITÉ de certification peuvent être installés via la stratégie de groupe Windows (lien)

 

On peut apporter des modifications aux configurations de l'Agent des services Terminal Server en effectuant des modifications au registre. L'article en direct suivant (lien) explique comment accorder le registre de l'Agent TS pour une meilleure allocation et gestion des ports.

 

Les captures d'écran suivantes montrent différentes entrées de Registre qui peuvent être modifiées, qui configure en interne les agents TS.

 

Screen Shot 2018-03-20 à 1.33.20 PM. png

 

Screen Shot 2018-03-20 à 1.33.36 PM. png

 

En utilisant lemodule "win_regedit", nous pouvons modifier les registres de l'Agent TS. Les tâches suivantes montrent peu de modifications qui ont été effectuées à L'Agent TS.

 

Valeurs du Registre modifiées pour les clés suivantes:

 

  • StartSize
  • MaxSize
  • StartPort
  • EndPort
  • FreePortBlockDelay
  • EnableTws
  • TSAgentDomain
  • OverrideDomainEnable
  • ReservedPorts
  •  
  •  

 

 

 

  

 

 

 

   

 

  

 

 

 



Actions
  • Print
  • Copy Link

    https://knowledgebase.paloaltonetworks.com/KCSArticleDetail?id=kA10g000000ClNwCAK&lang=fr&refURL=http%3A%2F%2Fknowledgebase.paloaltonetworks.com%2FKCSArticleDetail

Choose Language