Hoe kan u Ansible op Windows vanaf Ubuntu verbind?

Laat ek u vinnig wys hoe u die Windows-bediener kan koppel vanaf Ansible wat op Ubuntu loop.


Om die onderstaande stappe te volg, moet u python 3.x en Ansible op beide die stelsel hê. U kan die onderstaande artikels volg as u hulp nodig het.

Hoe om Ansible op Ubuntu te installeer en op te stel?

Hoe om Ansible op Windows te installeer?

Hieronder is die besonderhede van albei die bedieners wat ek gebruik:

  • Antwoorde kontroleerder – 192.168.0.108
  • Windows Server – 192.168.0.102

Stap 1: Skep ‘n antwoordige Windows-gebruiker

Skep ‘n nuwe gebruiker vir die instel van die Ansible windows-verbinding.

  • Open rekenaarbestuur op u Windows-stelsel en gaan na plaaslike gebruikers en groepe.
  • Klik met die rechtermuisknop op Gebruikers en skep ‘n nuwe gebruiker.
  • Kies Wagwoord verval nooit die merkblokkie nie en klik op skep.

verantwoordelike gebruiker

  • Klik nou tussen die beskikbare groepe met die rechtermuisknop op die groep Administrateurs en klik op eiendomme.
  • Klik op Voeg by en voer verantwoordelik in objekname in.
  • Klik op die opsie vir keurname en dan OK.

verantwoordelike groepe

Nou is ‘n verantwoordelike gebruiker op ‘n Windows-masjien gereed.

Stap 2: Opstel van biblioteke en WinRM

Gaan na u verantwoordelike beheermasjien, werk dit op en installeer die biblioteke hieronder genoem.

[Email protected]: ~ $ sudo apt-get update
[Email protected]: ~ $ sudo apt-get install gcc python-dev
[Email protected]: ~ $ sudo apt installeer python3-pip

WinRM staan ​​vir Windows-afstandbeheer. Dit laat u toe om bestuurstake uit te voer op eksterne Windows-stelsels. Ons sal installeer python3-winrm, ‘n python-kliënt wat gebruik word om ‘n verbinding met die Windows-stelsel te maak.

[Email protected]: ~ $ sudo apt-get install python3-winrm
Leespakketlyste … Klaar
Bou afhanklikheid boom
Lees staatinligting … Klaar
Die volgende pakkette is outomaties geïnstalleer en is nie meer nodig nie:
gyp libc-ares2 libhttp-parser2.8 libjs-async libjs-erf libjs-is-typedarray libjs-node-uuid libuv1 libuv1-dev node-afkorting node-ajv
knooppunt-ansi-knooppunt-ansi-kleur-tabel knooppunt-ansi-regex knooppunt-ansi-style knooppunt-ansistyles knooppunt-aproba knooppunt-archie-knooppunt-is-ons-daar-nog-knooppunt-asynk

node-valideer-npm-pakket-lisensie knoop-wcwidth.js knoop-watter knoop-watter-module knooppunt-breed-in lyn knoop-wrap-ansi knoop-wrappy knooppunt-y18n
node-yallist node-yargs node-yargs-parser nodejs nodejs-doc
Gebruik ‘sudo apt autoremove’ om dit te verwyder.
Die volgende addisionele pakkette sal geïnstalleer word:
python3-kerberos python3-ntlm-authent python3-versoeke-kerberos python3-versoeke-ntlm python3-xmltodict
Die volgende NUWE pakkette sal geïnstalleer word:
python3-kerberos python3-ntlm-authent python3-versoeke-kerberos python3-versoeke-ntlm python3-winrm python3-xmltodict
0 opgegradeer, 6 nuut geïnstalleer, 0 om te verwyder en 231 nie opgegradeer nie.
Moet 84,8 kB argiewe kry.
Na hierdie operasie word 442 kB ekstra skyfspasie gebruik.
Wil jy voortgaan? [J / n] Y
Kry: 1 http://old-releases.ubuntu.com/ubuntu kosmiese / heelal amd64 python3-kerberos amd64 1.1.14-1build1 [16.8 kB]
Kry: 2 http://old-releases.ubuntu.com/ubuntu kosmiese / heelal amd64 python3-ntlm-authentic almal 1.1.0-1 [19.6 kB]
Kry: 3 http://old-releases.ubuntu.com/ubuntu kosmiese / heelal amd64 python3-versoeke-kerberos almal 0.11.0-2 [10.1 kB]
Kry: 4 http://old-releases.ubuntu.com/ubuntu kosmiese / heelal amd64 python3-versoeke-ntlm almal 1.1.0-1 [6,004 B]
Kry: 5 http://old-releases.ubuntu.com/ubuntu kosmiese / heelal amd64 python3-xmltodict all 0.11.0-2 [10.6 kB]
Kry: 6 http://old-releases.ubuntu.com/ubuntu kosmiese / heelal amd64 python3-winrm alles 0.3.0-2 [21.7 kB]
84,8 kB in 1s (70,3 kB / s) gehaal
Die keuse van voorheen nie-gekose pakket python3-kerberos.
(Lees databasis … 244430 lêers en kaarte wat tans geïnstalleer is.)
Berei voor om uit te pak … / 0-python3-kerberos_1.1.14-1build1_amd64.deb …
Python3-kerberos uitpak (1.1.14-1bou1) …
Die keuse van voorheen nie-gekose pakket python3-ntlm-autor.
Die keuse van voorheen nie-gekose pakket python3-xmltodict.
Berei voor om uit te pak … / 4-python3-xmltodict_0.11.0-2_all.deb …
Uitpak van python3-xmltodict (0.11.0-2) …
Die keuse van voorheen nie-gekose pakket python3-winrm.
Berei voor om uit te pak … / 5-python3-winrm_0.3.0-2_all.deb …
Python3-winrm uitpak (0.3.0-2) …
Opstel van python3-kerberos (1.1.14-1bou1) …
Opstel van python3-winrm (0.3.0-2) …

