Wie verbinde ich Ansible unter Windows von Ubuntu?

Lassen Sie mich Ihnen schnell zeigen, wie Sie den Windows-Server von Ansible aus unter Ubuntu verbinden.


Um die folgenden Schritte ausführen zu können, müssen Python 3.x und Ansible auf beiden Systemen installiert sein. Sie können den folgenden Artikeln folgen, wenn Sie Hilfe benötigen.

So installieren und konfigurieren Sie Ansible unter Ubuntu?

So installieren Sie Ansible unter Windows?

Nachfolgend sind die Details der beiden von mir verwendeten Server aufgeführt:

  • Ansible Controller – 192.168.0.108
  • Windows Server – 192.168.0.102

Schritt 1: Erstellen Sie einen Ansible Windows-Benutzer

Erstellen Sie einen neuen Benutzer für den Verbindungsaufbau von Ansible Windows.

  • Öffnen Sie die Computerverwaltung auf Ihrem Windows-System und gehen Sie zu Lokale Benutzer und Gruppen.
  • Klicken Sie mit der rechten Maustaste auf Benutzer und erstellen Sie einen neuen Benutzer.
  • Aktivieren Sie das Kontrollkästchen Passwort läuft nie ab und klicken Sie auf Erstellen.

Ansible Benutzer

  • Klicken Sie nun unter den verfügbaren Gruppen mit der rechten Maustaste auf die Gruppe Administratoren und dann auf Eigenschaften.
  • Klicken Sie auf Hinzufügen und geben Sie ansible in Objektnamen ein.
  • Klicken Sie auf die Option Namen überprüfen und dann auf OK.

Ansible Gruppen

Jetzt ist ein ansible Benutzer auf einem Windows-Computer bereit.

Schritt 2: Richten Sie Bibliotheken und WinRM ein

Gehen Sie zu Ihrem Ansible-Controller-Computer, aktualisieren Sie ihn und installieren Sie die unten genannten Bibliotheken.

[E-Mail geschützt]: ~ $ sudo apt-get update
[E-Mail geschützt]: ~ $ sudo apt-get installiere gcc python-dev
[E-Mail geschützt]: ~ $ sudo apt install python3-pip

WinRM steht für Windows Remote Management. Sie können damit Verwaltungsaufgaben auf Remote-Windows-Systemen ausführen. Wir werden installieren python3-winrm, Ein Python-Client, mit dem eine Verbindung zum Windows-System hergestellt wird.

[E-Mail geschützt]: ~ $ sudo apt-get install python3-winrm
Paketlisten lesen … Fertig
Abhängigkeitsbaum erstellen
Statusinformationen lesen … Fertig
Die folgenden Pakete wurden automatisch installiert und werden nicht mehr benötigt:
gyp libc-ares2 libhttp-parser2.8 libjs-async libjs-erbt libjs-is-typedarray libjs-knoten-uuid libuv1 libuv1-dev knoten-abbrev knoten-ajv
knoten-ansi knoten-ansi-farbtabelle knoten-ansi-regex knoten-ansi-stile knoten-ansistyles knoten-aproba knoten-archy knoten-sind-wir-da-noch knoten-asynchron

