Jump to content

cj_berlin

Expert Member
  • Gesamte Inhalte

    2.160
  • Registriert seit

  • Letzter Besuch

Alle erstellten Inhalte von cj_berlin

  1. @Subtellite: Da bisher niemand das kommentiert hat, muss ich das nun machen: Zertifikate, die eine private CA ausstellt, sind keine Self-Signed Certs. Self-Signed, wie der Name schon sagt, bedeutet, dass der Subject gleich dem Issuer ist. In einer PKI, egal ob privat oder öffentlich, gibt es in der Regel nur ein Self-Signed Zertifikat: Das der Root CA.
  2. cj_berlin

    Strato Cloud Umgebung

    Kein Ahnung. Ich habe nur Erfahrung mit den großen Clouds. Man muss schauen, wie der Service bei Strato definiert ist und ob man da ein Subnetz bekommen kann. Wenn ja, dann kann man das natürlich routen, ob es nun privat oder öffentlich ist. Und pfSense war nur ein Vorschlag. Wenn Du Erfahrung mit Endian hast, dann nutze lieber das
  3. cj_berlin

    Strato Cloud Umgebung

    Moin, in der Regel brauchst Du ein Site-2-Site-VPN zwischen dem Cloud-Subnetz und Deinem OnPrem-Subnetz. Das gibt es in Azure, in AWS und in GCP. Wie Strato das macht, weiß ich nicht. Einen produktiven Server mit Node-2-Site-VPN anbinden... Naja. Ich würde sagen, lieber nicht. Bei Applikationen, die AD-konform arbeiten, ist es ja bei solchen Einzel-VPNs auch schwierig, sie einer bestimmten Site zuzuweisen... Und dann noch das DNS-Update, wenn sich die VPN-IP ändert, und, und, und.... Wenn Du da mehrere VMs betreiben kannst und Strato selbst keine VPN-Gateway anbietet, kannst Du ja eine kleine pfSense-VM laufen lassen, die den Tunnel aufbaut und aufrechthält. Deine Server in der Cloud haben dann alle ihre fixe IP-Adressen.
  4. Moin, Einstellungen aus der GPO wohnen standardkonform unter HKLM\SOFTWARE\Policies\Microsoft\W32Time\* Sind sie gesetzt, überschreiben sie die Einstellungen im CurrentControlSet-Zweig. Ein Ping auf ntp.metas.ch kommt bei mir nicht zurück, aber ich pinge ja auch aus Deutschland Genaue Aussagen über das, was im Zeitdienst so passiert, liefert das Debug-Protokoll, welches Du auch auf Deinem DC einschalten kannst mit w32tm /debug /enable /file:c:\sys\ntp.log /entries:0-300 /size:1024000 Das ist aber nicht ganz einfach zu lesen... Was ist bei Dir in der GPO hinsichtlich der globalen Konfigurationseinstellungen des Zeitdienstes gesetzt? Ich habe festgestellt, dass der Wert "PhaseCorrectRate" im Begleittext zwar als Default 7 Sekunden angegeben ist, wenn man die Policy aber einschaltet, steht er auf 1 Sekunde, und das ist i.d.R. zu wenig.
  5. ...die "Fehlkonfiguration" war aber sehr weit verbreitet
  6. ...aber warum? HTML5 kann MS-RDS auch so, und RDG ist ja auch da. Brauchst nur einen Windows Server mit zwei Beinen... Und es gab auch letztes Jahr eine Lücke, die erst durch den NetScaler möglich war
  7. Du kannst - und sollst - auch einen einzelnen Terminalserver hinter einem Gateway "verstecken". Alles andere ist grob fahrlässig. Es gab, wenn ich mich recht erinnere, letztes Jahr auch eine Lücke, die sogar erst durch NLA ermöglicht wurde. Und RDWeb musst Du den Leuten auch bei einer Farm nicht zwingend antun. Du kannst durch RDWeb signierte .RDP-Dateien herunterladen und sie den Usern einfach so zum Draufklicken überlassen. Wir hatten das bei einer Behörde für ein Dutzend Applikationen fünf Jahre lang so praktiziert.
  8. Moin, RDS übers Internet geht nur durch einen RD Gateway. An dieser Stelle kannst Du MFA integrieren oder eine andere Art Prä-Authentifizierung einbauen, damit Brute Force von Kennwörtern nicht möglich ist. Auch um einen Single Point of Entry zu haben brauchst Du den Gateway, denn Du kannst ja kein NAT von einer Public IP zu mehreren Zielen auf dem gleichen Port haben, und ich glaube nicht, dass jemand so viele Public IPs für die Farm bereitstellt wie sie Server hat Das alles gilt für Citrix oder VMware genau so. Du kannst eine normale XenApp-/View-Farm rein technisch nicht ins Internet öffnen, ohne einen NetScaler/UAG als Gateway vorzuschalten - allein schon aus dem Argument der Public IPs heraus, und die Sicherheit kommt natürlich hinzu. Und in dem Szenario mit Gateway *und* MFA ist es in meinen Augen nicht weniger sicher als alles andere. Es darf natürlich nur Port 443 inbound erlaubt sein
  9. Moin, ist der Ordner denn da? Dann ist es vielleicht doch nur ein false positive
  10. Was sagen denn die RDP-Logs am Server? Post von Dr. Watson? Alle Treiber und Firmware, speziell Netzwerk, auf dem neusten Stand?
  11. Wenn es unbedingt nötig ist, dass die User das so aufrufen, kannst Du einen Proxy einsetzen und in diesem lokal (HOSTS) den entsprechenden DNS-Eintrag hinterlegen. Oder Du lässt den Proxy DNS extern auflösen, dann funktioniert das auch. Aber ein AD-Mitglied (oder eine AD-konforme Anwendung im allgemeinen) muss die AD-Domäne zur IP-Adresse eines DC auflösen.
  12. ...wie vermutlich von jedem anderen Support, inkl. Support für Waschmaschinen, Autos und Lebensmittel.
  13. Moin, $existingEntry[0].EMailversand enthält kein Datum. Daher wird vermutlich $LastReminderDays nicht richtig berechnet. Ansonsten aktualisierst Du ja nicht den Eintrag in den importierten Daten, sondern fügst immer einen neuen an. Hier musst Du noch an der Logik arbeiten, ich habe sie in Worten ja beschrieben.
  14. Ich weiß nicht. Die Fälle scheinen mir nicht artverwandt: Exchange vor 10 Jahren: Natürlich kann es sich bei einem Support-Call herausstellen, dass es sich um einen Bug in der Software handelt, Wenn Du jemals ein Programm oder Skript geschrieben hast, was länger als eine Zeile war, war da bestimmt auch ein Bug drin - der hat sich in Deinen Einsatzszenarien nur nicht gezeigt. Und genau so hat sich "Dein Exchange-Bug" in den Testszenarien von Microsoft nicht gezeigt. Das ist normal, und Du kriegst bei Microsoft ja auch die Kosten des Support-Calls erstattet, wenn es ein Bug ist. Windows vor wenigen Wochen: Du hast eine Client- oder sogar eine User Profil-Herausforderung, und jemand, der von Microsoft bezahlt wird, sagt Dir, Du sollst Dein Active Directory neu aufsetzen? Halte ich für sehr unwahrscheinlich. Entweder der Supporter hat Deine Frage nicht verstanden oder Du seine Antwort, und beides muss nicht bedeuten, dass mit Dir irgendwas nicht stimmt. Aber mit Sicherheit ist hier falsch kommuniziert worden. Du kannst mir gern per PN die Ticket-Nummer und die Mail schicken, in der Du aufgefordert wirst, Dein AD neu aufzusetzen. Vielleicht lässt sich das aufklären.
  15. In PowerShell brauchst Du kein Ping, da nimmst Du einfach Test-Connection -ComputerName 192.168.178.1 -Count 1 -Quiet und musst Dich um diese Feinheiten nicht kümmern. ...aber ansonsten steht der letzte ERRORLEVEL in PowerShell in der Variablen $LASTEXITCODE
  16. Moin, zwei Dinge: Es sollte heißen IF NOT %ERRORLEVEL% == 1 GOTO ZUHAUSE seit irgendeiner Windows-Version (7?) ist bei ping "Zielhost nicht erreichbar" eine legitime Antwort und resultiert im Errorlevel 0. Das passiert z.B. wenn das Ziel im gleichen Subnetz liegt, aber halt nicht erreichbar ist. Da musst Du schauen, ob es Dir präzise genug ist
  17. Guter Einwand. App-V würde ich jetzt vermutlich nicht mehr anfangen zu lernen, wenn ich es nicht schon könnte, dann schon eher MSIX. Re Terminalserver schnell bereitstellen: Hier gibt es bei virtualisierten Session Hosts im Prinzip zwei Ansätze: Neu installieren. Da muss keine teure Software her, MDT+ WDS reicht. Wenn Du eine Server-Vorlage bereits hast, kann man das, was on top kommt, auch mit Chocolatey abbilden. Aber wenn ihr schon Software-Verteilung betreibt und diese für Server lizenziert wäre, sollte man natürlich auf das Vorhandene setzen. TS-Vorlage pflegen und aus dieser bei Bedarf klonen. Und die Vorlage wird *nicht* manuell gepflegt, sondern ebenfalls mit den Mitteln der Software-VErteilung, siehe oben. Bei jeder Variante muss der Server vor dem Neuerstellen aus der Farm raus und danach wieder rein. Auch das lässt sich ohne Probleme automatisieren. Die Lösungen von VMware und Citrix sind teuer und vor allem hat man wieder eine Technologie mehr am Start. Beide haben diverse Mechanismen, um die Bereitstellung von VMs zu steuern. Da muss man noch weitere Mehrwerte suchen, zumal beide Hersteller (Citrix bereits jetzt, VMware ab März) ausschließlich per Subscription lizenzieren.
  18. Moin, solche "Kleinigkeiten" sind es, womit Citrix nach wie vor ein Schweinegeld verdient. Mit nativem RDS lautet Deine Antwort, wenig überraschend, TS03. Neue Session Collection, neuer TS, entsprechende Berechtigungen und fertig. Wenn es nur ein paar User sind, muss der Server ja auch nicht so groß dimensioniert sein. Alles andere ist eine Bastelei, die unmöglich ist, im Betrieb zu pflegen. Und wenn Du noch kein Verfahren hast, um einen "Standard-Terminalserver" innerhalb weniger Minuten bereitzustellen, dann wird's Zeit, das zu entwickeln. Diese Zeit ist nämlich besser investiert, als der Versuch, die produktive Farm für einen Test zu vergewaltigen.
  19. Du musst die CSV vorher importieren und beim Durchlauf der Schleife abgleichen: Ist der User nicht drin, hinzufügen, ist der User drin und die letzte Erinnerung ist noch frisch, nix machen, ist der User drin und die letzte Erinnerung zu alt, aktualisieren und Mail schicken
  20. cj_berlin

    OST File voll

    Moin, Archiv, im Sinne des Exchange In-Situ-Archivs, ist *nicht* Bestandteil der OST. Das ist dort, wo viele Mobile Worker unterwegs sind, der Hauptgrund gegen diese Funktion. RegKey per @NorbertFe: https://support.microsoft.com/de-de/help/832925/how-to-configure-the-size-limit-for-both-pst-and-ost-files-in-outlook
  21. Zeig mal wieder das komplette Skript mit allen Änderungen.
  22. Was bekommst Du denn ausgegeben, wenn Du $UsersWithOldPasswordFromAD einfach an die Konsole ausgibst? EDIT: Ach, ich sehe: ArrayList... Mach mal für einen schnellen Test einfach ein Array daraus: $UsersWithOldPasswordFromAD = @()
  23. ...aber Software-Verteilung ist generell was, was man in einer wohlgemanagten Umgebung haben sollte Muss ja nicht gleich SCCM sein.
  24. Zum Prüfen, ob ein Element in einer Sammlung enthalten ist, gibt es die Operatoren -in /-notin bzw. -contains/-notcontains . Wenn es Dir nur darum geht, ein Array mit Elementen zu ergänzen, die noch nicht drin sind, hier sind einige Techniken zusammengefasst: https://it-pro-berlin.de/2017/08/powershell-wie-schnell-sind-arrays/ EDIT: OK, habe jetzt gesehen, dass Du das Datum mitführen willst. Das kannst Du mit einem Custom Object machen, der die Properties sAMAccountName und LastDate hat. Also praktisch statt if ($PasswordAge -ge $WarningLevel) { $UsersWithOldPasswordFromAD += $ADUser.SamAccountName } so etwas wie if ($PasswordAge -ge $WarningLevel) { $UsersWithOldPasswordFromAD += [PSCustomObject]@{ 'sAMAccountName' = $ADUser.SamAccountName 'LastDate' = Get-Date } } Dann packst Du das alles in eine CSV mit Export-CSV. Beim nächsten Durchlauf importierst Du die CSV mit Import-CSV und machst in der Schleife dann so etwas wie $existingEntry = $UsersFromCSV.Where({$_.sAMAccoutnName -eq $ADUser.SamAccountName}) if ($existingEntry.Count -gt 0) { $LastReminderDays = ((Get-Date) - $existingEntry[0].LastDate).Days # je nachdem, wie lange her, nochmal erinnern und Datum aktualisieren } else { # anfügen }
×
×
  • Neu erstellen...