BootshellcredentialProvider - bringt Linux DES zu Windows
Mit BSCP können Sie Windows direkt in ein Linux -Desktop -Erlebnis mithilfe von Windows 'Native Logon UI und einer Kombination aus Xming & WSL beim Anmeldung booten.




Erste Schritte
Voraussetzungen:
- VCXSRV muss installiert werden. Dies ist eine kostenlose Xming -Alternative, die zufällig stabiler und vorgestellter ist. Es ist auf schokoladigem, ansonsten erhältlich: https://sourceforge.net/projects/vcxsrv/
- Das Microsoft Visual C ++ Neuverteilbare für Visual Studio 2017 muss installiert werden. Hier erhältlich
- Das Windows -Subsystem für Linux, einschließlich der Bash -Umgebung, wird installiert und funktioniert
- Sie haben einen Eindruck davon, welche Linux des Sie erforschen möchten und haben sie über WSL installiert. Weitere Informationen zum Inspiration/ein runnable Skript finden Sie, um es für Sie zu tun. Hinweis: Wenn Sie alles in dieser Datei tun, sollte es funktionieren, dauert jedoch lange dauern.
Installieren und Konfigurieren:
- Laden Sie den Installateur von hier herunter und führen Sie sie aus. Ändern Sie keine der Standardeinstellungen; Die Standardwerte arbeiten.
- Führen Sie den BSCP -Konfigurator aus (eine Abkürzung in Ihrem Startmenü)
- Konfigurieren Sie die Einstellungen wie gewünscht. Beachten Sie, dass die Standardeinstellungen mit der von dem oben genannten Setup Scritpt erstellten Umgebung funktionieren sollten.
- In dem unwahrscheinlichen Fall, dass der BSCP -Konfigurator beim Versuch zum Speichern stürzt, haben Sie eine Berechtigungsausgabe. Versuchen Sie erneut als Administrator. Wenn das nicht funktioniert, müssen Sie sich wahrscheinlich die vollen Steuerungserlebnisse auf
HKLMSOFTWAREMicrosoftWindows NTCurrentVersionWinLogon geben. - Sich anmelden und siehe!
- Wenn Sie es nicht sehen, überprüfen Sie, ob die visuelle C ++ -Revertibutage installiert ist.
Nutzungsnotizen:
- Strg+Alt+Del funktioniert immer noch im Linux DES. So können Sie sich anmelden, den Task -Manager usw. starten.
- Win+R funktioniert nicht, während Explorer nicht als Systemschale ausgeführt wird. Verwenden Sie den Task -Manager (über Strg+Alt+Del), um Windows -Programme zu starten
- Es gibt einen zufälligen Windows Explorer (als Datei -Explorer, nicht Shell) im Vordergrund, wenn der DE startet. Sie können es sicher ignorieren oder schließen.
- Die Deinstallation ist nicht besonders schlau. Sie möchten den Konfigurator verwenden, um die Funktion zuerst zu deaktivieren und dann die Deinstallation auszuführen.
- Sobald Sie dies installiert haben, möchten Sie es als primäre Methode zur Anmeldung verwenden. Es gibt keine Möglichkeit, die Shell -Einstellungen zu aktualisieren, wenn Sie sich über einen anderen Anmeldeinformationsanbieter anmelden (z. B. Pin -Anmeldung oder Windows Hello).
Über das Projekt
Dieses Projekt besteht aus mehreren Komponenten:
- Konfigurator: Freundliche Desktop -App zum Ändern der Konfiguration
- RegProvider: Helfer Library für die Interaktion mit der Registrierung (hier nichts Besonderes)
- Configurableshell: Ersetzt die Windows Explorer -Shell zur Startzeit. Überprüft die Registrierungseinstellungen und lädt die angegebene Desktop -Umgebung (Windows Explorer, XFCE oder was auch immer Sie sonst noch arbeiten können)
- BootshellcredentialProvider: Plugin für Winlogon mit der Schnittstelle "CredentialProvider V2". Diese Komponente zeigt Ihnen die verfügbaren Desktop -Umgebungen und legt die ausgewählten in der Registrierung fest
Risiken, Sicherheit und vollständige Offenlegung
Sie sollten dies aus mehreren Gründen wahrscheinlich nicht auf etwas ähneln, das einem Produktions-/Missionskritischen System ähnelt:
- Sie führen meinen nicht verwalteten C ++ - Code in Winlogon aus. Wenn mein Code abstürzt, stürzt Winlogon ab; Sie können Ihren PC nicht verwenden, wenn dies geschieht.
- Mein nicht verwalteter Code bearbeitet Ihr Windows -Passwort. Dies wird von Microsofts Beispiel/Vorlage ausgeliehen. Skepsis wird ermutigt.
- Komponenten dieses Systems stützen sich auf die Schwächung der Sicherheit verschiedener Systemregistrierungsschlüssel. Diese sind entscheidend für die Fähigkeit von Windows, ein kohärentes Desktoperlebnis zu präsentieren.
- Dies ist mein zweites ernstes C ++ - Projekt aller Zeiten und zuerst mit der Win32 -API. Viel Glück.
Beitrag & Feedback
Ich würde mich über jedes (konstruktive) Feedback zu diesem Projekt freuen und werden natürlich PRs akzeptieren. Fühlen Sie sich frei, Probleme in diesem Projekt einzureichen, wenn Sie etwas teilen müssen.
Lizenzierung
Der größte Teil dieses Projekts wird unter der MIT -Lizenz veröffentlicht. Die Anmeldeinformationsanbieterkomponente wird unter der MS-LPL-Lizenz veröffentlicht, da sie aus dem SampleV2CredentialProvider-Projekt abgeleitet wird.