knoten-validieren-npm-paket-lizenz knoten-wcwidth.js knoten-welcher knoten-welches-modul knotenweit ausrichten knoten-umlauf-ansi knoten-umhüllender knoten-y18n
node-yallist node-yargs node-yargs-parser nodejs nodejs-doc
Verwenden Sie ‘sudo apt autoremove’, um sie zu entfernen.
Die folgenden zusätzlichen Pakete werden installiert:
python3-kerberos python3-ntlm-auth python3-anfragen-kerberos python3-anfragen-ntlm python3-xmltodict
Die folgenden NEUEN Pakete werden installiert:
python3-kerberos python3-ntlm-auth python3-anfragen-kerberos python3-anfragen-ntlm python3-winrm python3-xmltodict
0 aktualisiert, 6 neu installiert, 0 entfernt und 231 nicht aktualisiert.
Benötigt 84,8 kB Archive.
Nach diesem Vorgang werden 442 kB zusätzlicher Speicherplatz verwendet.
Möchtest du weiter machen? [J / n] Y.
Holen Sie sich: 1 http://old-releases.ubuntu.com/ubuntu cosmic / Universe amd64 python3-kerberos amd64 1.1.14-1build1 [16.8 kB]
Holen Sie sich: 2 http://old-releases.ubuntu.com/ubuntu cosmic / Universe amd64 python3-ntlm-auth all 1.1.0-1 [19.6 kB]
Holen Sie sich: 3 http://old-releases.ubuntu.com/ubuntu cosmic / Universe amd64 python3-request-kerberos alle 0.11.0-2 [10.1 kB]
Holen Sie sich: 4 http://old-releases.ubuntu.com/ubuntu cosmic / Universum amd64 python3-request-ntlm all 1.1.0-1 [6.004 B]
Holen Sie sich: 5 http://old-releases.ubuntu.com/ubuntu cosmic / Universum amd64 python3-xmltodict alle 0.11.0-2 [10.6 kB]
Holen Sie sich: 6 http://old-releases.ubuntu.com/ubuntu cosmic / Universe amd64 python3-winrm all 0.3.0-2 [21.7 kB]
84,8 kB in 1 s (70,3 kB / s) abgerufen
Auswahl des zuvor nicht ausgewählten Pakets python3-kerberos.
(Datenbank lesen … 244430 Dateien und Verzeichnisse derzeit installiert.)
Vorbereitung zum Entpacken … / 0-python3-kerberos_1.1.14-1build1_amd64.deb …
Python3-Kerberos auspacken (1.1.14-1build1) …
Auswahl des zuvor nicht ausgewählten Pakets python3-ntlm-auth.
Auswahl des zuvor nicht ausgewählten Pakets python3-xmltodict.
Vorbereitung zum Entpacken … / 4-python3-xmltodict_0.11.0-2_all.deb …
Python3-xmltodict (0.11.0-2) entpacken …
Auswahl des zuvor nicht ausgewählten Pakets python3-winrm.
Vorbereitung zum Entpacken … / 5-python3-winrm_0.3.0-2_all.deb …
Python3-winrm (0.3.0-2) entpacken …
Einrichten von python3-kerberos (1.1.14-1build1) …
Einrichten von python3-winrm (0.3.0-2) …

Schritt 3: Aktualisieren Sie die Ansible Inventory-Datei

Jetzt werde ich die ansible-Hosts-Datei mit der Windows-System-IP-Adresse bearbeiten. Jetzt weiß ansible, welches Windows-System eine Verbindung herstellen muss.

[E-Mail geschützt]: ~ $ sudo gedit / etc / ansible / hosts

[Sieg]
192.168.0.102

Schritt 4: Aktualisieren Sie die Ansible-Gruppenvariablen

Erstellen Sie ein Verzeichnis zum Einfügen von Variablen, die eine Verbindung zum Windows-System herstellen müssen.

[E-Mail geschützt]: ~ $ mkdir / etc / ansible / group_vars
[E-Mail geschützt]: ~ $ sudo chmod -R 777 / etc / ansible /

Erstellen Sie eine Datei win.yaml und geben Sie die im ersten Schritt erstellten Benutzerdetails und einige weitere Variablen ein, die für die Verbindung mit dem Windows-System erforderlich sind.

[E-Mail geschützt]: ~ $ gedit /etc/ansible/group_vars/win.yaml

ansible_user: ansible

ansible_password: ansible

ansible_connection: winrm

ansible_winrm_server_cert_validation: ignorieren

ansible_winrm_transport: basic

ansible_winrm_port: 5985

ansible_python_interpreter: C: \ Benutzer \ geekflare \ AppData \ Local \ Programme \ Python \ Python37 \ python

Schritt 5: Konfigurieren Sie die zu verwaltenden Windows-Server

Öffnen Sie Ihre Windows Power Shell und aktualisieren Sie sie. Powershell 3.0 und .NET Framework 4.0 müssen auf dem Windows-Computer vorhanden sein.

PS C: \ WINDOWS \ system32> $ url = "https://raw.githubusercontent.com/jborean93/ansible-windows/master/scripts/Upgrade-PowerShell.ps1"
PS C: \ WINDOWS \ system32> $ file = "$ env: temp \ Upgrade-PowerShell.ps1"
PS C: \ WINDOWS \ system32> $ username = "ansible"
PS C: \ WINDOWS \ system32> $ password = "ansible"
PS C: \ WINDOWS \ system32> (New-Object -TypeName System.Net.WebClient) .DownloadFile ($ url, $ file)
PS C: \ WINDOWS \ system32> Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Force
PS C: \ WINDOWS \ system32> &$ file -Version 5.1 -Username $ username -Password $ password -Verbose

