Lab/Domene

From Slaskete wiki
Revision as of 18:32, 9 June 2024 by Einarjh (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Opprette domene

Vi trenger et Windows-domene som basis for laben vår. Det skal ha to domenekontrollere for redundans. Domenet skal hete win.internjet.ru. Domenekontrollerne skal hete dc1 og dc2. Oppretter to linkede kloner av Windows 2022-imaget med følgende innstillinger

AD-servere, VM-oppsett
VM-ID Name Memory
101 dc1 3072
102 dc2 3072

Når maskinene er klonet så skrus de på, og må settes opp med grunnleggende innstillinger manuelt. Først settes et administrator-passord som noteres i passordlisten. Maskinene settes så opp for å ha disse innstillingene (hostname trenger ikke endres før i Ansible-steget)

AD-servere, manuelt IP-oppsett
Hostname IPv4 address Subnet mask Default Gateway DNS server IPv6 address Subnet prefix length Default gateway
dc1 10.0.10.5 255.255.255.0 10.0.10.1 1.1.1.1 fd9c:e705:7fdc:10::5 64 fd9c:e705:7fdc:10::1
dc2 10.0.10.6 255.255.255.0 10.0.10.1 1.1.1.1 fd9c:e705:7fdc:10::6 64 fd9c:e705:7fdc:10::1

Dette er nok til å begynne å fjernstyre maskinene med Ansible. Vi oppdaterer hosts slik at den ser slik ut:

[all_systems]
router ansible_host=10.0.10.1
dc1 ansible_host=10.0.10.5
dc2 ansible_host=10.0.10.6

[routers]
router

[windows:children]
windows_servers
windows_clients

[windows_servers:children]
windows_domain_controllers

[windows_clients]

[windows_domain_controllers]
dc1
dc2

[windows_bootstrap]
dc1
dc2

Alle disse gruppene trenger hver sin katalog i group_vars:

mkdir group_vars/{all_systems,routers,windows,windows_servers,windows_domain_controllers,windows_clients,windows_bootstrap}

Og følgende legges inn i group_vars/windows/vars:

ansible_connection: winrm
ansible_winrm_server_cert_validation: ignore
ansible_winrm_message_encryption: always

Og dette legges inn i group_vars/windows_bootstrap/vars:

ansible_winrm_transport: credssp

I tillegg trenger vi å lagre passordet for imaget vårt:

ansible-vault create group_vars/windows_bootstrap/vault

Dette åpner et nytt dokument i nano. TODODODODOD

Dette oppsettet kan nå testes ved å kjøre følgende kommando:

ansible windows_bootstrap -u Administrator -m win_command -a "ipconfig"

Som skal gi følgende output:

dc1 | CHANGED | rc=0 >>

Windows IP Configuration


Ethernet adapter Ethernet Instance 0:

   Connection-specific DNS Suffix  . : 
   IPv6 Address. . . . . . . . . . . : fd9c:e705:7fdc:10::5
   Link-local IPv6 Address . . . . . : fe80::4565:1998:e924:719c%4
   IPv4 Address. . . . . . . . . . . : 10.0.10.5
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . : fd9c:e705:7fdc:10::1
                                       10.0.10.1

dc2 | CHANGED | rc=0 >>

Windows IP Configuration


Ethernet adapter Ethernet Instance 0:

   Connection-specific DNS Suffix  . : 
   IPv6 Address. . . . . . . . . . . : fd9c:e705:7fdc:10::6
   Link-local IPv6 Address . . . . . : fe80::3ddc:1cab:1e1a:274e%5
   IPv4 Address. . . . . . . . . . . : 10.0.10.6
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . : fd9c:e705:7fdc:10::1
                                       10.0.10.1

Vi bruker kun credssp for det første steget av å ta i bruk en ny Windows-server, senere skal vi bruke kerberos.


Notater

Get-DnsServerRootHint | ForEach-Object { $rootserver = $_.NameServer.RecordData.NameServer; $IP4 = $_.IPAddress[0].RecordData.Ipv4address; Write-Host "Replacing root hint for $rootserver"; Remove-DnsServerRootHint $_; Add-DnsServerRootHint -NameServer "$rootserver" -IPAddress $IP4 }