Difference between revisions of "Lab/Domene"

From Slaskete wiki
Jump to navigation Jump to search
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
Opprette domene
+
== 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
 
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
 
{| class="wikitable"
 
{| class="wikitable"
Line 16: Line 15:
 
|3072
 
|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:
+
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)
 
{| class="wikitable"
 
{| class="wikitable"
 
|+
 
|+
  +
AD-servere, manuelt IP-oppsett
 
!Hostname
 
!Hostname
 
!IPv4 address
 
!IPv4 address
 
!Subnet mask
 
!Subnet mask
 
!Default Gateway
 
!Default Gateway
  +
!DNS server
 
!IPv6 address
 
!IPv6 address
 
!Subnet prefix length
 
!Subnet prefix length
Line 31: Line 32:
 
|255.255.255.0
 
|255.255.255.0
 
|10.0.10.1
 
|10.0.10.1
  +
|1.1.1.1
 
|fd9c:e705:7fdc:10::5
 
|fd9c:e705:7fdc:10::5
 
|64
 
|64
Line 39: Line 41:
 
|255.255.255.0
 
|255.255.255.0
 
|10.0.10.1
 
|10.0.10.1
  +
|1.1.1.1
 
|fd9c:e705:7fdc:10::6
 
|fd9c:e705:7fdc:10::6
 
|64
 
|64
 
|fd9c:e705:7fdc:10::1
 
|fd9c:e705:7fdc:10::1
 
|}
 
|}
  +
Dette er nok til å begynne å fjernstyre maskinene med Ansible. Vi oppdaterer <code>hosts</code> 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 <code>group_vars/windows/vars</code>:
  +
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<blockquote>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 }</blockquote>

Latest revision as of 18:32, 9 June 2024

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 }