Jump to content

testperson

Expert Member
  • Gesamte Inhalte

    10.350
  • Registriert seit

  • Letzter Besuch

Alle erstellten Inhalte von testperson

  1. Hi, verschieben geht nicht nur kopieren: Set-Mailbox (ExchangePowerShell) | Microsoft Docs Gruß Jan
  2. Hi, wenn Outlook ein Problem mit dem Zertifikat hat, dann hast du entweder das MAPIoverHttp vDir vergessen oder Autodiscover / den SCP (Set-ClientAccessService -AutodiscoverServiceInternalUri). Im Browser, beim Zugriff auf OWA / ECP, ist das Zertifikat in Ordnung? Gruß Jan
  3. Ggfs. die Ungeduldigen, die sich gefragt haben, warum die Win32_Product Klasse so langsam ist. :) Wobei "Get-Package" auch nicht schnell ist.. ;)
  4. Hi, evtl. die integrierte Remotehilfe in Windows 10? Alternativ gibt es von ISL Online die "Self-Hosted" Variante für 690€ pro Dauerlizenz (+ ggfs. 99€/Jahr für Updates). Gruß Jan
  5. Wenn es hauptsächlich auf die Softwareliste ankommt: Get-Package Jedenfalls sollte da nicht mit "Win32_Product" gearbeitet werden. Kannst ja mal in der Ereignisanzeige unter Anwendung nach Event 1035 vom MsiInstaller suchen nachdem due die Klasse abgefragt hast.
  6. Ich zitiere da mal jemanden: "Dein" Script "tut" ziemlich viel Dummes bzw. hat ne ganze Menge Potenzial auf die Nase zu fallen. Meine Antwort oben zeigt (sehr wahrscheinlich) das Problem auf, warum das Script als SYSTEM nicht das erwartete Ergebnis bzw. die Dateien auf dem Share liefert. Lösungsansätze findest du auch in der Antwort. Den meisten "Kram" wirst du da sogar remote von einer zentralen Stelle abfragen können. Viel Erfolg noch..
  7. Hi, bau ein Logging ins Script und prüfe, _was_ da als SYSTEM nicht funktioniert. Ich tippe darauf, dass SYSTEM nicht auf das NAS schreiben darf, da Berechtigungen fehlen. Das sollte sich aber auch "andersrum" bauen lassen, indem du auf einem Server "einfach" ein Script laufen lässt, welches prüft, ob die Clients erreichbar sind und dann mit den entsprechenden Remoteverwaltungsinstrumenten die Daten holen. Ein weiterer Ansatz wäre vermutlich eine Dokumentations- und/oder Inventarisierungslösung. Was - grob skizziert - mit deinem Plan machbar sein sollte: "Gesicherte" Ordnerstruktur anlegen Auf dem lokalen PC: User dürfen im Scriptordner Lesen und Ausführen sowie _nicht_ Schreiben/Ändern Auf dem NAS: User dürfen Schreiben und _nicht_ Ausführen Script(e) auf die lokalen PCs in die Ordnerstruktur kopieren Daten sammeln Daten kopieren Aufgabe "Sammeln" planen, die als System (beim Start) die Daten einsammelt und ablegt Aufgabe "Kopieren" planen, die im Userkontext die Daten aufs NAS schiebt Beschreibe doch einfach einmal, welche Daten du einsammeln möchtest oder zeig dein Script. Ich denke es gibt durchaus bessere Wege nach Rom. Gruß Jan
  8. Hi, falls ein Endpoint- / Client-Management vorhanden ist, könnte man damit ebenfalls die Zertifikate auf die Clients bringen. Bei einem WSUS (oder generell bei Web Services) würde ich aber nicht lange nachdenken und ein Zertifikat einer kommerziellen CA bzw. "im Worst Case" von Let's Encrypt nutzen. Gruß Jan
  9. Nur PowerShell ist Wahres: workflow Check-PingStatus { Param( [System.Collections.ArrayList] $IPs ) parallel { foreach -parallel ($IP in $IPs) { try{ Test-Connection -ComputerName $IP -Count 1 -ErrorAction Stop } catch{ # .. of the day } } } return $results } [string]$IPNet = "172.31.1.0" [int]$Start = 1 [int]$Stop = 10 $IPNet = -join ($IPNet.Split(".")[0], ".", $IPNet.Split(".")[1], ".", $IPNet.Split(".")[2]) $IPs = [System.Collections.ArrayList]@() $Start..$Stop | ForEach-Object { $IPs.Add([string]$("{0}.{1}" -f $IPNet, $_)) | Out-Null } $PingStatus = Check-PingStatus -IPs $IPs $PingStatus | Sort-Object Destination
  10. Der Test war eigentlich "nur", ob die PowerShell bzw. "*-GPRegistryValue" mit den von dir gebauten bzw. selbstgebauten ADM/ADMX zurecht kommt. .. und dann kam der innere Monk. .. und dann hab ich mich da irgendwie reingesteigert. ;)
  11. Hi, wenn man schonmal dabei ist: What you can do, should do and should NOT do with GPOs: Wer bin ich und was darf ich - Gruppenmitgliedschaften und Benutzerrechte (evilgpo.blogspot.com) Alternativ sollte man damit auch "einfach" ClientAdmins auf PCs bekommen. :) Gruß Jan
  12. Ich hatte Langeweile (und wollte was testen). Vielleicht kann es ja jemand brauchen. :) # Wird keine OrganizationalUnit angegeben, wird nur das GPO erstellt und nicht gelinkt # ADMX / ADML muss bei NorbertFe ausgeliehen werden aus # https://www.mcseboard.de/topic/220286-printspooler-neue-sicherheitsl%C3%BCcke/?do=findComment&comment=1421870 # Die ADMX / ADML müssen im Scriptpfad liegen param( [parameter(Mandatory=$true)] [string] [ValidateSet("Domain", "AllDomainsInForest")] $Scope, [parameter(Mandatory=$true)] [string] $GPOName, [parameter(Mandatory=$false)] [string[]] $OrganizationalUnit ) if([string]::IsNullOrEmpty($PSScriptRoot)){ $ScriptPath = Split-Path -Path $psISE.CurrentFile.FullPath } else{ $ScriptPath = $PSScriptRoot } if($Scope -eq "Domain"){ $Domains = Get-ADDomain -Current LocalComputer } else{ $ADForest = Get-ADForest -Current LocalComputer $Domains = $ADForest.Domains } foreach($Domain in $Domains){ Write-Output $("`tPrüfe Domain `"{0}`"..." -f $Domain) $curDomain = Get-ADDomain -Identity $Domain $curPolDefPath = -join ("\\", $curDomain.DNSRoot, "\SYSVOL\", $curDomain.DNSRoot, "\Policies\PolicyDefinitions") $locPolDefPath = Join-Path -Path $env:windir -ChildPath "PolicyDefinitions" if(Test-Path -Path $curPolDefPath -PathType Container){ # Central Store Write-Output "`t`tPolicyDefinitions im Central Store gefunden -> Kopiere ADMX/ADML..." Copy-Item -Path (Join-Path -Path $ScriptPath -ChildPath "PrintNightmare.admx") ` -Destination $curPolDefPath ` -Force if(Test-Path -Path (Join-Path -Path $curPolDefPath -ChildPath "en-us") -PathType Container){ Copy-Item -Path (Join-Path -Path $ScriptPath -ChildPath "PrintNightmare.adml") ` -Destination (Join-Path -Path $curPolDefPath -ChildPath "en-us") ` -Force } if(Test-Path -Path (Join-Path -Path $curPolDefPath -ChildPath "de-de") -PathType Container){ Copy-Item -Path (Join-Path -Path $ScriptPath -ChildPath "PrintNightmare.adml") ` -Destination (Join-Path -Path $curPolDefPath -ChildPath "de-de") ` -Force } } else{ # Local Store Write-Output "`t`tPolicyDefinitions im Local Store gefunden... -> Kopiere ADMX/ADML..." Copy-Item -Path (Join-Path -Path $ScriptPath -ChildPath "PrintNightmare.admx") ` -Destination $locPolDefPath ` -Force if(Test-Path -Path (Join-Path -Path $locPolDefPath -ChildPath "en-us") -PathType Container){ Copy-Item -Path (Join-Path -Path $ScriptPath -ChildPath "PrintNightmare.adml") ` -Destination (Join-Path -Path $locPolDefPath -ChildPath "en-us") ` -Force } if(Test-Path -Path (Join-Path -Path $locPolDefPath -ChildPath "de-de") -PathType Container){ Copy-Item -Path (Join-Path -Path $ScriptPath -ChildPath "PrintNightmare.adml") ` -Destination (Join-Path -Path $locPolDefPath -ChildPath "de-de") ` -Force } } Write-Output $("`t`tSuche Gruppenrichtlinien Objekt `"{0}`"..." -f $GPOName) $curGPO = Get-GPO -Domain $curDomain.DNSRoot ` -All | Where-Object { $_.DisplayName -eq $GPOName } if($null -eq $curGPO){ Write-Output $("`t`tGruppenrichtlinien Objekt `"{0}`" nicht gefunden. Erstelle neues GPO..." -f $GPOName) $curGPO = New-GPO -Name $GPOName ` -Domain $curDomain.DNSRoot ` -Comment "Fix PrintNightmare" if($null -ne $OrganizationalUnit){ foreach($OU in $OrganizationalUnit){ Get-ADOrganizationalUnit -SearchBase $curDomain.DistinguishedName ` -Filter 'Name -eq $OU' | ForEach-Object { Write-Output $("`t`t`tVerlinke `"{0}`" an `"{1}`"" -f $GPOName, $_.DistinguishedName) New-GPLink -Guid $curGPO.Id ` -Domain $curDomain.DNSRoot ` -Target $_.DistinguishedName | Out-Null } } } else{ Write-Output $("`t`tKeine Organisationseinheit angegeben! Gruppenrichtlinienobjekt `"{0}`" muss händisch verknüpft werden..." -f $GPOName) } } else{ Write-Output $("`t`tGruppenrichtlinien Objekt `"{0}`" gefunden..." -f $GPOName) } Write-Output $("`t`tSetze `"RestrictDriverInstallationToAdministrators`" in `"{0}`" auf `"1`"..." -f $GPOName) Set-GPRegistryValue -Guid $curGPO.Id ` -Key "HKLM\Software\Policies\Microsoft\Windows NT\Printers\PointAndPrint" ` -ValueName "RestrictDriverInstallationToAdministrators" ` -Type DWord ` -Value 1 | Out-Null Write-Output $("`tDomain `"{0}`" abgeschlossen..." -f $Domain) }
  13. Hi, alternativ "unsere Software" anpassen, damit diese nicht über Outlook versendet. ;) Gruß Jan
  14. Puh, also so "pauschal" ist mir noch nichts untergekommen. Hängt aber sicherlich auch davon ab, was aus welchem Programm wie gedruckt wird und wie die Drucker generell eingebunden sind. Aus der DATEV Community kann ich diese drei Beiträge mit "Ja / Nein / Vielleicht" anbieten: Jetzt handeln: Angreifer nutzen PrintNightmare Lüc... - DATEV-Community - 228682
  15. Das was da laut "netstat" auf tcp 443 lauscht gehört auch definitiv zum IIS (bzw. zum eingesetzten Webserver)? Ein weiteres Binding für 443 oder für einen anderen, freien Port?
  16. Um TLS Versionen und Cipher "grade zu ziehen": Nartac Software - Download
  17. Moin, auf DMAX (im "guten" alten Fernsehprogramm) kommt ab heute bis 14.08 jeden Samstag von 11:15 Uhr bis 11:40 Uhr "Vintage Tech Hunters – Technik mit Kultfaktor!". (Vintage Tech Hunters – Technik mit Kultfaktor! – fernsehserien.de) Mal gucken, was da so gefunden wird. :) Gruß Jan
  18. Hi, "nach getaner Arbeit sollst du ruhn oder auch ein Schläfchen tun" gilt bei mir für Client PCs / Notebooks und Terminalserversitzungen. ;) Lass ihn doch in einem Testzeitraum das Notebook mal täglich herunterfahren und beobachtet dann. Hast du den Hintergrund mit der 24x7 Laufzeit auch einmal (explizit) bei Wortmann erwähnt und deren Meinung dazu eingeholt? Gruß Jan
  19. Und die drei weiteren Fragen?
  20. Hast du das Problem auch wenn du die Website direkt auf dem Server öffnest (bspw. https://localhost)? Wie steht es um Virenschutz auf Server und Client sowie dessen evtl. vorhandene Firewall/Webprotection? Steht etwas (Proxy / Firewall / ...) zwischen Server und Testclient? Was ergibt ein "netstat -ano | findstr 0.0.0.0:443" auf dem Server?
  21. OT: Machen wir doch einfach im Bereich Netzwerk "IP over Fibre Channel" und im Bereich Storage "Fibre Channel over Ethernet".
  22. Hier mal ein Rückmeldung zu AMSI Nebenwirkungen: Exchange 2016/2019: AMSI Integration sorgt für Probleme mit Outlook - Frankys Web
  23. Entweder bist du hier beim anonymisieren durcheinander gekommen oder du (ver)wechselst mehrfach deine Ordner. Ich meine, ich hätte es im anderen Thread schon angedeutet. Wäre es nicht einfach nur mit einem Anmeldescript / Aufgabe bei Benutzeranmeldung zu arbeiten, die prüft, ob man intern oder extern ist und dann entsprechend einen Autostart ausführt oder nicht. So in der Art: if(Test-Connection -ComputerName $env:LOGONSERVER.TrimStart("\") -Quiet){ # Intern } else{ # Extern }
  24. Hi, eine Option könnte Start-Transcript (Start-Transcript (Microsoft.PowerShell.Host) - PowerShell | Microsoft Docs) im Script sein. Alternativ ein "-Confirm:$false -Force" beim "Remove-Item"(?). Sucht das Script tatsächlich in %AppData% oder in $env:APPDATA? Gruß Jan
  25. Hi, falls auch neue Hardware geplant ist, würde ich in Richtung Virtualisierung planen und alles nach und nach auf den neuen Server umziehen sowie die Rollen möglichst gut trennen. Falls (noch) keine neue Hardware geplant ist, würde ich das alles zurückstellen, bis neue Hardware geplant ist. Windows Server 2012 ist noch bis 10/2023 im (Extended) Support und der SQL 2014 bis 07/24. Welche Vorteile versprichst du dir von den neuen Versionen bzw. welche Funktionen benötigst du? BTW.: Mit etwas Geduld könntest du dann auch gleich auf Server 2021 updaten. Gruß Jan
×
×
  • Neu erstellen...