diff --git a/js/customElements/inline-code.js b/js/customElements/inline-code.js new file mode 100644 index 0000000000000000000000000000000000000000..1beb51fb95ee99e96db10995be63e41eebcc4c3c --- /dev/null +++ b/js/customElements/inline-code.js @@ -0,0 +1,8 @@ +class InlineCode extends HTMLElement { + constructor() { + super(); + this.innerHTML = "<code class=\"language-text\">" + this.innerHTML + "</code>"; + } +} + +customElements.define("jl-code", InlineCode); diff --git a/js/script.js b/js/script.js index cd0b46684e64d4bb7ceb0325a87c36c295c42ac4..0eb3ebfbebf469daef8ff4f38ea1913f853dd749 100644 --- a/js/script.js +++ b/js/script.js @@ -19,4 +19,5 @@ require("./customElements/footer"); require("./customElements/ebkBanner"); require("./customElements/sellingTable"); require("./customElements/skills"); -require("./customElements/pwgen"); \ No newline at end of file +require("./customElements/pwgen"); +require("./customElements/inline-code"); \ No newline at end of file diff --git a/public/API/mainMenu.json b/public/API/mainMenu.json index 5cc9635f6faace143d767d38b6def718ff09e3bd..91f937450f9b63e027f1b4d9108010095f93d1d1 100644 --- a/public/API/mainMenu.json +++ b/public/API/mainMenu.json @@ -102,6 +102,11 @@ "name": "Traefik 2 Reverse Proxy", "url": "/anleitungen/traefik.html", "type": "link" + }, + { + "name": "Vaultwarden Passwort Manager", + "url": "/anleitungen/vaultwarden.html", + "type": "link" } ] }, diff --git a/public/anleitungen/vaultwarden.html b/public/anleitungen/vaultwarden.html new file mode 100644 index 0000000000000000000000000000000000000000..a55261d17558534b0f9be7502247d27d111d7539 --- /dev/null +++ b/public/anleitungen/vaultwarden.html @@ -0,0 +1,76 @@ +<!DOCTYPE html> +<html lang="de"> + +<head> + <meta charset="UTF-8"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <link href="/css/style.css" rel="stylesheet"> + <title></title> +</head> + +<body> + <jl-header data-title="Vaultwarden Passwortmanager"></jl-header> + <div id="content"> + <p> + Vaultwarden ist ein Passwort Manager, welcher das Frontend und die Anwendungen von Bitwarden unterstützt, + aber durch die Implementation in Rust schneller und Resourcensparender als der originale Server ist. + Zusätzlich bietet Vaultwarden alle Premium Features kostenlos. Für die Installation setze ich Vorraus, dass + auf dem System bereits ein Reverse Proxy wie <a href="traefik.html">Traefik 2</a> existiert und Docker mit + Docker Compose installiert ist. + </p> + <p> + Als erstes muss ein neuer Ordner auf dem Host erstellt werden. In diesem muss als erstes eine <jl-code> + docker-compose.yml</jl-code> Datei mit dem Inhalt unten erstellt werden. + <pre> +<code class="language-yaml">version: "3.2" +services: + bitwarden: + image: vaultwarden/server:latest + restart: always + ports: + - 8080:80 + - 3012:3012 + environment: + - ADMIN_TOKEN= + - DOMAIN=https://bitwarden.jonasled-test.xyz + - WEBSOCKET_ENABLED=true + volumes: + - ./data:/data</code> +</pre> + In der Datei muss noch der <jl-code>ADMIN_TOKEN</jl-code> auf ein sicheres Passwort aus einem <a + href="/passwordgen.html">Passwortgenerator</a> ersetzt werden. Dieses Password wird benötigt um die Admin + Oberfläsche zu erreichen. Da über die Oberfläche auch zum Beispiel Nutzerkonten gelöscht werden können sollte es + wirklich sehr sicher sein. Zusätzlich muss auch der URL angegeben werden, über den der Passwortmanager später + von außen erreichbar ist. + </p> + <p> + Als nächstes muss der Reverse Proxy eingerichtet werden. Dazu muss Port 8080 als root Pfad (also /) und auf + <jl-code>/notifications/hub</jl-code> port 3012 freigegeben werden. Traefik Nutzer können die Docker Compose + welche <a href="https://gitlab.jonasled.de/-/snippets/8">hier</a> zu finden ist anstelle der obigen + verwenden und dort die Hosts anpassen. + </p> + <p> + Nachdem nun die Konfiguration abgeschlossen ist kann der Container mit dem Befehl <jl-code>docker-compose up + </jl-code> das erste mal gestartet werden. Wenn der Container läuft und alles funktioniert kann der + Container wieder mit strg und c gestoppt werden und danach mit <jl-code>docker-compose up -d</jl-code> im + Hintergrund gestartet werden. + </p> + <p> + Als erstes sollte das Admin Interface aufgerufen werden und ein SMTP Server für den E-Mail versand + eingestellt werden. Um das Interface zu erreichen muss an den URL <jl-code>/admin</jl-code> angehängt und + dass Passwort aus der <jl-code>docker-compose.yml</jl-code> angegeben werden. + </p> + <p> + Nun sollte die Konfiguration vom Bitwarden / Vaultwarden abgeschlossen sein. Wenn man jetzt die URL aufruft + kann man einen neuen Account anlegen. Im Client muss man zuerst in die Einstellungen gehen und dann dort den + URL zum Server angeben. Ganz wichtig ist hierbei das vorgestellte HTTPS. Anschließend funktioniert der Login + auf der Startseite mit dem gleichen Benutzer, wie auch im Webclient. + </p> + <img src="/API/getFile.php?filename=img/bitwarden_browser_1.jpg"> + <img src="/API/getFile.php?filename=img/bitwarden_browser_2.jpg"> + </div> + <jl-footer></jl-footer> + <script src="/js/script.js"></script> +</body> + +</html> \ No newline at end of file