40 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			PowerShell
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			PowerShell
		
	
	
		
			Executable File
		
	
	
	
	
if ((gwmi win32_computersystem).partofdomain -eq $false) {
 | 
						|
 | 
						|
  Write-Host 'Creating domain controller'
 | 
						|
  # Disable password complexity policy
 | 
						|
  secedit /export /cfg C:\secpol.cfg
 | 
						|
  (gc C:\secpol.cfg).replace("PasswordComplexity = 1", "PasswordComplexity = 0") | Out-File C:\secpol.cfg
 | 
						|
  secedit /configure /db C:\Windows\security\local.sdb /cfg C:\secpol.cfg /areas SECURITYPOLICY
 | 
						|
  rm -force C:\secpol.cfg -confirm:$false
 | 
						|
 | 
						|
  # Set administrator password
 | 
						|
  $computerName = $env:COMPUTERNAME
 | 
						|
  $adminPassword = "vagrant"
 | 
						|
  $adminUser = [ADSI] "WinNT://$computerName/Administrator,User"
 | 
						|
  $adminUser.SetPassword($adminPassword)
 | 
						|
 | 
						|
  $PlainPassword = "vagrant" # "P@ssw0rd"
 | 
						|
  $SecurePassword = $PlainPassword | ConvertTo-SecureString -AsPlainText -Force
 | 
						|
 | 
						|
  # Windows Server 2012 R2
 | 
						|
  Install-WindowsFeature AD-domain-services
 | 
						|
  Import-Module ADDSDeployment
 | 
						|
  Install-ADDSForest `
 | 
						|
    -SafeModeAdministratorPassword $SecurePassword `
 | 
						|
    -CreateDnsDelegation:$false `
 | 
						|
    -DatabasePath "C:\Windows\NTDS" `
 | 
						|
    -DomainMode "Win2012" `
 | 
						|
    -DomainName "windomain.local" `
 | 
						|
    -DomainNetbiosName "WINDOMAIN" `
 | 
						|
    -ForestMode "Win2012" `
 | 
						|
    -InstallDns:$true `
 | 
						|
    -LogPath "C:\Windows\NTDS" `
 | 
						|
    -NoRebootOnCompletion:$true `
 | 
						|
    -SysvolPath "C:\Windows\SYSVOL" `
 | 
						|
    -Force:$true
 | 
						|
 | 
						|
  $newDNSServers = "8.8.8.8", "4.4.4.4"
 | 
						|
  $adapters = Get-WmiObject Win32_NetworkAdapterConfiguration | Where-Object {$_.IPAddress -eq "10.0.2.15"}
 | 
						|
  $adapters | ForEach-Object {$_.SetDNSServerSearchOrder($newDNSServers)}
 | 
						|
}
 |