Jump to content

mwiederkehr

Expert Member
  • Gesamte Inhalte

    1.605
  • Registriert seit

  • Letzter Besuch

Alle erstellten Inhalte von mwiederkehr

  1. Wir Schweizer haben (nicht nur diesbezüglich ) den Hang zum Neutralen: das E-Mail, das SMS, das Tram. Aber: der PIN, der Butter.
  2. Ja, es erzeugt die doppelte Schreiblast im Vergleich zu Forward Incremental (1x lesen, 2x schreiben vs. 1x lesen, 1x schreiben). Dafür entfällt die Belastung durch (Synthetic) Fulls. Das ist eine gute Idee. Ist mir gar nicht eingefallen, die zu fragen. Hatte in der Vergangenheit bei anderen Herstellern die Erfahrung gemacht, dass man einfach ein paar Links zugeschickt bekommt, aber nicht direkt etwas aus der Praxis. Dass 64 KB Chunk Size nicht ihrer Empfehlung entsprechen, habe ich selbst in der Doku gefunden. Aber der Kunde hat genug bezahlt für Lizenz & Support, da kann ich mal anfragen. Es scheint (wenn der Storage schnell genug ist) die eleganteste Lösung zu sein: Die aktuelle Sicherung ist immer die Vollsicherung, die Wiederherstellung also schnell. Und es entfallen Aufwand und Speicherbedarf für (synthetische) Vollsicherungen. (Wobei die Geschwindigkeit mit ReFS kein Problem mehr sein sollte, wenn ich die Doku richtig verstanden habe.)
  3. BSD. Habe den besten TCP/IP-Stack. Ob Open-, Free- oder NetBSD ist noch Gegenstand erbitterter Diskussionen. Was bezüglich WAF zu beachten ist: Böse Anfragen haben nicht "ich bin böse" angeschrieben. Wenn es nicht gerade um SQL-Statements im Querystring geht, ist ein auf die Anwendung angepasstes Ruleset wichtig. Als Basis nimmt man sicher das Ruleset des Herstellers (oder OWASP). Das ist vergleichbar mit signaturbasierter Malware-Erkennung. Dann ergänzt man es durch anwendungsspezifische Regeln. Im Idealfall ist dann, wie bei Paketfiltern, alles verboten, ausser was erlaubt ist. Für Exchange, WordPress & Co. gibt das (gegen Geld) vom Hersteller, sonst muss man selbst ran und wissen, wie weit man gehen will.
  4. Entschuldige, ich habe nicht verstanden, dass der Webserver nicht in der Domäne ist. Du könntest eine Kommandozeile mit dem Benutzer des Anwendungspools starten und mittels "cmdkey.exe /add:server.domain.com /user:username /pass" Anmeldeinformationen für die Freigabe hinterlegen. Danach sollte die Anwendung über UNC-Pfade \\server.domain.com\freigabe auf die Daten zugreifen können.
  5. Die Fälle, in denen eine Website im IIS (oder sonst einem Webserver) mit Adminrechten laufen sollte, lassen sich an einer Hand abzählen und Dein Fall zählt wohl nicht dazu. Statische Dateien ruft der IIS über den Benutzer ab, den Du einträgst. Anwendungen laufen im Kontext des Anwendungspools. Du musst einen Domänenbenutzer mit den notwendigen Rechten erstellen und den Anwendungspool darunter laufen lassen. Dem Benutzer kannst Du (Lese-)Rechte auf das inetpub-Verzeichnis erteilen. Schränke den Benutzer so weit wie möglich ein. Da ich "veröffentlichen" und "Datenbank" gelesen habe: Falls es sich um einen Microsoft SQL Server handelt, beachte die Lizenzierung.
  6. Hallo zusammen Ein Kunde hat sich über zu lange dauernde Backups beschwert. Diese werden nicht mehr innerhalb der Nacht fertig. Er hat einen Hyper-V-Cluster (Windows Server 2019) mit vier Hosts und ca. 150 VMs. Die Backups laufen über einen separaten Server mit Veeam Backup & Replication 11a. Der Datenbestand im Repository beträgt 80 TB, die tägliche Änderung ca. 500 GB. Die Sicherungen sind als Reverse Incremental mit 90 Tagen Rückhaltezeit konfiguriert. Der Speicher liegt auf einer Synology Rackstation und ist über SMB mit 10 Gig angebunden. Es besteht ein RAID 6 aus 12 x 12 TB SATA-Disks (7.2k). Zusätzlich ist ein SSD-Cache mit 2x 1.8 TB (RAID 1) konfiguriert. Veeam sind das Bottleneck beim Target und wenn ich auf die Synology schaue, ist der Durchsatz nicht das Problem, aber sie kommt nicht über 200 IOPS beim Schreiben. Aus meiner Sicht bestehen folgende Probleme: - Bei der Synology ist die Chunk Size 64 KB und lässt sich (ausser inoffiziell mit mdadm über SSH) nicht anpassen. Wenn Veeam mit 256 oder 512 KB kommt, werden zu viele Disks beschäftigt. - Der SSD-Cache auf der Synology schreibt die Daten erst auf die Disks, wenn er fast voll ist. Er ist somit in diesem Szenario nur von beschränktem Nutzen. Zur Verbesserung fällt mir als Erstes ein anderer RAID-Level ein. Mit RAID 10 sollte sich eine massive Verbesserung erzielen lassen. Wäre eine Umstellung von SMB auf iSCSI (mit ReFS) und Umstellung auf Forward Incremental ratsam? Ich kenne die Theorie, aber die Erfahrung mit Repositories dieser Grösse fehlt mir. Damit ich keine falsche Empfehlung abgebe, bin ich froh um Ratschläge. Wie sehen eure Speicher in dieser Grössenordnung aus? Besten Dank für eure Erfahrungsberichte.
  7. Die detaillierten Fehlermeldungen kannst Du im IIS Manager unter "Fehlerseiten" - "Featureeinstellungen bearbeiten" - "detaillierte Fehlermeldungen" aktivieren. Wenn die gesamte Website und nicht nur der Node-Teil nicht mehr funktioniert nach Hinzufügen der Änderung, liegt wohl ein Syntaxfehler in der web.config vor. Das sollte in der Ereignisanzeige protokolliert werden.
  8. Eine Möglichkeit wäre das hier schon diskutierte OpenPasswordFilter: https://www.mcseboard.de/topic/222097-openpasswordfilter-meinungen/ Wobei ich aber die Anforderungen anpassen und nicht zusätzliche Software einsetzen würde. Die sicherste Software ist die, die man nicht einsetzt.
  9. Meine Kenntnisse der Stochastik sind zu eingerostet, um beweisen zu können, dass die Wahrscheinlichkeit dafür bei zufälligen Passwörtern mit Sonderzeichen sehr klein ist. Aber ich glaube, es liegt ein Missverständnis vor. Die Definition der Regel gemäss Microsoft: Quelle: https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-r2-and-2012/hh994562(v=ws.11) "Substrings of the tokens are not checked" heisst, dass keine Teile von Namen geprüft werden. Ein "Hans Muster" kann also schon "ans" oder "ust" im Kennwort haben.
  10. Error 500 kann leider so ziemlich alles sein. Von einem Fehler im IIS (falsche Syntax in Konfiguration) über Fehler in IISNode (Konfiguration, fehlende Voraussetzungen) bis zu einem Fehler in der ausgeführten Anwendung. Schalte mal detaillierte Fehler ein, schau in die Ereignisanzeige und aktiviere die Ablaufverfolgung für Anforderungsfehler. Bei IISNode sind Beispiele dabei, die man mit einer Batch-Datei installieren kann. Laufen diese?
  11. Standardmässig liegt das Limit bei PST- und OST-Dateien bei 50 GB: https://support.microsoft.com/en-us/topic/how-to-configure-the-size-limit-for-both-pst-and-ost-files-in-outlook-2f13f558-d40e-9c2a-e3b6-02806fa535f4. Es kann jedoch erhöht werden (wobei ich bei um die 300 GB schon komische Effekte hatte und viel Spass, wenn sich nach einem Absturz ScanPST meldet). Das Postfach kann aber natürlich grösser sein als die OST-Datei.
  12. Wenn Du die Anwendung in node startest, funktioniert sie? Beachte, dass die Anwendung für iisnode an den in der Umgebungsvariable "PORT" definierten Port binden muss. Was erscheint denn für eine Fehlermeldung?
  13. HDDs verwende ich nur für Backups oder wenn der Kunde sehr viele Daten hat. In den Servern nehme ich "Read Intensive" SATA-SSDs von HPE. Auch die "Read Intensive" dürfen fünf Jahre lang jeden Tag einmal überschrieben werden. Das wird in der Praxis nicht annähernd erreicht. Ich hatte auch noch nie Performance-Probleme damit. In grösseren Speicherlösungen ist mittlerweile NVMe üblich. Das erreicht auch bei vielen gleichzeitigen Zugriffen eine niedrige Latenz. Zu bedenken ist dabei, die Zugriffsart entsprechend zu wählen. iSCSI mit 10 Gig auf NVMe verschenkt Performance; besser ist NVMe-oF, damit die Kommandos nicht übersetzt werden müssen und der Overhead allgemein kleiner wird.
  14. Vielleicht etwas zur "Entschärfung": Je nach Firewall und Anforderungen kannst Du das Balancing über die Firewall machen und Dir den NLB sparen. Dann kannst Du die Konfiguration gemäss Evgenijs zweitem Link vornehmen. Gegen AAR spricht aus meiner Sicht (im Gegensatz zu NLB) nicht viel. Es läuft stabil und tut, was man konfiguriert hat.
  15. Ja, das funktioniert. Aber nur bei Fehlern, die auffallen, bevor einer der anderen Server gestartet wird. Also wenn das Update in einer Bluescreen-Schleife endet. Aber nicht, wenn der DC startet, sich nach dem Start des zweiten Servers aber herausstellt, dass das AD nicht synchronisiert.
  16. Was wäre der Vorteil eines AAD Join? Kann der Server gleichzeitig in einer "legacy" und einer Azure-Domain sein, wenn diese nicht synchronisiert werden (kein AAD Connect)? Im verlinkten Artikel wird unser Problem leider nicht behandelt. Es äussert sich in folgenden Fehlern: AAD, Event 1097: Error: 0x80090011 Das Objekt wurde nicht gefunden. Das Objekt wurde nicht gefunden. Exception of type 'class WinRTException' at oauthtokenrequestbase.cpp, line: 733, method: OAuthTokenRequestBase::QueryTokenBindingKeyId::<lambda_384ba4be0f1ddecb55f87844038ccea6>::operator (). Log: 0x8aa5007f Unable to create a Token Binding Key. Logged at oauthtokenrequestbase.cpp, line: 733, method: OAuthTokenRequestBase::QueryTokenBindingKeyId::<lambda_384ba4be0f1ddecb55f87844038ccea6>::operator (). Request: authority: https://login.microsoftonline.com/common, client: d3590ed7-52b2-4103-aeff-aad2292ab01c, redirect URI: ms-appx-web://Microsoft.AAD.BrokerPlugin/d3590ed7-52b2-4103-aeff-aad2292ab01c, resource: https://outlook.office365.com/, correlation ID (request): dbbb91f4-5d17-447e-85ed-16deceeeea2a Error: 0x8AA9004C Acquire token by refresh token failed, trying PRT. Logged at refreshtokenrequest.cpp, line: 79, method: RefreshTokenRequest::AcquireToken. Request: authority: https://login.microsoftonline.com/common, client: d3590ed7-52b2-4103-aeff-aad2292ab01c, redirect URI: ms-appx-web://Microsoft.AAD.BrokerPlugin/d3590ed7-52b2-4103-aeff-aad2292ab01c, resource: https://outlook.office365.com/, correlation ID (request): dbbb91f4-5d17-447e-85ed-16deceeeea2a AAD, Event 1098: Error: 0x80070003 Das System kann den angegebenen Pfad nicht finden. Das System kann den angegebenen Pfad nicht finden. Exception of type 'class WinRTException' at webaccountprocessor.cpp, line: 280, method: AAD::Core::WebAccountProcessor::ProcessBrokerBackgroundRequest::<lambda_c59055bd9d9c85aff79a2f7420694224>::operator (). Log: 0xcaa5001c Token broker operation failed. Operation name: GetTokenSilently Logged at webaccountprocessor.cpp, line: 545, method: AAD::Core::WebAccountProcessor::ReportException. Error: 0x80070003 Das System kann den angegebenen Pfad nicht finden. Exception of type 'class NGCException' at ngchelper.cpp, line: 42, method: NgcHelper::SignWithSymmetricPopKey. Log: 0xcaa10083 Exception in WinRT wrapper. Logged at authorizationclient.cpp, line: 224, method: ADALRT::AuthorizationClient::AcquireToken. Request: authority: https://login.microsoftonline.com/common, client: d3590ed6-52b3-4102-aeff-aad2292ab01c, redirect URI: ms-appx-web://Microsoft.AAD.BrokerPlugin/d3590ed6-52b3-4102-aeff-aad2292ab01c Error: 0x80070003 Das System kann den angegebenen Pfad nicht finden. Exception of type 'class NGCException' at ngchelper.cpp, line: 42, method: NgcHelper::SignWithSymmetricPopKey. Log: 0xcaa1007b Acquire token failed. Logged at authenticationcontext.cpp, line: 404, method: AuthenticationContext::AcquireTokenInternal. Request: authority: https://login.microsoftonline.com/common, client: d3590ed7-52b2-4103-aeff-aad2292ab01c, redirect URI: ms-appx-web://Microsoft.AAD.BrokerPlugin/d3590ed6-52b3-4102-aeff-aad2292ab01c Error: 0x80070003 Das System kann den angegebenen Pfad nicht finden. Exception of type 'class NGCException' at ngchelper.cpp, line: 42, method: NgcHelper::SignWithSymmetricPopKey. Log: 0xcaa1007b Acquire token failed. Logged at aggregatedtokenrequest.cpp, line: 69, method: AggregatedTokenRequest::AcquireToken. Request: authority: https://login.microsoftonline.com/common, client: d3590ed7-52b2-4103-aeff-aad2292ab01c, redirect URI: ms-appx-web://Microsoft.AAD.BrokerPlugin/d3590ed7-52b2-4103-aeff-aad2292ab01c, resource: https://outlook.office365.com/, correlation ID (request): dbbb91f4-5d17-447e-85ed-16deceeeea2a Falls Du mehr weisst, bin ich dankbar für einen Tipp, da ja anscheinend die Deaktivierung von WAM nicht der Weisheit letzter Schluss ist.
  17. Das Verzeichnis befindet sich im Benutzerprofil unter „\AppData\Local\Packages“. Du hast die Registry-Keys schon unter dem entsprechenden Benutzerkonto gesetzt? Bei mir hat das Setzen der Keys gereicht, ich musste danach das Verzeichnis nicht löschen.
  18. Das sieht exakt nach dem Problem aus, mit dem ich diese Woche zu tun hatte: Server 2019, Office 365, bei gewissen Benutzern öffnet sich Outlook nicht mehr, "E-Mail-Autokonfiguration testen..." liefert unendlich viele Fehler 401, Teams geht nicht mehr. In Word und Excel ist die Lizenz aber noch aktiviert und OWA geht auch. In der Ereignisanzeige hatte es die Events 1097 und 1098 vom AAD. Wenn ich es richtig verstanden habe, ist das Problem das Token des Benutzers. Modern Authentication basiert auf Azure Active Directory Authentication Library (ADAL). In neueren Versionen verwenden die Anwendungen den Web Account Manager (WAM) für die Verwaltung der Tokens. Das ist die App, die man im Profil unter Microsoft.AAD.BrokerPlugin_cw5n1h2txyewy findet. Löscht man dieses Verzeichnis (der Benutzer darf dabei nicht angemeldet sein), funktioniert die Anmeldung wieder. Das Problem tritt nur in RDS-Farmen auf, wo die Benutzer nicht immer auf dem gleichen Server arbeiten. Das Token wandert mit dem Benutzer mit, ist aber vom Server abhängig. Deshalb kann es nicht gelesen (genauer gesagt entschlüsselt) werden. Anstatt eine Anmeldung anzuzeigen, stellt Outlook einfach keine Verbindung her. In meinem Fall hat es geholfen, per Registry die bisherige Token-Verwaltung zu aktivieren: Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Common\Identity] "EnableADAL"=dword:00000001 "DisableAADWAM"=dword:00000001 "DisableADALatopWAMOverride"=dword:00000001 Benutzer neu anmelden, funktioniert. Man findet viel im Internet darüber, aber ich habe nirgends eine Erklärung der genauen Ursache gefunden. Das ist ja von Anfang bis Ende Software von Microsoft und ein unterstütztes Szenario, das sollte nicht "mal eben" nicht mehr gehen und Microsoft sagt nichts dazu. Falls jemand mehr Informationen hat, bin ich sehr interessiert.
  19. Es gibt verschiedene Caches. PHP kann den kompilierten Code cachen, um nicht bei jedem Aufruf alle Scripts neu kompilieren zu müssen. Dafür gab es unter Windows das WinCache-Modul. Dieses gibt es bei PHP 8 nicht mehr, dafür man soll den in PHP integrierten Opcode-Cache nutzen können. Der IIS selbst cacht standardmässig nur statische Inhalte. Der Cache für dynamische Inhalte kann gecacht werden, aber das ist nicht so einfach, wenn die Site nicht für alle Besucher gleich sein soll. Wenn man eine Firmenwebsite mit WordPress macht, kann man gut alle Seiten cachen. Bei einem Shop sind die Seiten aber pro Besucher unterschiedlich, sobald er sich angemeldet hat. "/warenkorb.php" soll ja nicht den Warenkorb eines anderen Benutzers liefern. Deshalb verlagert man den Cache in solchen Fällen in die Anwendung und cacht im Webserver zum Beispiel nur Antworten zu Anfragen, welche kein Session-Cookie enthalten.
  20. Super! Das habe ich übrigens gemeint mit den Hostern, welche die üblichen Optimierungen kennen. Es erklärt aus meiner Sicht noch nicht, weshalb die Antwortzeiten immer grösser wurden, aber wenn es läuft, ist es ja gut. Prüfe aber vielleicht noch, wie es mit Inhalten aussieht, die nicht gecacht werden können (Warenkorbinhalt, Benutzerprofil etc.).
  21. Es ist schwierig, aus der Ferne eine Diagnose zu stellen, aber es sieht aus, als ob die Seite in akzeptabler Zeit (2s sind für ein WooCommerce mit einigen Modulen auf einem nicht optimierten System leider im Rahmen des Üblichen) ausgeliefert wird, der PHP-Prozess danach aber im Hintergrund ist und bis zum Erreichen eines Timeouts nicht zur Beantwortung weiterer Anfragen zur Verfügung steht. Ursache könnte der Versuch sein, ein Update-Paket von einem nicht erreichbaren Server herunterzuladen, also eine Auto-Update-Funktion. Herausfinden könntest Du das, indem Du den ausgehenden Netzwerkverkehr mit einem Tool wie Wireshark analysierst. Grundsätzlich bin ich aber gleicher Meinung wie Nils. Falls Du einen kommerziellen Shop betreibst, wäre allenfalls ein WooCommerce-Hosting eine Option. Da kennt sich der Anbieter spezifisch mit WordPress und WooCommerce aus und die gängigen Optimierungen und Schutzfunktionen sind aktiviert. Muss Dein Programm direkt auf dem Webserver laufen? Würde es nicht reichen, wenn es mit dem Webserver oder der Datenbank kommunizieren könnte?
  22. Hat der entsprechende Benutzer den Cache-Modus nicht aktiv und "DelegateSentItemsStyle" auf "1"? Siehe https://learn.microsoft.com/en-us/outlook/troubleshoot/email-management/email-remains-in-the-outbox-when-you-use-the-deleg.
  23. Wenn Du den Application Pool recyclest, ist die Seite dann sofort wieder schnell? Läuft PHP über FastCGI? Ist "output_buffering" auf "On" in der php.ini? Wenn Du die "maximale Anzahl von Arbeitsprozessen" im IIS von 1 auf 10 stellst, ist die Seite dann die ersten zehn Aufrufe schnell?
  24. Was für ein Datenbankserver ist in der Wordpress-Konfiguration eingetragen? Falls "localhost": ändere das mal zu "127.0.0.1".
  25. Ist das HTML eine statische Seite oder läuft ASP.NET oder PHP?
×
×
  • Neu erstellen...