1
0

15 Commits

2 changed files with 156 additions and 30 deletions
+1 -1
View File
@@ -8,7 +8,7 @@ Nachfolgend findest du unsere Boxstarter Scripts für Grundinstallationen.
Zum Beispiel Zum Beispiel
Auszuführen für Client: Auszuführen für Client:
``` ```
START https://boxstarter.org/package/nr/url?https://git.tueit.de/tueit_GmbH/boxstarter/raw/commit/4b3a2365b2a9380d84028dc587f06e88f0ad8aa6/tiNGrundpaketClient.txt START https://boxstarter.org/package/nr/url?https://git.tueit.de/tueit_GmbH/boxstarter/raw/commit/c185bffde95b6e0b2dd7ed2fb5759b37c52fa86c/tiNGrundpaketClient.txt
``` ```
Für Server: Für Server:
+155 -29
View File
@@ -1,51 +1,177 @@
#Windows 10 Pro Client Boxstarter Script: Grundpaket und Konfiguration (c) Tüit GmbH # Windows 11 Pro Client Boxstarter Script: Grundpaket und Konfiguration (c) Tüit GmbH
#TODO: Defaultprograms for Datatypes, Install all Updates (not only critical) # Erweiterungen: Vollständige Updates, Schnellstart deaktivieren, LibreOffice, Bugfix, Admin aktivieren, Firefox Default
#----------------Vorbereitung: Chocolatey & Module------------------------
# Chocolatey prüfen/ggf. installieren
if (-not (Get-Command choco.exe -ErrorAction SilentlyContinue)) {
Write-Host "Chocolatey fehlt wird installiert..."
Set-ExecutionPolicy Bypass -Scope Process -Force
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::Tls12
iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
}
# Boxstarter.Windows Modul prüfen/ggf. installieren
if (-not (Get-Module -ListAvailable -Name Boxstarter.Windows)) {
Write-Host "Boxstarter.Windows Modul fehlt wird installiert..."
Install-Module -Name Boxstarter.Windows -Force -Scope AllUsers
}
Import-Module Boxstarter.Windows
#----------------Setting Variables------------------------ #----------------Setting Variables------------------------
# Hostname abfragen (Pflichtfeld)
do {
$dHostname = Read-Host 'Input desired Hostname (required)'
} until ($dHostname -ne "")
#Other Variables #---------------Helper Functions--------------------------
$dHostname = Read-Host 'Input desired Hostname (Default: Keep current hostname)' $SuccessInstalls = @()
if($dHostname -eq ""){$dHostname = [Net.Dns]::GetHostName()} $FailedInstalls = @()
function Install-ChocoPackage {
param([string]$pkg)
choco install $pkg -y --cacheLocation="c:\temp"
if ($LASTEXITCODE -eq 0) {
Write-Host "[$pkg] erfolgreich installiert."
$SuccessInstalls += $pkg
} else {
Write-Host "FEHLER: [$pkg] konnte nicht installiert werden!" -ForegroundColor Red
$FailedInstalls += $pkg
}
}
function removeApp {
Param ([string]$appName)
Write-Output "Trying to remove $appName"
Get-AppxPackage $appName -AllUsers | Remove-AppxPackage -ErrorAction SilentlyContinue
Get-AppXProvisionedPackage -Online | Where-Object DisplayName -like $appName | Remove-AppxProvisionedPackage -Online -ErrorAction SilentlyContinue
}
#---------------Configure Chocolatey and Environment------------------------------- #---------------Configure Chocolatey and Environment-------------------------------
choco features enable -n=allowGlobalConfirmation choco features enable -n=allowGlobalConfirmation
choco feature enable -n=allowEmptyChecksums choco feature enable -n=allowEmptyChecksums
New-Item -ErrorAction Ignore -Path "C:\" -Name "temp" -ItemType "directory"` New-Item -ErrorAction Ignore -Path "C:\" -Name "temp" -ItemType "directory"
#----------------Configure Windows------------------------ #----------------Configure Windows------------------------
#Set Hostname # Set Hostname
Write-Host "Setting Hostname to $dHostname": Write-Host "Setting Hostname to $dHostname"
Rename-Computer -NewName "$dHostname" -Force Rename-Computer -NewName "$dHostname" -Force
#Enable RemoteDesktop
# Enable RemoteDesktop
Enable-RemoteDesktop Enable-RemoteDesktop
#Remove annoying Windows Stuff
# Remove annoying Windows Stuff
Disable-GameBarTips Disable-GameBarTips
#Set Taskbar to Lock and put it to the bottom and show all icons
Set-TaskbarOptions -Size Small -Dock Bottom -Combine Full -Lock # Explorer Optionen
Set-TaskbarOptions -Size Small -Dock Bottom -Combine Full -AlwaysShowIconsOn
#Show Hidden Files, File Extensions, Systemfiles and Full-Path in Titlebar
Set-WindowsExplorerOptions -EnableShowFullPathInTitleBar Set-WindowsExplorerOptions -EnableShowFullPathInTitleBar
#Disable IPv6
# Disable IPv6
Write-Host DisabledComponents registry key: Write-Host DisabledComponents registry key:
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters /v DisabledComponents /t REG_DWORD /d 0xFF /f reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters /v DisabledComponents /t REG_DWORD /d 0xFF /f
#Zeitserver einstellen
#reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\DateTime\Servers /v (Standard) /t REG_SZ /d 1 /f # Zeitserver einstellen
#reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\DateTime\Servers /v 1 /t REG_SZ /d 0.de.pool.ntp.org /f
#reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\DateTime\Servers /v 2 /t REG_SZ /d 1.de.pool.ntp.org /f
net time /setsntp:"0.de.pool.ntp.org" net time /setsntp:"0.de.pool.ntp.org"
# Schnellstart deaktivieren
Write-Host "Schnellstart wird deaktiviert..."
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Power" /v HiberbootEnabled /t REG_DWORD /d 0 /f
# Lokalen Administrator aktivieren
Write-Host "Lokalen Administrator aktivieren..."
net user Administrator /active:yes
#---------------Install important Windows Packages--------------- #---------------Install important Windows Packages---------------
#Install all critical OS Updates # Install all Updates (inkl. optionale Updates, MicrosoftUpdate, Autoreboot)
Install-WindowsUpdate -AcceptEula -GetUpdatesFromMS Write-Host "Starte Windows Update (alle Updates inkl. optional)..."
choco install javaruntime -y --cacheLocation="c:\temp" Install-WindowsUpdate -MicrosoftUpdate -AcceptAll -AutoReboot
#---------------Install Tueit Basic Software--------------------- #---------------Install Tueit Basic Software---------------------
choco install vlc -y --cacheLocation="c:\temp" Install-ChocoPackage "javaruntime"
choco install adobereader -y --cacheLocation="c:\temp" Install-ChocoPackage "vlc"
choco install 7zip -y --cacheLocation="c:\temp" Install-ChocoPackage "7zip"
choco install firefox -y --cacheLocation="c:\temp" Install-ChocoPackage "firefox"
choco install greenshot -y --cacheLocation="c:\temp" Install-ChocoPackage "greenshot"
choco install thunderbird -y --cacheLocation="c:\temp" Install-ChocoPackage "thunderbird"
choco install pdf24 -y --cacheLocation="c:\temp" Install-ChocoPackage "openvpn-connect"
Install-ChocoPackage "rustdesk --params '\"/config: host=rd.tueit.de,key=udW7BhgOOwFypZX4KKGMBORO4EG6+MvsPVEmY99F4UA=\"'"
Install-ChocoPackage "libreoffice-fresh"
# Firefox als Standard-Browser setzen
Write-Host "Setze Firefox als Standardbrowser..."
Start-Process -FilePath "C:\Program Files\Mozilla Firefox\firefox.exe" -ArgumentList "--setDefaultBrowser" -Wait
#---------------Remove junk---------------
$applicationList = @(
"*MarchofEmpires*"
"*Autodesk*"
"*BubbleWitch*"
"*garden*"
"*hidden*"
"*deezer*"
"*phototastic*"
"*tunein*"
"king.com*"
"G5*"
"*Facebook*"
"*Keeper*"
"*.EclipseManager"
"ActiproSoftwareLLC.562882FEEB491"
"*DolbyAccess*"
"*disney*"
"*HiddenCityMysteryofShadows*"
"*Dell*"
"*Dropbox*"
"*McAfee*"
"*Minecraft*"
"*Twitter*"
"*outlook*"
"*onedrive*"
"*onenote*"
"Microsoft.*advertising*"
"Microsoft.*3D*"
"Microsoft.Bing*"
"Microsoft.Copilot*"
"Microsoft.Getstarted"
"Microsoft.Messaging"
"Microsoft.MicrosoftOfficeHub"
"Microsoft.MicrosoftStickyNotes"
"Microsoft.Music*"
"Microsoft.Office.OneNote"
"Microsoft.Office.Sway"
"Microsoft.OneConnect"
"Microsoft.OneDriveSync"
"Microsoft.People"
"Microsoft.SkypeApp"
"Microsoft.MicrosoftSolitaireCollection"
"Microsoft.Wallet"
"Microsoft.WindowsFeedbackHub"
"Microsoft.WindowsMaps"
"Microsoft.WindowsSoundRecorder"
"microsoft.windowscommunicationsapps"
"Microsoft.Zune*"
"MicrosoftTeams"
"*WebExperience*"
)
foreach ($app in $applicationList) {
removeApp $app
}
#---------------Abschlussbericht---------------------
Write-Host "`n========== ABSCHLUSSBERICHT =========="
Write-Host "Erfolgreich installierte Pakete:"
if ($SuccessInstalls.Count -gt 0) {
$SuccessInstalls | ForEach-Object { Write-Host " - $_" }
} else {
Write-Host " (keine)"
}
Write-Host "`nFehlgeschlagene Pakete:"
if ($FailedInstalls.Count -gt 0) {
$FailedInstalls | ForEach-Object { Write-Host " - $_" }
} else {
Write-Host " (keine)"
}
Write-Host "======================================"
Write-Host "Setup abgeschlossen."