Stap 3: Dateer die Ansible Inventory-lêer op

Nou sal ek die ansible hosts-lêer met die IP-adres van die Windows-stelsel wysig. Dus sal ansible nou weet watter Windows-stelsel dit moet koppel.

[Email protected]: ~ $ sudo gedit / etc / ansible / hosts

[wen]
192.168.0.102

Stap 4: Dateer die antwoordbare groepveranderlikes op

Skep ‘n gids om veranderlikes te koppel wat aan die Windows-stelsel gekoppel moet word.

[Email protected]: ~ $ mkdir / etc / ansible / group_vars
[Email protected]: ~ $ sudo chmod -R 777 / ens / ansible /

Skep ‘n lêer win.yaml en plaas die gebruikersdetails wat u in die 1ste stap gemaak het, en nog ‘n paar veranderlikes wat benodig word om aan die Windows-stelsel te koppel.

[Email protected]: ~ $ gedit /etc/ansible/group_vars/win.yaml

ansible_user: verantwoordelik

ansible_password: ansible

ansible_connection: winrm

ansible_winrm_server_cert_validation: ignoreer

ansible_winrm_transport: basic

ansible_winrm_port: 5985

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

Stap 5: Stel Windows-bedieners op om te bestuur

Maak u Windows-dop oop en gradeer dit op. Powershell 3.0 en .NET Framework 4.0 moet op die Windows-masjien beskikbaar wees.

PS C: \ WINDOWS \ stelsel32> $ url = "https://raw.githubusercontent.com/jborean93/ansible-windows/master/scripts/Upgrade-PowerShell.ps1"
PS C: \ WINDOWS \ stelsel32> $ lêer = "$ Env: temp \ Upgrade-PowerShell.ps1"
PS C: \ WINDOWS \ stelsel32> $ gebruikersnaam = "ansible"
PS C: \ WINDOWS \ stelsel32> $ wagwoord = "ansible"
PS C: \ WINDOWS \ stelsel32> (New-Object-TypeName System.Net.WebClient) .DownloadFile ($ url, $ file)
PS C: \ WINDOWS \ stelsel32> Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Force
PS C: \ WINDOWS \ stelsel32> &$ lêer -Versie 5.1-Gebruikernaam $ gebruikersnaam -Passwoord $ wagwoord-Verberg

Vir die instel van WinRM op ‘n Windows-stelsel met ‘n verantwoordelike ‘, is ‘n afstandkonfigurasie-skrif voorsien deur ansible. Begin die skrip in die PowerShell.

PS C: \ WINDOWS \ stelsel32> $ url = "https://raw.githubusercontent.com/ansible/ansible/devel/examples/scripts/ConfigureRemotingForAnsible.ps1"
PS C: \ WINDOWS \ stelsel32> $ lêer = "$ Env: temp \ ConfigureRemotingForAnsible.ps1"
PS C: \ WINDOWS \ stelsel32> (New-Object-TypeName System.Net.WebClient) .DownloadFile ($ url, $ file)
PS C: \ WINDOWS \ stelsel32> powershell.exe -ExecutionPolicy ByPass -File $ -lêer
PS C: \ WINDOWS \ stelsel32> winrm tel winrm / config / Listener

luisteraar
Adres = *
Vervoer = HTTP
Hawe = 5985
gasheernaam
Geaktiveerd = waar
URLPrefix = wsman

CertificateThumbprint
LuisterOn = 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

luisteraar
Adres = *
Vervoer = HTTPS
Hawe = 5986
Gasheernaam = DESKTOP-2L8QMI6
Geaktiveerd = waar
URLPrefix = wsman

CertificateThumbprint = C83B3FC8B274D0B650F0FD647DC7AC129BBE3FA0
LuisterOn = 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

Stel winrm in om HTTP-verkeer toe te laat.

PS C: \ WINDOWS \ stelsel32> winrm stel winrm / config / service ‘@ {AllowUnencrypted ="waar"} ‘
diens
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 = waar
auth
Basies = waar
Kerberos = waar
Onderhandel = waar
Sertifikaat = onwaar
CredSSP = onwaar

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

EnableCompatibilityHttpListener = onwaar

EnableCompatibilityHttpsListener = onwaar

CertificateThumbprint
AllowRemoteAccess = waar

Stel die verifikasie op die basis in wirm.

PS C: \ WINDOWS \ stelsel32> winrm stel winrm / config / service / autor ‘@ {Basic ="waar"} ‘
auth
Basies = waar
Kerberos = waar
Onderhandel = waar
Sertifikaat = onwaar
CredSSP = onwaar
CbtHardeningLevel = Ontspanne

Stap 6: Toets verbinding met die Windows Server

Nou is al die stappe op die masjien gedoen. Gaan na ‘n verantwoordelike beheermasjien en ping die Windows-bedienermasjien met die win_ping-verantwoordbare module.

[Email protected]: ~ $ verantwoordelike wen -m win_ping
192.168.0.102 | SUKSES => {

"verander": onwaar,
"ping": "pong"
}

Die suksesboodskap wys dat die verbinding tot stand gekom het. Nou is die Windows-stelsel gereed om vanaf die Ansible op Ubuntu op afstand te administreer.

Tags:

  • 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