{"id":208538,"date":"2024-01-22T09:15:48","date_gmt":"2024-01-22T09:15:48","guid":{"rendered":"https:\/\/www.ninjaone.com\/script-hub\/verwenden-von-powershell-zum-vergleichen-der-lokalen-systemzeit-mit-ntp-servern\/"},"modified":"2024-03-04T19:01:46","modified_gmt":"2024-03-04T19:01:46","slug":"verwenden-von-powershell-zum-vergleichen-der-lokalen-systemzeit-mit-ntp-servern","status":"publish","type":"script_hub","link":"https:\/\/www.ninjaone.com\/de\/script-hub\/verwenden-von-powershell-zum-vergleichen-der-lokalen-systemzeit-mit-ntp-servern\/","title":{"rendered":"Verwenden von PowerShell zum Vergleichen der lokalen Systemzeit mit NTP-Servern"},"content":{"rendered":"<p>Die Zeitsynchronisation ist ein zentrales Element in der komplexen Maschine IT. F\u00fcr verschiedene Funktionen und Sicherheitsprotokolle ist es unerl\u00e4sslich, dass die Ger\u00e4te in einem Netzwerk \u00fcbereinstimmende Zeiten haben. Dieser Artikel befasst sich mit einem PowerShell-Skript, das <strong>die lokale Systemzeit mit einem NTP-Server vergleicht<\/strong> und signalisiert, ob die Differenz einen festgelegten Schwellenwert \u00fcberschreitet.<\/p>\n<h2>Hintergrund<\/h2>\n<p>Mit der Entwicklung moderner IT-Infrastrukturen hat die Bedeutung der Zeitgenauigkeit zugenommen. Unstimmigkeiten, selbst wenn sie nur wenige Sekunden betragen, k\u00f6nnen zu Anomalien bei Anwendungen f\u00fchren oder die Sicherheit gef\u00e4hrden. IT-Fachleute und <a href=\"https:\/\/www.ninjaone.com\/what-is-an-msp\/\">Managed Service Provider (MSPs<\/a> ) m\u00fcssen eine genaue Zeitsynchronisation zwischen den Ger\u00e4ten sicherstellen. Unser Skript dient als Hilfsmittel, um m\u00f6gliche Unstimmigkeiten zu erkennen.<\/p>\n<h2>Das Skript<\/h2>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"powershell\">#Requires -Version 5.1\r\n\r\n&lt;#\r\n.SYNOPSIS\r\n    Compares the local system time to an NTP server, returning an exit code of 0 if less than a 2 minute difference or 1 if more than 2 minute difference.\r\n.DESCRIPTION\r\n    Compares the local system time to an NTP server, returning an exit code of 0 if less than a 2 minute difference or 1 if more than 2 minute difference.\r\n.EXAMPLE\r\n    No parameters needed\r\n    The maximum acceptable time difference of 2 minute.\r\n.EXAMPLE\r\n    -Max 5\r\n    The maximum acceptable time difference of 5 minute.\r\n.EXAMPLE\r\n    -NtpServer \"pool.ntp.org\"\r\n    The maximum acceptable time difference of 2 minute, but uses the ntp.org's pool and use the time server pool \"pool.ntp.org\".\r\n    Alterative pools:\r\n    time.google.com\r\n    time.cloudflare.com\r\n    time.facebook.com\r\n    time.apple.com\r\n    time.nist.gov\r\n.OUTPUTS\r\n    None\r\n.NOTES\r\n    Minimum OS Architecture Supported: Windows 10, Windows Server 2016\r\n    Exit code 1: If the time is off more than Max\r\n    Exit code 0: If the time is off less than or equal to Max\r\n    Release Notes:\r\n    Initial Release\r\nBy using this script, you indicate your acceptance of the following legal terms as well as our Terms of Use at https:\/\/www.ninjaone.com\/terms-of-use.\r\n    Ownership Rights: NinjaOne owns and will continue to own all right, title, and interest in and to the script (including the copyright). NinjaOne is giving you a limited license to use the script in accordance with these legal terms. \r\n    Use Limitation: You may only use the script for your legitimate personal or internal business purposes, and you may not share the script with another party. \r\n    Republication Prohibition: Under no circumstances are you permitted to re-publish the script in any script library or website belonging to or under the control of any other software provider. \r\n    Warranty Disclaimer: The script is provided \u201cas is\u201d and \u201cas available\u201d, without warranty of any kind. NinjaOne makes no promise or guarantee that the script will be free from defects or that it will meet your specific needs or expectations. \r\n    Assumption of Risk: Your use of the script is at your own risk. You acknowledge that there are certain inherent risks in using the script, and you understand and assume each of those risks. \r\n    Waiver and Release: You will not hold NinjaOne responsible for any adverse or unintended consequences resulting from your use of the script, and you waive any legal or equitable rights or remedies you may have against NinjaOne relating to your use of the script. \r\n    EULA: If you are a NinjaOne customer, your use of the script is subject to the End User License Agreement applicable to you (EULA).\r\n#&gt;\r\n\r\n[CmdletBinding()]\r\nparam (\r\n    [Parameter()]\r\n    [int]\r\n    $Max = 2,\r\n    [Parameter()]\r\n    [string]\r\n    $NtpServer = \"time.windows.com\"\r\n)\r\n\r\nbegin {}\r\nprocess {\r\n    Write-Host \"Using NTP server($NtpServer) to get time.\"\r\n    $TimeSample = w32tm.exe \/StripChart \/Computer:\"$NtpServer\" \/DataOnly \/Samples:1\r\n    $Diff = $($($TimeSample | Select-Object -Last 1) -split ', ' | Select-Object -Last 1) -replace '+' -replace '-'\r\n    $TimeScale = $Diff -split '' | Select-Object -Last 1 -Skip 1\r\n\r\n    # Convert to minutes\r\n    $Diff = switch ($TimeScale) {\r\n        \"s\" { [double]$($Diff -replace 's') \/ 60 }\r\n        \"m\" { [double]$($Diff -replace 'm') }\r\n        \"h\" { [double]$($Diff -replace 'h') * 60 * 60 }\r\n        \"d\" { [double]$($Diff -replace 'd') * 60 * 60 * 24 }\r\n        Default {}\r\n    }\r\n    Write-Host \"Time Difference between NTP server and local system: $($([Math]::Round($Diff,2))) minutes\"\r\n\r\n    if ($Max -lt 0) {\r\n        # If Max is negative then flip the sign to positive\r\n        $Max = 0 - $Max\r\n    }\r\n\r\n    # Only output this if -Verbose is used\r\n    Write-Verbose \"$($Diff) minutes &gt; $Max minutes = $($Diff -gt $Max)\"\r\n    # Assuming that $Max and $Diff are positive\r\n    if (\r\n        $Diff -gt $Max\r\n    ) {\r\n        # If time difference &gt; $Max then return exit code of 1\r\n        Write-Host \"Time is over the maximum minutes of $Max.\"\r\n        exit 1\r\n    }\r\n    else {\r\n        # If time difference &lt; $Max then return exit code of 0\r\n        Write-Host \"Time is under the maximum minutes of $Max.\"\r\n        exit 0\r\n    }\r\n}\r\nend {}<\/pre>\n<p>&nbsp;<\/p>\n\n<div class=\"in-context-cta\"><p style=\"text-align: center;\">Zugriff auf \u00fcber 300 Skripte im NinjaOne Dojo<\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.ninjaone.com\/freetrialform\/\">Zugang erhalten<\/a><\/p>\n<\/div>\n<h2>Detailansicht<\/h2>\n<ul>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\"><strong>Cmdlet-Bindung &amp; Parameter<\/strong>: Das Skript verwendet das CmdletBinding-Attribut, so dass es als Cmdlet verwendet werden kann und integrierte PowerShell-Funktionen nutzen kann. Es werden zwei Parameter angegeben: <strong>$Max<\/strong>, die maximal zul\u00e4ssige Zeitdifferenz (Standardwert: 2 Minuten), und <strong>$NtpServer<\/strong>, der zu pr\u00fcfende Server (Standardwert: time.windows.com).<\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"2\" data-aria-level=\"1\"><strong>Prozess-Block<\/strong>: Die Hauptlogik wird hier ausgef\u00fchrt.<\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"3\" data-aria-level=\"1\">Die Zeitdifferenz wird mit <strong>w32tm.exe<\/strong>, einem Windows-Befehlszeilentool, ermittelt.<\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"3\" data-aria-level=\"1\">Analysiert die abgerufene Zeit, indem er die Differenz und ihre Skala (Sekunden, Minuten usw.) feststellt.<\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"3\" data-aria-level=\"1\">Konvertiert die Zeitdifferenz in Minuten.<\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"3\" data-aria-level=\"1\">Vergleicht die berechnete Differenz mit <strong>$Max<\/strong> und gibt den entsprechenden Exit-Code zur\u00fcck.<\/li>\n<\/ul>\n<h2>Potenzielle Anwendungsf\u00e4lle<\/h2>\n<p>Stellen Sie sich einen IT-Experten vor, der ein riesiges Netzwerk von Ger\u00e4ten in einem Unternehmen beaufsichtigt. Sie haben Anomalien in Anwendungen beobachtet, die zeitgestempelte Aktionen protokollieren. Zur Diagnose setzen sie dieses Skript ein, um Ger\u00e4te mit erheblichen Zeitabweichungen zu erkennen. Anhand der Ergebnisse k\u00f6nnen sie dann die notwendigen Anpassungen vornehmen.<\/p>\n<h2>Vergleiche<\/h2>\n<p>Es gibt zwar GUI-basierte Tools und Anwendungen von Drittanbietern, die Funktionen zur Zeitsynchronisierung bieten, aber dieses Skript zeichnet sich durch seine Einfachheit und Anpassungsf\u00e4higkeit aus. Es kann in bestehende IT-Workflows oder Automatisierungswerkzeuge integriert werden, was es zu einer vielseitigen Option macht.<\/p>\n<h2>FAQs<\/h2>\n<ul>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\"><strong>Kann ich verschiedene NTP-Server verwenden?<\/strong><br \/>\nJa, das Skript bietet einen Standard, aber mit dem Parameter <strong>$NtpServer<\/strong> k\u00f6nnen Sie einen anderen Server angeben.<\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\"><strong>Was ist, wenn ich eine andere Zeitschwelle m\u00f6chte?<\/strong><br \/>\n\u00c4ndern Sie den Parameter <strong>$Max<\/strong> auf die gew\u00fcnschte Anzahl von Minuten.<\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\"><strong>Ist das Skript exklusiv f\u00fcr Windows?<\/strong><br \/>\nDas mitgelieferte Skript ist f\u00fcr Windows konzipiert, insbesondere f\u00fcr die Versionen 10 und Server 2016 und aufw\u00e4rts.<\/li>\n<\/ul>\n<h2>Auswirkungen<\/h2>\n<p>Zeitliche Diskrepanzen m\u00f6gen harmlos erscheinen, aber sie k\u00f6nnen tiefgreifende Auswirkungen haben. Ungleiche Zeitstempel k\u00f6nnen die Datenintegrit\u00e4t untergraben, geplante Aufgaben beeintr\u00e4chtigen und Schwachstellen aufdecken. Angreifer k\u00f6nnen Zeitl\u00fccken ausnutzen, daher sind regelm\u00e4\u00dfige \u00dcberpr\u00fcfungen mit Tools wie diesem Skript f\u00fcr die IT-Sicherheit von entscheidender Bedeutung.<\/p>\n<h2>Empfehlungen<\/h2>\n<ul>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\">F\u00fchren Sie das Skript in regelm\u00e4\u00dfigen Abst\u00e4nden aus, um eine kontinuierliche \u00dcberwachung zu gew\u00e4hrleisten.<\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"2\" data-aria-level=\"1\">\u00dcberpr\u00fcfen Sie immer die G\u00fcltigkeit des verwendeten NTP-Servers.<\/li>\n<li data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559684&quot;:-2,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"3\" data-aria-level=\"1\">Bei Unstimmigkeiten sollten Sie der Ursache auf den Grund gehen, da diese auf ein gr\u00f6\u00dferes Problem hindeuten k\u00f6nnten.<\/li>\n<\/ul>\n<h2>Abschlie\u00dfende \u00dcberlegungen<\/h2>\n<p>W\u00e4hrend Skripte wie diese von unsch\u00e4tzbarem Wert sind, kann eine <a href=\"https:\/\/www.ninjaone.com\/\">umfassende Plattform wie NinjaOne<\/a> Ihr IT-Management verbessern. Durch die Integration von <a href=\"https:\/\/www.ninjaone.com\/de\/rmm\/it-automatisierung\/\">automatisierten Pr\u00fcfungen, \u00dcberwachungen und Abhilfema\u00dfnahmen<\/a> kann NinjaOne Tools wie unser PowerShell-Skript erg\u00e4nzen und sicherstellen, dass Ihre Infrastruktur sowohl funktionsf\u00e4hig als auch sicher bleibt.<\/p>\n","protected":false},"author":35,"featured_media":144309,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_relevanssi_hide_post":"","_relevanssi_hide_content":"","_relevanssi_pin_for_all":"","_relevanssi_pin_keywords":"","_relevanssi_unpin_keywords":"","_relevanssi_related_keywords":"","_relevanssi_related_include_ids":"","_relevanssi_related_exclude_ids":"","_relevanssi_related_no_append":"","_relevanssi_related_not_related":"","_relevanssi_related_posts":"","_relevanssi_noindex_reason":"","_lmt_disableupdate":"no","_lmt_disable":""},"operating_system":[4212],"use_cases":[4280],"class_list":["post-208538","script_hub","type-script_hub","status-publish","has-post-thumbnail","hentry","script_hub_category-windows","use_cases-system-konfiguration"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.ninjaone.com\/de\/wp-json\/wp\/v2\/script_hub\/208538","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ninjaone.com\/de\/wp-json\/wp\/v2\/script_hub"}],"about":[{"href":"https:\/\/www.ninjaone.com\/de\/wp-json\/wp\/v2\/types\/script_hub"}],"author":[{"embeddable":true,"href":"https:\/\/www.ninjaone.com\/de\/wp-json\/wp\/v2\/users\/35"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ninjaone.com\/de\/wp-json\/wp\/v2\/comments?post=208538"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.ninjaone.com\/de\/wp-json\/wp\/v2\/media\/144309"}],"wp:attachment":[{"href":"https:\/\/www.ninjaone.com\/de\/wp-json\/wp\/v2\/media?parent=208538"}],"wp:term":[{"taxonomy":"script_hub_category","embeddable":true,"href":"https:\/\/www.ninjaone.com\/de\/wp-json\/wp\/v2\/operating_system?post=208538"},{"taxonomy":"use_cases","embeddable":true,"href":"https:\/\/www.ninjaone.com\/de\/wp-json\/wp\/v2\/use_cases?post=208538"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}