So synchronisierst du die Windows-Serverzeit für den Sky Mission Hub
Der Sky Mission Hub verwendet signierte Anfragen mit einem kurzen Gültigkeitszeitraum. Wenn die Windows-Uhr auf deinem FiveM Server zu weit vor oder nachgeht, kann die API eine Anfrage ablehnen, selbst wenn die Anmeldedaten deines Servers korrekt sind.
Diese Anleitung zeigt dir, wie du die Windows-Uhr synchronisierst, überprüfst, ob es funktioniert hat, und den Mission Hub erneut versuchst.
Warum der Mission Hub die korrekte Zeit benötigt
Jede ausgehende Mission Hub Anfrage enthält einen signierten Zeitstempel von der Maschine, auf der FXServer läuft. Die API prüft diesen Zeitstempel gegen ihre eigene Uhr. Wenn die Differenz zu groß ist, wird die Anfrage mit expired_signature abgelehnt.
Im Mission Hub siehst du eventuell "Unable to load mission hub." Der spezifischere expired_signature Fehler kann im Server-Log erscheinen. Diese allgemeine Fehlermeldung beim Laden kann auch andere Ursachen haben, daher ist das Überprüfen der Uhr ein Schritt zur Fehlerbehebung und keine Lösung für jedes Verbindungsproblem.
Bevor du startest
Du benötigst Administratorzugriff auf den Windows-Server und eine erreichbare Zeitquelle. Windows enthält den Windows-Zeitdienst und das w32tm-Tool, sodass keine zusätzliche Software erforderlich ist.
Befolge bei einem vom Anbieter verwalteten VPS oder einer virtuellen Maschine die Anforderungen deines Hosting-Anbieters bezüglich der Zeitquelle. Falls sich die Uhrzeit wiederholt zurücksetzt, bitte ihn, auch die Synchronisation des Hosts zu überprüfen.
Schritt für Schritt: Windows Server Zeit synchronisieren
Führe diese Befehle auf dem Windows-Server aus, nicht in der FiveM-Konsole oder der txAdmin-Konsole.
PowerShell als Administrator öffnen
Öffne das Windows-Startmenü, suche nach Windows PowerShell, mache einen Rechtsklick darauf und wähle Als Administrator ausführen. Bestätige die Windows-Berechtigungsanfrage, falls eine erscheint.
Windows-Zeitdienst aktivieren und starten
Führe diese Befehle nacheinander aus:
Set-Service -Name W32Time -StartupType Automatic
Start-Service -Name W32Time
Dies startet den Zeitdienst und konfiguriert ihn so, dass er automatisch startet. Das bloße Starten des Dienstes beweist nicht, dass die Uhrzeit synchronisiert wurde.
Aktuelle Zeitquelle und Status überprüfen
w32tm /query /source
w32tm /query /status
Suche nach der ausgewählten Source (Quelle) und der Last Successful Sync Time (Zeit der letzten erfolgreichen Synchronisation). Auf einem Standalone-Server kann die Quelle ein öffentlicher NTP-Server oder ein Hosting-Anbieter-NTP-Server sein. Bei einem Domänenmitglied ist es normalerweise eine Domänen-Zeitquelle. Eine virtuelle Maschine kann einen Host-Integration-Provider nutzen.
Local CMOS Clock (Lokale CMOS-Uhr) oder Free-running System Clock (Freilaufender Systemtakt) bestätigt keine Synchronisation mit einer externen Quelle. Eine fehlende oder veraltete erfolgreiche Synchronisationszeit ist ebenfalls ein Grund für eine Untersuchung.
Fordere eine neue Synchronisation an
w32tm /resync /rediscover
Warte auf das Ergebnis und frage dann den Status erneut ab:
w32tm /query /source
w32tm /query /status
Wenn die Synchronisation erfolgreich ist und der Status die erwartete Quelle sowie eine aktuelle erfolgreiche Synchronisationszeit anzeigt, fahre mit Ergebnis überprüfen unten fort. Du kannst deine bestehende funktionierende Zeitquelle beibehalten.
Wenn ein Standalone-Server eine Zeitquelle benötigt
Nutze diesen Abschnitt nur für einen Standalone-Server ohne eine funktionierende verwaltete Zeitquelle. Ein Standalone-Server ist ein Server, der nicht einer Active Directory-Domäne beigetreten ist.
Wenn dein Hosting-Anbieter einen NTP-Server angibt, verwende dessen dokumentierte Einstellungen. Andernfalls kannst du Windows so konfigurieren, dass es den öffentlichen Zeitserver von Microsoft verwendet:
w32tm /config /manualpeerlist:"time.windows.com,0x8" /syncfromflags:manual /update
Restart-Service -Name W32Time
w32tm /resync /rediscover
Das 0x8 Flag wählt den NTP-Client-Modus aus. Ein Neustart von W32Time hier startet den Windows-Zeitdienst neu; er startet nicht den FXServer neu.
Prüfe das Ergebnis:
w32tm /query /source
w32tm /query /status
Microsoft dokumentiert diese Konfigurationsoptionen in Windows-Zeitdienst-Tools und -Einstellungen.
Ergebnis überprüfen
Bevor du zum Spiel zurückkehrst, bestätige, dass:
- Der Resync-Befehl erfolgreich abgeschlossen wurde.
- Source (Quelle) die Zeitquelle anzeigt, die du für diesen Server erwartest.
- Last Successful Sync Time (Letzte erfolgreiche Synchronisationszeit) aktuell ist.
Du kannst die Uhrzeit auch mit der NTP-Quelle vergleichen, die du konfiguriert hast:
w32tm /stripchart /computer:time.windows.com /samples:5 /dataonly
Wenn du einen anderen NTP-Server verwendest, ersetze time.windows.com durch die Adresse dieses Servers. Es werden fünf Offset-Stichproben gesammelt und der Vorgang dann beendet. Der Offset wird in Sekunden angezeigt; eine synchronisierte Uhr sollte nahe bei Null liegen, anstatt Minuten oder Stunden entfernt zu sein. Windows kann einige Abweichungen schrittweise korrigieren, also prüfe erneut, ob sich der Offset noch einpendelt.
/stripchart vergleicht Uhren; er synchronisiert sie nicht. Er verwendet außerdem einen anderen UDP-Quellport als den Windows-Zeitdienst, sodass ein erfolgreicher Vergleich allein nicht beweist, dass W32Time synchronisieren kann. Überprüfe auch das Resync-Ergebnis und den Dienststatus.Versuche es erneut im Mission Hub
Kehre zum Mission Hub zurück und klicke auf "Erneut versuchen", oder schließe ihn und öffne ihn erneut. Die nächste Anfrage verwendet einen frischen Zeitstempel von der korrigierten Serveruhr.
Ein FiveM oder ein Neustart der Ressource ist normalerweise nicht erforderlich, nur um eine korrigierte Systemzeit zu übernehmen.
Wenn der Hub weiterhin fehlschlägt, überprüfe das neueste Server-Log. Ein dauerhafter expired_signature bedeutet, dass die Serveruhr noch untersucht werden muss. Andere Fehler, einschließlich invalid_signature, erfordern eine eigene Diagnose; das Synchronisieren der Uhr löst nicht jedes Authentifizierungsproblem.
Fehlersuche
Zugriff verweigert
Schließe das aktuelle PowerShell-Fenster und öffne es erneut mit Als Administrator ausführen. Ein Konto mit lokalen Administratorrechten ist erforderlich, um die Einstellungen des Zeitdienstes zu ändern.
Der Dienst wurde nicht gestartet
Führe die Dienstbefehle erneut in einem PowerShell-Fenster mit Administratorrechten aus:
Set-Service -Name W32Time -StartupType Automatic
Start-Service -Name W32Time
Get-Service -Name W32Time
Der Dienststatus sollte Running sein. Wiederhole dann den Resync-Befehl. Wenn eine verwaltete Richtlinie den Dienst deaktiviert oder seine Einstellungen überschreibt, bitte deinen Administrator oder Hosting-Anbieter, diese Richtlinie zu überprüfen.
Keine Zeitdaten verfügbar
Dies bedeutet in der Regel, dass Windows keine gültige Antwort von seiner Zeitquelle erhalten konnte. Überprüfe:
- Der konfigurierte NTP-Hostname ist korrekt geschrieben und lässt sich über DNS auflösen.
- Die Zeitquelle ist verfügbar und liefert NTP-Antworten.
- Die Windows-Firewall, die Firewall des Anbieters und das Netzwerk lassen die NTP-Anfrage und deren Antwort über den UDP-Port 123 zu.
Überprüfe beispielsweise auf einem eigenständigen Server, der so konfiguriert ist, dass er time.windows.com nutzt, die DNS-Auflösung mit:
Resolve-DnsName time.windows.com
Ein erfolgreicher DNS-Lookup bestätigt nur die Namensauflösung. Er beweist nicht, dass NTP-Traffic durchgehen kann. Bitte deinen Anbieter, UDP 123 zu überprüfen, falls die Synchronisierung weiterhin fehlschlägt; das Deaktivieren der Firewall ist nicht notwendig.
Siehe Microsofts Leitfaden zum Fehler „no time data was available“ für weitere Überprüfungen.
Die Uhrzeit wird wieder ungenau
Stelle sicher, dass der Windows-Zeitdienst läuft und seine Quelle erreichen kann. Bei einer virtuellen Maschine können auch der Hypervisor oder der Hosting-Anbieter die Gast-Uhrzeit beeinflussen. Lass den Anbieter die Host-Zeit überprüfen, falls die korrigierte Gast-Zeit wiederholt überschrieben wird.
Behalte die automatische Synchronisierung bei, anstatt die Uhrzeit manuell anzupassen, wann immer der Hub ausfällt.
Verwandter Leitfaden
Siehe Scenario Creator und Hub für die Workflows zur Erstellung und zum Teilen von Missionen im Feuerwehr-System.
ESX, QBCore und Qbox: Framework einrichten und Jobs anlegen
Der praktische FiveM-Einstieg: Framework installieren, Jobs und Ränge richtig anlegen, Dienststatus und Bossrechte verstehen und gespeicherte Daten prüfen.
Nutze GitHub Desktop, um FiveM-Updates zu vereinfachen und jede Änderung zu erkennen
Ein Leitfaden ohne Kommandozeile für FiveM-Server-Besitzer: Nutze GitHub Desktop, um genau zu sehen, was sich in einem Update geändert hat, behalte deine eigenen Konfigurationsänderungen bei und mache sofort einen Rollback, wenn etwas kaputt geht.