-
Gesamte Inhalte
5.603 -
Registriert seit
-
Letzter Besuch
Alle erstellten Inhalte von daabm
-
Get-ADUser leere Werte
daabm antwortete auf ein Thema von nutzer123456 in: Windows Forum — Scripting
Geht schon, wenn man sich festlegt, wie das im CSV dann entahalten sein soll. Kann man mit calculated properties bei Select-Object recht einfach lösen. -
Prüfen, ob ein Befehl erfolgreich ausgeführt wurde
daabm antwortete auf ein Thema von Scharping-FVB in: Windows Forum — Scripting
Aber bitte mit Write-Irgendwas davor (und Klammern um den Ausgabetext) und nicht einfach in die Pipe schieben (Nur so aus Gewohnheit...) -
Prüfen, ob ein Befehl erfolgreich ausgeführt wurde
daabm antwortete auf ein Thema von Scharping-FVB in: Windows Forum — Scripting
WSH-Objekte schmeißen eine Terminating Exception - bei mir zumindest: Try { $WshShell = New-Object -comObject WScript.Shell $Shortcut = $WshShell.CreateShortcut("$env:temp\Blubb\Scans.lnk") $Shortcut.TargetPath = "\\fs1\scan2file\$user" $Shortcut.Save() } Catch { $MyError = $_ Write-Host "Message: $( $MyError.Exception.Message )" Write-Host "HResult: $( $MyError.Exception.HResult )" } Was Du mit dem HResult anfängst, bleibt dann Dir überlassen -
Windows Server 2022 Essential und AD
daabm antwortete auf ein Thema von emw in: Windows Server Forum
Jedes NAS bringt mit Samba eine "Art" Active Directory mit. Für ne Handvoll MA ohne große Verfügbarkeitsansprüche reicht das. Scale-Out ist aber nicht möglich, DHCP/DNS mit AD-Integration auch nicht und echtes Multi-Master wie in einem AD mit mehreren DCs gibt es auch nicht. Ich bin bei @Nobbyaushb - ne Anfangsberatung wäre nicht falsch. Was da am Ende rauskommt, würde ich mal "technologieoffen" 😁 lassen. -
Windows Server 2022 Essential und AD
daabm antwortete auf ein Thema von emw in: Windows Server Forum
Ich stelle mir spontan die Frage, ob das überhaupt ein "Server" mit "Windows" sein muß . Vom Profil her - alles, was ich lese, deckt jedes bessere Home-NAS locker ab. Inkl. SMB1 und SAMBA als Minimal-AD-Ersatz. -
Powershell V.5.1: Problem XML Nodes zusammenfügen
daabm antwortete auf ein Thema von Manestrum in: Windows Forum — Scripting
Hm - mein Bauchgefühl sagt, daß da das Datenmodell "nicht optimal" ist (man könnte auch flapsig sagen #grütze), aber wer bin ich, daß ich das remote beurteilen könnte -
Powershell V.5.1: Problem XML Nodes zusammenfügen
daabm antwortete auf ein Thema von Manestrum in: Windows Forum — Scripting
XML hat per se kein "Eintrag bereits vorhanden", es gibt keinen "Primary Key", der eindeutig sein muß. "Duplikate" sind explizit nicht verboten. So gesehen mußt Du das so lösen Und falls Du mal wieder so ein Problem hast: Ohne Sample Data ist da schwer zu helfen. Ich verstehe z.B. nicht, was Du meinst mit -
Windows Server 2022 - Service-Account?
daabm antwortete auf ein Thema von Cryer in: Active Directory Forum
GPO. Siehe Link oben - seDenyXYZright. -
Windows Server 2022 - Service-Account?
daabm antwortete auf ein Thema von Cryer in: Active Directory Forum
Das regelt man aber bitte nicht über "allowed to logon" in den Accounteinstellungen, sondern über passende Gruppen und seDenyInteractiveLogonPrivilege (bzw. wenn die Umgebung vom Grundsatz her eh keine Anmeldung erlaubt - was auf Dauer einfacher ist - über seInteractiveLogonPrivilege). -
Funktion innerhalb einer Funktion liefert keinen Rückgabewert
daabm antwortete auf ein Thema von Scharping-FVB in: Windows Forum — Scripting
Nachdem Ihr jetzt schon viel diskutiert habt, werfe ich noch "scope" in den Raum und [ref]. Ich glaube, jede Suchmaschine liefert passende vertiefende Hinweise @testperson Mein Monk achtet peinlichst darauf, die Pipeline sauber zu halte vor unbeabsichtigtem Inhalt, macht es wie @cj_berlin und gibt einfach das Ergebnis "aus", womit es in ebenjener Pipeline und damit im Return des aufrufenden Scope landet. "Return" hilft da nicht - alles was unbeabsichtigt in der Pipeline gelandet ist, wird ebenso zurückgegeben. @Dukel Das mit dem Scope gilt auch für Funktionen - jede "Hauptfunktion" kann ihre eigene Childversion von "Kind{}" haben. Macht es im Zweifel nicht einfacher, ist aber manchmal durchaus hilfreich, weil importierte Funktionen nicht die eigenen stören können. -
Windows Server 2022 - Service-Account?
daabm antwortete auf ein Thema von Cryer in: Active Directory Forum
seServiceLogonRight, seDenyInteractiveLogonRight und seDenyRemoteInteractiveLogonRight sind die Rechte, auf die es hier ankommt Mit den Accounteinstellungen sollte man da gar nicht erst anfangen. Zum Einlesen: https://evilgpo.blogspot.com/2015/04/wer-bin-ich-und-was-darf-ich.html Und nein, so eine "Checkbox" gab es nie. -
Schön ist relativ Nachdem die Bremsen gepflegt wurden, brauch ich ne neue Frontschürze (selbst verschuldet ein Stück abgerissen). Die spinnen, die Autohersteller...
-
Windows Server 2019 Mai Updates
daabm antwortete auf ein Thema von teletubbieland in: Windows Server Forum
Zum einen installieren wir alle unsere Server schon seit über 10 Jahren als rein englische Basisinstallation - für Kundensysteme kommt das deutsche LP noch drauf. Zum anderen bin ich in solchen Momenten echt froh, daß wir ein Konzern sind und ich mich auf meine AD-Insel zurückziehen kann. Mit OS-Patches habe ich nichts zu tun (außer privat natürlich... "IT-Admin der Ehefrau" ) @NorbertFe 100% sind doch gut - dachte ich bisher immer 😂 -
SMB Signierung aktivieren - Folgen?
daabm antwortete auf ein Thema von roccomarcy in: Windows Forum — Security
Ich würde es andersherum machen - GPO auf eine Gruppe von Testclients einschränken und SMB dort dann erzwingen. Auf den DCs kann man da nix selektiv machen, entweder man erzwingt es oder halt nicht. SMB Signing hat "eigentlich" nichts mit Account-Sperrungen zu tun. Vielleicht hast Du mehr als nur eine Herausforderung... -
Registry Key werden nicht hinzugefügt
daabm antwortete auf ein Thema von DeathSheep in: Windows Forum — Scripting
Problematisch finde ich das hier: Das bleibt mit "Vorhanden, überschreiben? (j/n)" stehen, wenn man's interaktiv ausführt. Was schreiben denn die ganzen Write-Verbose so in die Konsole? Ich habe mir auch erlaubt, den Code etwas lesbarer zu machen $ProfileName = "VPNNAME" # Validate VPN profile Write-Verbose "Searching VPN profiles for `"$ProfileName`"." If ( $AllUserConnection ) { # Get VPN profile running in the user's context $Vpn = Get-VpnConnection -Name $ProfileName -AllUserConnection -ErrorAction SilentlyContinue } Else { # Get VPN profile running in the 'all users' context $Vpn = Get-VpnConnection -Name $ProfileName -ErrorAction SilentlyContinue } If ( $Null -eq $Vpn ) { # Exit if VPN profile does not exist Write-Warning "VPN connection `"$ProfileName`" not found." Return } Else { Write-Verbose "VPN connection `"$ProfileName`" found." } # Use transaction for registry updates Start-Transaction #Create registry REG add "HKLM\System\CurrentControlSet\Services\RasMan\Config\" # Search AutoTriggerDisabledProfilesList for VPN profile $Path = 'HKLM:\System\CurrentControlSet\Services\RasMan\Config\' $Name = 'AutoTriggerDisabledProfilesList' Write-Verbose "Searching $Name in $Path for VPN profile `"$ProfileName`"..." Try { # Get the current registry values as an array of strings [string[]]$DisabledProfiles = Get-ItemPropertyValue -Path $Path -Name $Name -ErrorAction Stop } Catch { Write-Verbose "$Name does not exist in $Path. No action required." Return } If ( $DisabledProfiles ) { # Create ordered hashtable $List = [Ordered]@{} $DisabledProfiles | ForEach-Object { $List.Add("$($_.ToLower())", $_) } # Search hashtable for matching VPN profile and remove if present If ( $List.Contains( $ProfileName )) { Write-Verbose 'Profile found. Removing entry...' $List.Remove( $ProfileName ) Write-Verbose 'Updating the registry...' Set-ItemProperty -Path $Path -Name $Name -Value $List.Values -UseTransaction } } Else { Write-Verbose "No profiles found matching `"$ProfileName`"." Return } # Add user SID to registry If ( $AllUserConnection ) { $SID = 'S-1-1-0' Write-Verbose "Adding SYSTEM SID $SID to registry..." } Else { Try { $SID = [System.Security.Principal.WindowsIdentity]::GetCurrent().User.Value Write-Verbose "Adding user SID $SID to registry..." } Catch { Write-Warning $_.Exception.Message Return } } $Parameters = @{ Path = 'HKLM:\SYSTEM\CurrentControlSet\Services\RasMan\Config\' Name = 'UserSID' PropertyType = 'String' Value = $SID UseTransaction = $True } New-ItemProperty @Parameters -Force | Out-Null # Add VPN profile name to registry $Parameters = @{ Path = 'HKLM:\SYSTEM\CurrentControlSet\Services\RasMan\Config\' Name = 'AutoTriggerProfileEntryName' PropertyType = 'String' Value = $ProfileName UseTransaction = $True } New-ItemProperty @Parameters | Out-Null # Add VPN profile GUID to registry Write-Verbose "Adding VPN GUID $GUID to registry..." [guid]$GUID = $Vpn | Select-Object -ExpandProperty Guid $Binary = $Guid.ToByteArray() $Parameters = @{ Path = 'HKLM:\SYSTEM\CurrentControlSet\Services\RasMan\Config\' Name = 'AutoTriggerProfileGUID' PropertyType = 'Binary' Value = $Binary UseTransaction = $True } New-ItemProperty @Parameters | Out-Null # Add phonebook path to registry If ( $AllUserConnection ) { $Path = Join-Path -Path $env:programdata -ChildPath Microsoft\Network\Connections\Pbk\rasphone.pbk Write-Verbose "RAS phonebook path is $Path." } Else { $Path = Join-Path -Path $env:userprofile -ChildPath AppData\Roaming\Microsoft\Network\Connections\Pbk\rasphone.pbk Write-Verbose "RAS phonebook path is $Path." } $Parameters = @{ Path = 'HKLM:\SYSTEM\CurrentControlSet\Services\RasMan\Config\' Name = 'AutoTriggerProfilePhonebookPath' PropertyType = 'String' Value = $Path UseTransaction = $True } New-ItemProperty @Parameters | Out-Null # Commit registry changes Complete-Transaction # Disable the "Disconnect" button in VAN UI/Settings > ensuring that "Connect Automatically" cannot be unchecked ( get-content -Path "$env:appdata\Microsoft\Network\Connections\Pbk\rasphone.pbk") | ForEach-Object {$_ -Replace "Options=0", "Options=18"} | Set-Content -Path "$env:appdata\Microsoft\Network\Connections\Pbk\rasphone.pbk" -
Best-Practice / Service-Accounts
daabm antwortete auf ein Thema von Garant in: Windows Forum — Security
https://evilgpo.blogspot.com/2015/04/wer-bin-ich-und-was-darf-ich.html (Muß echt mal ne aktuelle Version davon schreiben...) -
Best-Practice / Kennwortrichtlinie
daabm antwortete auf ein Thema von Garant in: Windows Forum — Security
Komplexität halte ich für sinnfrei, lieber länger. Und bei 365 Tagen Gültigkeit kann man auch gleich "nicht ablaufend" verwenden - die Historie ist bei nem Änderungsintervall von nem Jahr auch eher uninteressant. Aber jm2c Ich bin ein erklärter Gegner von erzwungenen Kennwortänderungen. Wie das BSI 😂 -
Benutzer oder Systemvariable mit Wert aus AD bestücken
daabm antwortete auf ein Thema von MHeiss2003 in: Active Directory Forum
Ehm - warum hängt Ihr Euch grad immer am "Befüllen" des Attributs auf? Es geht um das "Auslesen"... -
Benutzer oder Systemvariable mit Wert aus AD bestücken
daabm antwortete auf ein Thema von MHeiss2003 in: Active Directory Forum
Group Policy Preferences "Umgebungsvariable" mit Zielgruppenadressierung "LDAP-Abfrage". -
Nabend wieder an Land Auto war heute mal wieder in der Werkstatt, Bremsenwartung. Das Zeug benutzt man ja quasi nie, das gammelt sonst einfach weg... 🙈
-
Best-Practice / Kennwortrichtlinie
daabm antwortete auf ein Thema von Garant in: Windows Forum — Security
Hier - bis auf die von Microsoft erzwungenen Ausnahmen für SQL- und HyperV-Cluster, die noch nicht ohne können. Frei nach einer meiner bevorzugten Bands: "It's a long way to the top"... Ich weiß inzwischen Dinge über Kerberos in Windows und in krb5.conf, die ich eigentlich nie wissen wollte 😂 -
Den richtigen DC finden sie ja schon. Kannst sogar einen "preferred" einstellen, falls der PDC hinter einem WAN-Link hängen sollte. Das Problem steckt in GPMC/DFSR. Und um das zu lösen, müssten sie das Anlegen und Importieren komplett nachbauen. Ich kann schon verstehen, daß man das nicht unbedingt will, wenn es doch "offizielle" APIs gibt. "Timing verändern" ist so ein zweischneidiges Schwert - wie lange willst denn warten, bis DFSR auf dem von Dir grad genutzten Referral das Verzeichnis erstellt hat?
-
Quest behandelt das nicht selbst, warum auch - sie nutzen das GPMC-API, das für das Anlegen von GPH und GPT verantwortlich ist. Da müßte das gefixt werden...
-
Ok Wir haben ein Drittprodukt (Quest GPOAdmin), das GPOs über Domänengrenzen synchronisieren kann. Ein in der Quelldomäne per GPMC-API erstelltes GPO-Backup im ZIP-Format wird dabei zum Zielserver übertragen. Dort wird von der Ziel-GPO eine tempoärer Kopie erzeugt und dann das entpackte Zip (wieder per GPMC-API) in diese Kopie importiert. Danach wird (wieder GPMC-API) davon ein Backup estellt, die temporäre Kopie gelöscht und das aktuelle Backup in die ursprüngliche "produktive" GPO importiert (noch mal GPMC-API). (Klingt aufwändig mit der temporären Kopie und dem vielen Import/Export, das hängt mit den verfügbaren Workflows zusammen - man kann nicht nur "immediate deployment" machen, sondern auch erst mal "stagen"- das sprengt den Rahmen hier aber.) Das arbeitet also mit ein wenig Zip/Copy, der Rest ist GPMC-API nativ. Dabei fällt der Import in die temporäre Kopie regelmäßig auf die Nase, wenn der jeweilige Server mehr als einen DC sieht. In AD wird das GPC-Objekt immer auf dem PDC angelegt (das kriegt das GPMC-API noch hin). Der GPT-Sysvol-Ordner entsteht dabei ebenfalls "initial" - aber nicht auf dem PDC, sondern "irgendwo". Der folgende Import per GPMC-API greift AD-seitig auch nur auf den PDC zu und findet den GPC-Container. Der Dateiimport in den GPT-Sysvol-Ordner läuft über DFSR aber wieder gegen "irgendeinen" DC. Und DFSR hat auch innerhalb einer Site Latenzen -> Sysvol-Ordner nicht vorhanden -> "Path not found". Macht man das von Hand, ist es i.d.R. kein Problem, weil man von Hand nicht so schnell klicken kann (DFSR-Latenzen intra-site sind im Sekundenbereich). Das ganze läuft hier aber programmatisch: Neue temporäre Kopie erstellen und "sofort" importieren. Ich hoffe, das ist soweit verständlich ausgedrückt Workasround: In jeder Domäne eine Site, in der nur der PDC und der jeweilge Server stehen. Dann ist nicht nur AD zufrieden, sondern auch DFSR - das findet dann auch nur noch "the one" Das WLAN-Snapin war diesbezüglich auch speziell. Das hatte den Bug, daß es die DC-Auswahl in GPMC, die von GPMC an GPEdit (korrekt eigentlich: GPME.MSC) beim Aufruf weitergegeben wird, ignoriert hat und auch "irgendeinen" DC auswählte. Ergebnis: Klickte man in GPEdit auf "neue WLAN-Policy", wurde von GPEdit auf dem PDC im GPO-Container ein "Machine"-Container erstellt. Das Snapin selbst erstellt darin dann ein WLAN-Objekt, bei Bedarf aber auch den zugehörigen Container. Ging das nicht gegen den PDC -> Replikationskonflikt (CNF:) für den "Machine"-Container, wenn es den nicht vorher "aus Gründen" schon gab -> GPO kaputt.
-
Windows Server 2022 - Kein Drucker kann auf Druckserver drucken
daabm antwortete auf ein Thema von Rumak18 in: Windows Server Forum
Eventlogs kennst Du und hast Du geprüft auf Client und Druckserver?