Oft ist in Foren und Gruppen darüber zu lesen, wie es immer wieder zu Verbindungsabbrüchen mit den Shellies kommt oder diese erst garnicht gefunden werden. Ich habe mich aus diesem Grund gleich für die Einrichtung via Browser entschieden. Eine zusätzliche App, um mein SmartHome zu bedienen, stellt für mich auch keine brauchbare Option dar.
Ich möchte mein Shelly einrichten und dann mit gewohnten Mitteln steuern.
Zuerst muss der Shelly an eine Stromquelle angeschlossen werden. Du solltest natürlich entsprechend versiert und ausgebildet sein, um eine Elektroinstallation dieser Art durchführen zu dürfen! Nachdem nun Strom auf dem Shelly ist, suchst du mit deinem Rechner nach einem neuen WLAN-Netzwerk, das im Namen „shelly“ enthält.
Verbinde dich mit diesem Netzwerk und gib in der Browserzeile folgende IP-Adresse ein:
http://192.168.33.1
Nach Drücken der ENTER-Taste solltest du eine Webseite sehen, die in etwa so aussieht:
Nun klickst du auf den Button „Internet & Security“. Unter „Client Mode Wifi“ gibst du nun die Zugangsdaten zu deinem eigenen WLAN-Netzwerk an.
Wifi Name ist der SSID-Name deines 2,4GHz Netzwerkes.
Password – hier trägst du dein WPA2 Passwort deines Netzwerks ein.
Optional kannst dem Shelly eine feste IP-Adresse geben, was ich empfehle. Hierbei ist es wichtig, dass dein Router (DHCP-Server) einen freien IP-Adressbereich hat, damit du in diesem Bereich die feste IP-Adresse vergeben kannst. Zudem solltest du deine Router-Adresse unter „Gateway“ eintragen. Nur so kann sich der Shelly auch mal ein Firmware-Update holen.
Wenn du alle Daten richtig eingegeben hast, kannst du nun auf den „Save“-Button klicken. Nicht erschrecken, der Shelly trennt jetzt die WLAN-Verbindung zu deinem Rechner. Er versucht sich jetzt an deinem WLAN-Netzwerk, mit deinen Zugangsdaten anzumelden. Deshalb musst du jetzt mit deinem Rechner auch wieder zu deinem WLAN-Netzwerk wechseln. Wenn du nun im Browser die IP-Adresse eingibst, oder alternativ auf dem Popup-Fenster auf die Adresse klickst, solltest du deinen Shelly wieder auf die Weboberfläche deines Shellys gelangen.
Sollte dies nicht der Fall sein, prüfe nach einer Weile, ob der Shelly wieder sein eigenes WLAN-Netzwerk anbietet. Dann hast du wohl falsche Zugangsdaten für dein Netzwerk angegeben. Gehe nun die Schritte wie oben beschrieben nochmals durch, angefangen, beim Verbinden mit dem Shelly-Netzwerk und Eingabe der IP-Adresse http://192.168.33.1.
Hast du die Weboberfläche deines Shellys aber erreicht, konnte sich der Shelly erfolgreich an deinem WLAN-Netzwerk anmelden. Jetzt kannst du alle weiteren Dinge wie Schaltzeit, Schaltertyp, Aktionen, Namen und sonstige Einstellungen vornehmen.
Domänencontroller replizieren Ihre Skripte und Gruppenrichtlinien untereinander mittels Distributed File Replication Service (DFRS). Das war nicht immer so. Früher war es der File Replication Service (FRS). Dieser wird ab Windows Server 2019 nicht mehr unterstützt. Wer also seine Active Directory-Infrastruktur modernisieren möchte, der sollte von FRS auf DFRS migrieren. Dieser Blog-Artikel zeigt Euch, wie es geht.
Einführung
Jeder Domänencontroller in einem Windows-Netzwerk besitzen eine Ordnerfreigabe namens SYSVOL. Diese dient zur Replikation von Skripten und Gruppenrichtlinien zu anderen Domänencontroller. Der zugrunde liegende Replikationsmechanismus basiert ab Windows Server 2008 auf dem File Distributed File Replication Service (DFRS). Bis Windows Server 2016 wurde auch der ältere Replikationsmechanismus File Replication Service (FRS) unterstützt.
Wer bisher Windows Server 2016 (oder älter) als Domänencontroller im Einsatz hatte, dessen Replikation basiert unter Umständen noch auf FRS. Wer nun einen Windows Server 2019 oder 2022 als sekundären Domänencontroller hinzufügen möchte, der bekommt eine fette Meldung präsentiert, dass das so nicht geht, da der eigene Server kein FSR unterstützt.
In diesem Fall bleibt uns nichts weiter übrig, als den Replikationsmechanismus auf DFRS zu migrieren.
Migration durchführen
Das Werkzeug zur Durchführung der Migration hört auf den Namen Dfsrmig.exe.
Mit Dfsrmig.exe kannst Du die Migration in drei Schritten bei laufendem Betrieb durchführen:
Schritt 1 = Übergang zum Migrationsstatus Prepared: In diesem Status wird DFSR parallel zu FRS aktiviert. DFSR legt eine eigene Kopie des SYSVOL-Ordners unter SYSVOL_DFRS an, macht sonsts aber erstmal gar nichts.
Schritt 2 = Übergang zum Migrationsstatus Redirected: In diesem Status beginnt DFSR mit der Arbeit und nimmt Replikationsanfragen entgegen. SYSVOL_DFRS wird zum Hauptordner. FRS bleibt aber noch aktiv und arbeitet parallel mit seinem alten SYSVOL-Ordner.
Schritt 3 = Übergang zum Migrationsstatus Eliminated: In diesem Status geht DFSR weiter seiner Arbeit nach. FRS wird jedoch deaktiviert und der alte SYSVOL-Ordner gelöscht.
Die Aufteilung in drei separate Schritte erlaubt eine Rollback-Migration im Fall eines Fehlers.
Soweit zur Theorie, wir wollen jetzt die Migration in der Praxis sehen. Wir gehen dabei von folgender Beispielkonfiguration aus:
Domäne: intranet.beispiel.at
Primärer Domänencontroller: DC01
Sekundärer Domänencontroller: DC02
Schritt 1: Vorbereiten (Prepare)
Als erstes prüfen wir, ob die aktuelle Replikation unter FSR in Ordnung ist.
Dazu auf dem Server DC01 die Eingabeaufforderung als Administrator starten und folgendes eintippen:
net share
Die Ausgabe sollte in etwa wie folgt aussehen:
Name Ressource Beschreibung
-------------------------------------------------------------------------------
C$ C:\ Standardfreigabe
IPC$ Remote-IPC
ADMIN$ C:\Windows Remoteverwaltung
NETLOGON C:\Windows\SYSVOL\sysvol\intranet.beispiel.at\SCRIPTS
Ressource für Anmeldeserver
SYSVOL C:\Windows\SYSVOL\sysvol Ressource für Anmeldeserver
Der Befehl wurde erfolgreich ausgeführt.
Das sieht gut aus, die Netzwerkfreigabe SYSVOL ist wie gewünscht vorhanden.
Ein weitere Prüfung:
dfsrmig /getglobalstate
Die Ausgabe sollte wie folgt aussehen:
Die DFSR-Migration wurde noch nicht initialisiert. Legen Sie den
globalen Status auf den gewünschten Wert fest, um die Migration zu starten.
Wir haben dfsrmig gestartet und den aktuellen Status der Migration abgefragt. Die Antwort ist wie erwartet, eine Migration wurde also noch nicht durchgeführt.
Jetzt starten wir den Migrationsprozess, in dem wir den Status auf 1 (Prepared) setzen:
dfsrmig /setglobalstate 1
Die Ausgabe sollte wie folgt aussehen:
Aktueller globaler DFSR-Status: "Starten"
Neuer globaler DFSR-Status: "Vorbereitet"
Die Migration wechselt in den Status "Vorbereitet". Der DFSR-Dienst
kopiert den Inhalt von SYSVOL in den Ordner SYSVOL_DFSR.
Falls die Migration von einem Domänencontroller nicht gestartet werden kann, versuchen Sie es mit einem manuellen Abruf.
Alternativ können Sie den Befehl mit der Option "/CreateGlobalObjects" ausführen.
Die Migration kann in einem beliebigen Zeitraum
zwischen 15 Min. und 1 Stunde gestartet werden.
Erfolgreich
Unmittelbar danach überprüfen wir den Migrationsstatus:
dfsrmig /getmigrationstate
Es dauert eine Weile, bis alle Domänencontroller den Status übernommen haben. Daher sieht die Ausgabe wahrscheinlich wie folgt aus:
Die folgenden Domänencontroller haben den globalen Status (""Vorbereitet"") nicht erreicht:
Domänencontroller (lokaler Migrationsstatus) - Domänencontrollertyp
===================================================================
DC01 ("Starten") - Primary DC
DC02 ("Starten") - Writable DC
Die Migration hat noch nicht auf allen Domänencontrollern einen konsistenten Status erreicht.
Möglicherweise sind die Statusinformationen aufgrund der Wartezeit der Active Directory-Domänendienste veraltet.
Diese Abfrage können wir beliebig oft wiederholen. Irgendwann bekommen wir diese Ausgabe:
Alle Domänencontroller wurden erfolgreich zum globalen Status (""Vorbereitet"") migriert.
Die Migration hat auf allen Domänencontrollern einen konsistenten Status erreicht.
Erfolgreich
Mit Schritt 1 sind wir fertig.
Schritt 2: Umleiten (Redirect)
Jetzt wollen wir den Status auf 2 (Redirected) setzen:
dfsrmig /setglobalstate 2
Die Ausgabe sollte wie folgt aussehen:
Aktueller globaler DFSR-Status: "Vorbereitet"
Neuer globaler DFSR-Status: "Umgeleitet"
Die Migration wechselt in den Status "Umgeleitet". Die Freigabe "SYSVOL"
wird zum Ordner "SYSVOL_DFSR" geändert,
der mithilfe von DFSR repliziert wird.
Erfolgreich
Wir prüfen wieder den Migrationsstatus:
dfsrmig /getmigrationstate
Zunächst bekommen wir folgende Ausgabe:
Die folgenden Domänencontroller haben den globalen Status (""Umgeleitet"") nicht erreicht:
Domänencontroller (lokaler Migrationsstatus) - Domänencontrollertyp
===================================================================
DC01 ("Vorbereitet") - Primary DC
DC02 ("Vorbereitet") - Writable DC
Die Migration hat noch nicht auf allen Domänencontrollern einen konsistenten Status erreicht.
Möglicherweise sind die Statusinformationen aufgrund der Wartezeit der Active Directory-Domänendienste veraltet.
Wenn alle Domänencontroller den Migrationsstatus übernommen haben, dann diese Ausgabe:
Alle Domänencontroller wurden erfolgreich zum globalen Status (""Umgeleitet"") migriert.
Die Migration hat auf allen Domänencontrollern einen konsistenten Status erreicht.
Erfolgreich
Mit Schritt 2 sind wir fertig.
Schritt 3: Beseitigen (Eliminate)
Zu guter Letzt wollen wir den Status auf 3 (Eliminate) setzen:
dfsrmig /setglobalstate 3
Die Ausgabe sollte wie folgt aussehen:
Aktueller globaler DFSR-Status: "Umgeleitet"
Neuer globaler DFSR-Status: "Entfernt"
Die Migration wechselt in den Status "Entfernt". Es ist nicht möglich,
diesen Schritt rückgängig zu machen.
Verwenden Sie die Option "/DeleteRoNtfrsMembers", wenn ein schreibgeschützter Domänencontroller
zu lange im Status "Wird entfernt" verbleibt.
Erfolgreich
Wir prüfen wieder den Migrationsstatus:
dfsrmig /getmigrationstate
Und auch hier, erst so:
Die folgenden Domänencontroller haben den globalen Status (""Entfernt"") nicht erreicht:
Domänencontroller (lokaler Migrationsstatus) - Domänencontrollertyp
===================================================================
DC01 ("Umgeleitet") - Primary DC
DC02 ("Umgeleitet") - Writable DC
Die Migration hat noch nicht auf allen Domänencontrollern einen konsistenten Status erreicht.
Möglicherweise sind die Statusinformationen aufgrund der Wartezeit der Active Directory-Domänendienste veraltet.
Später dann so:
Alle Domänencontroller wurden erfolgreich zum globalen Status (""Entfernt"") migriert.
Die Migration hat auf allen Domänencontrollern einen konsistenten Status erreicht.
Erfolgreich
Mit dem letzten Schritt 3 sind wir fertig.
Abschließende Überprüfung
Werfen wir wieder einen Blick auf unsere Netzwerkfreigaben:
net share
Die Ausgabe sollte in etwa wie folgt aussehen:
Name Ressource Beschreibung
-------------------------------------------------------------------------------
C$ C:\ Standardfreigabe
IPC$ Remote-IPC
ADMIN$ C:\Windows Remoteverwaltung
NETLOGON C:\Windows\SYSVOL_DFSR\sysvol\intranet.beispiel.de\SCRIPTS
Ressource für Anmeldeserver
SYSVOL C:\Windows\SYSVOL_DFSR\sysvol Ressource für Anmeldeserver
Der Befehl wurde erfolgreich ausgeführt.
Der Name der Netzwerkfreigabe ist gleich geblieben, aber der verknüpfte Ordner lautet nun SYSVOL_DFSR. So war es ja geplant, also alles ok.
Eine abschließende Prüfung soll sicherstellen, dass der Dienst für FSR deaktiviert ist.
Dazu geht man zunächst in die Einstellungen für die RTSP-Kamera und stellt die Kamera kurzeitig auf „MJPEG“ um. Der Stream wird dann in der Regel unterbrochen, aber das ist erst mal nicht weiter tragisch, da man am Ende wieder alles auf „H.264“ zurückstellt.
— Surveilance Station Camer Einstellungen
Nun klickt man mit der rechten Maustaste auf die betreffende Kamera und dann auf „Stream-Pfad freigeben“. Dann werden einem die Daten der Kamera, die man für die nachfolgenden Befehle benötigt, angezeigt. Neben der IP-Adresse der DiskStation (1) findet man hinter „cameraID=“ die wesentlichen ID-Daten der Kamera (2).
Mit folgendem Shellskript (Achtung: es dürfen keine CR am Zeilenende enthalten sein) kann man sich dann einen Snapshot holen.
#!/bin/bash
# +++++ Pfad und Name eines zu speichernden Bildes +++++
pictPath='/tmp/Bildname.jpg'
# +++++ Zugriffsdaten der Synology DiskStation +++++
ipDiskStation='xxx.xxx.xxx.xxx:5000' # IP:PORT der DiskStation
account='admin' # Admin-Name auf der DiskStation
password='xxxxxxxxxx' # Admin-Passwort
cameraId='xx&StmKey=xxxxxxxxxxxxxxxxxxxxxxxxx'
# +++++ Snaphshot holen +++++
wget -q --keep-session-cookies --save-cookies cookies.txt -O- "http://"$ipDiskStation"/webapi/entry.cgi?api=SYNO.API.Auth&version=3&method=login&account="$account"&passwd="$password
wget -q --load-cookies cookies.txt -O $pictPath "http://"$ipDiskStation"/webapi/entry.cgi?api=SYNO.SurveillanceStation.Camera&method=GetSnapshot&version=1&cameraId="$cameraId
exit 0
Siehe auch https://www.synology-forum.de/threads/rtsp-stream-als-mjpeg-in-netz-streamen.109971/
Seit dem Funktionsupdate 20H1 ist die oben beschriebene Schaltfläche „Benutzer müssen Benutzernamen und Kennwort eingeben“ nicht mehr vorhanden. Du kannst diese aber mit einem neuen Registryeintrag wieder aktivieren. Ändere hierfür den Wert für „DevicePasswordLessBuildVersion“ unter HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Passwordless\Device auf den Wert „0“. Sollte der Schlüssel bei Dir nicht vorhanden sein, so musst Du diesen als Typ „REG_DWORD“ anlegen.
Windows 10 Autologin per Registry konfigurieren
Das was der oben beschriebene Weg im Hintergrund ausführt, kann man auch manuell per Registry tun. Der folgende Weg hat nur einen „kleinen“ Nachteil: Das Benutzerkennwort wird im Klartext in der Registrierungsdatenbank von Windows hinterlegt, ist also theoretisch für jeden einsehbar. Wenn das kein Problem darstellt, dann brauchst Du lediglich die folgenden Werte in der Registry ändern, bzw. erstellen, sofern diese noch nicht vorhanden sind.
Sometimes we just need a computer with the so-called auto-logon feature. This feature is without a doubt a security risk but on the other hand it is a good way to make computers as simple as possible for all users. Auto-Logon configruation is suitable for Kiosk mode or presentation computers where it should be as simple as possible. In this blog post I will provide a script to configure auto login without having to search the registry for the right keys. Let’s get started.
The Objective
In this part I will show you what happens if you run my script.
That’s it. Cool stuff. Which brings me to the code.
The Code
Before you run the code, check your PowerShell ExecutionPolicy settings. On Windows 10 computers the default setting is Restriced. In order to run the script, you have to change the policy to at least RemoteSigned.
Copy the code below into PowerShell ISE or an editor of your choosing. Run the code and enter username and password. Then restart the computer and check if it works as expected.
12345678910111213141516171819202122232425
### The code below configures Auto-Login on Windows computers ###<#Author: Patrick Gruenauer | Microsoft MVP on PowerShellWeb: https://sid-500.com#>$Username= Read-Host'Enter username for auto-logon (f.e. contoso\user1)'$Pass= Read-Host"Enter password for $Username"$RegistryPath= 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon'Set-ItemProperty$RegistryPath'AutoAdminLogon'-Value"1"-TypeString Set-ItemProperty$RegistryPath'DefaultUsername'-Value"$Username"-typeString Set-ItemProperty$RegistryPath'DefaultPassword'-Value"$Pass"-typeStringWrite-Warning"Auto-Login for $username configured. Please restart computer."$restart= Read-Host'Do you want to restart your computer now for testing auto-logon? (Y/N)'If($restart-eq'Y') {Restart-Computer-Force}
Fine, that’s it for today. See you next time with PowerShell.
Caution: To test this script in Hyper-V, you must disable Enhanced Session mode for the Hyper-V guest.
Mit den Befehl CONTROL Dateiname.CPL können Sie Zuordnungen der Systemsteuerung direkt aufrufen. Damit ist es also möglich, Aufrufe direkt auf den Desktop oder in das Startmenü zu legen.
Nicht für alle Funktionen gibt es aber CPL-Dateien. Einige Funktionen werden durch eine CPL-Datei aufgerufen und durch Angabe einer Nummer hinter der CPL-Datei ausgewählt (z.B. CONTROL SRVMGR.CPL,@1 für Dienste). Zu beachten ist, dass die Zählung bei 0 beginnt.
Hat eine Funktion noch weitere Register, können Sie diese durch Angabe einer weiteren Zahl gleich aktivieren. Wenn Sie z.B. von „Eigenschaften von Eingabehilfen“ das Register „Akustische Signale“ aktivieren möchten, sieht der Aufruf folgendermaßen aus: „CONTROL ACCESS.CPL,@0,2„.
Bei einigen Funktionen erfolgt der Aufruf in folgendem Format: „CONTROL xxx.CPL,,Nummer“.
Hier die Beschreibung der CPL-Dateien. Es kann möglich sein, dass bei Ihnen einige CPL-Dateien nicht installiert sind.
Einige Einstellungen können Sie über Control auch ohne die Angabe einer CPL-Datei öffnen (Spalte „Alternative“).