Um WinRM auf einem Windows-System mit ansible zu konfigurieren, wurde von ansible ein Remote-Konfigurationsskript bereitgestellt. Führen Sie das Skript in der PowerShell aus.

PS C: \ WINDOWS \ system32> $ url = "https://raw.githubusercontent.com/ansible/ansible/devel/examples/scripts/ConfigureRemotingForAnsible.ps1"
PS C: \ WINDOWS \ system32> $ file = "$ env: temp \ ConfigureRemotingForAnsible.ps1"
PS C: \ WINDOWS \ system32> (New-Object -TypeName System.Net.WebClient) .DownloadFile ($ url, $ file)
PS C: \ WINDOWS \ system32> Powershell.exe -ExecutionPolicy ByPass -File $ -Datei
PS C: \ WINDOWS \ system32> winrm zählt winrm / config / Listener auf

Hörer
Adresse = *
Transport = HTTP
Port = 5985
Hostname
Aktiviert = wahr
URLPrefix = wsman

CertificateThumbprint
ListeningOn = 127.0.0.1, 169.254.8.240, 169.254.36.9, 169.254.102.217, 169.254.215.170, 192.168.0.102, :: 1, fe80 :: 3131: c6d7: 9ef5: 8f0% 7, fe80 :: 51b7: 9134: 550d: d7aa% 22, fe80 :: 88f1: 1229: e1dd: 2409% 16, fe80 :: 99cf: 5796: 4f8e: f5c1% 15, fe80 :: fd77: c19d: e0f2: 66d9% 9

Hörer
Adresse = *
Transport = HTTPS
Port = 5986
Hostname = DESKTOP-2L8QMI6
Aktiviert = wahr
URLPrefix = wsman

CertificateThumbprint = C83B3FC8B274D0B650F0FD647DC7AC129BBE3FA0
ListeningOn = 127.0.0.1, 169.254.8.240, 169.254.36.9, 169.254.102.217, 169.254.215.170, 192.168.0.102, :: 1, fe80 :: 3131: c6d7: 9ef5: 8f0% 7, fe80 :: 51b7: 9134: 550d: d7aa% 22, fe80 :: 88f1: 1229: e1dd: 2409% 16, fe80 :: 99cf: 5796: 4f8e: f5c1% 15, fe80 :: fd77: c19d: e0f2: 66d9% 9

Stellen Sie winrm so ein, dass HTTP-Verkehr zugelassen wird.

PS C: \ WINDOWS \ system32> winrm set winrm / config / service ‘@ {AllowUnencrypted ="wahr"} ‘
Bedienung
RootSDDL = O: NSG: BAD: P (A; GA; BA) (A; GR; IU) S: P (AU; FA; GA; WD) (AU; SA; GXGW; ;; WD)

MaxConcurrentOperations = 4294967295

MaxConcurrentOperationsPerUser = 1500

EnumerationTimeoutms = 240000
MaxConnections = 300

MaxPacketRetrievalTimeSeconds = 120
AllowUnencrypted = true
Auth
Basic = true
Kerberos = wahr
Verhandeln = wahr
Zertifikat = falsch
CredSSP = false

CbtHardeningLevel = Entspannt
DefaultPorts
HTTP = 5985
HTTPS = 5986
IPv4Filter = *
IPv6Filter = *

EnableCompatibilityHttpListener = false

EnableCompatibilityHttpsListener = false

CertificateThumbprint
AllowRemoteAccess = true

Stellen Sie die Authentifizierung in wirm auf basic ein.

PS C: \ WINDOWS \ system32> winrm set winrm / config / service / auth ‘@ {Basic ="wahr"} ‘
Auth
Basic = true
Kerberos = wahr
Verhandeln = wahr
Zertifikat = falsch
CredSSP = false
CbtHardeningLevel = Entspannt

Schritt 6: Testen Sie die Konnektivität zum Windows Server

Jetzt sind alle Schritte an der Maschine erledigt. Gehen Sie zum Ansible Controller-Computer und pingen Sie den Windows Server-Computer mit dem win_ping Ansible-Modul an.

[E-Mail geschützt]: ~ $ ansible win -m win_ping
192.168.0.102 | ERFOLG => {

"geändert": falsch,
"Klingeln":: "Pong"
}}

Die Erfolgsmeldung zeigt an, dass die Verbindung hergestellt wurde. Jetzt kann das Windows-System von Ansible aus unter Ubuntu remote verwaltet werden.

STICHWORTE:

  • Ansible

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map