Der Passwort Manager KeepassXC
Mit dem Passwort Manager KeepassXC können beliebig viele Passwörter zusammen mit
zusätzlichen Informationen für Anwendungen und Webseiten gespeichert werden.
Geht es Dir auch so? Spätestens wenn man mit mehr als 3 Passwörtern umgehen
muss, tendiert man dazu, sich das Leben dadurch einfach zu machen, dass man z.B.
für verschiedene Dienste dasselbe Passwort verwendet oder gar die Passwörter auf
einem Blatt Papier aufschreibt. Beides kann zu schwerwiegenden
Sicherheitsproblemen führen. Diese Sicherheitsprobleme müssen nicht sein!
Schütze Dich und andere, indem Du ein vertrauenswürdiges
Passwort-Verwaltungsprogramm verwenden! Das ist ein Programm, das viele
verschiedene Passwörter und die zugehörigen Nutzer-Accounts in einer
verschlüsselten Datenbank speichert. Für den Zugang benötigt man nur ein
Masterpasswort und kann leicht verschiedene Passwörter nutzen und hat auch
selten benutzte Passworte immer parat.
KeePassXC – Einstieg in den Desktop Passwortmanager KeePassXC ist
plattformübergreifend und kann unter Windows wie auch Linux, hier z.B. Ubuntu,
genutzt werden. Das Programm kann unter der Adresse
https://KeePassxc.org/download/ heruntergeladen werden. Eine
sehr ausführliche Anleitung für KeePassXC, in der alle Funktionen und Details
beschrieben werden, findest Du unter
https://keepassxc.org/docs/KeePassXC_GettingStarted.html#_welcome.
Einrichtung von KeePassXC
-
Installiere die für Dein Betriebssystem richtige Version der KeePass-Software.
Alternativ ist auch die Nutzung einer Portable-Version möglich, welche Du
nicht installieren musst.
Neue Datenbank erstellen
- Öffne KeePass.
-
Klicke in der Leiste oben auf „Datenbank“ und dann
„Neue Datenbank...“.
-
Gebe Deiner Datenbank einen Namen und eine Beschreibung (optional) und klicke
auf „Weiter“.
-
Übernehme die Standardeinstellungen für die Verschlüsselung oder wähle eine
von Dir gewünschte Einstellungen aus und klicke auf „Weiter“.
-
Gebe Dein gewünschtes Passwort in beiden Feldern ein und klicke auf
„Fertig“. Achte auf ein sicheres Passwort, dass Du Dir merken
kannst. Die Sicherheit der Passwortdatenbank hängt wesentlich davon ab, wie
sicher Dein selbst gewähltes Passwort für die Datenbankdatei selbst ist. Denn
wenn jemand auf die Datenbank unbefugt zugreifen will, so hat der Angreifende
beliebig viele Versuche, das Passwort zu knacken. Verwende also bitte für die
Datenbank-Datei selbst ein besonders langes und sicheres Passwort (mindestens
20 Zeichen, gerne auch noch länger) und schreibe dieses Passwort zur
Sicherheit auch auf und verwahre diese Papierkopie an einem sicheren Ort.
-
Speichere die Datei in einem sicheren Ordner.
Eine Datenbank öffnen
-
Wähle in der Leiste oben „Datenbank“ und dann
„Datenbank öffnen“.
-
Gebe Dein Passwort ein und klicke auf „Öffnen“.
Eintrag zur Datenbank hinzufügen
-
Klicke in der Leiste oben auf „Einträge“ und dann auf
„Neuer Eintrag“.
-
Gebe folgende Daten ein: Titel: Gebe hier einen eindeutigen Titel ein,
vorzugsweise den genauen Titel der Anwendung/Webseite. Benutzername: gebe
Deinen Benutzer:innennamen korrekt ein. Passwort: gebe das dazugehörige
Passwort korrekt ein. URL: wenn es sich bei diesem Eintrag um die Anmeldedaten
für eine Webseite handelt, gebe hier die genaue Web-Adresse ein. Notizen
(optional): hier kannst Du Notizen für Sich selbst hinzufügen.
-
Klicke auf „Ok“.
Nutzen gespeicherter Passwörter
-
Finde in der Datenbank den entsprechenden Eintrag.
-
Kopiere mit einem Doppelklick darauf das Passwort.
-
Du kannst dieses jetzt bei der Anmeldung auf einer Webseite/App mit einem
Rechtsklick oder durch die Tastenkombination (Strg + V) einfügen.
KeePassXC Browser Extension
Du kannst mit der KeePassXC-Browser-Extension Anmeldedaten automatisch
ausfüllen lassen!
-
Installiere dafür die für Deinen Browser passende Version der Extension.
-
Gehe unter „Tools“ zu „Einstellungen“ und
dann zu „Browser-Integration“. Setze das Häkchen bei
„Enable Browser Integration“. Wähle den Browser aus, in dem
Du die Extension installiert haben.
-
Nachdem Du Deine Datenbank geöffnet hast, starte den Webbrowser neu.
-
Klicke in dem Browser auf das KeePassXC-Extension-Icon.
-
Es öffnet sich ein neues Fenster. Klicke auf „Verbinden“.
-
Benenne die Verbindung zwischen diesem Browser und der Datenbank eindeutig,
z.B. „firefox-desktop“. Bestätige mit
„Speichern und Zugang erlauben“.
-
Wenn Du eine URL besuchst, für die Du die Anmeldedaten in der geöffneten
KeePassXC-Datenbank gespeichert hast, wirst Du möglicherweise aufgefordert,
die KeePassXC-Browser-Extension für die Webseite zu erlauben. Setze auf der
Liste das Häkchen beim richtigen Eintrag ein und bestätige mit
„Auswahl erlauben“.
-
In der Anmeldemaske der Webseite wird Dir dann rechts das KeePassXC-Icon
gezeigt. Klicke darauf, um die Anmeldefelder mit den gespeicherten Daten
auszufüllen. Solltest Du für die gleiche URL mehrere Anmeldeoptionen
gespeichert haben, siehst Du ein Drop-down-Menü, aus dem Du auswählen kannst.
Zusätzlich oder alternativ zu einem Masterpasswort kannst Du Deine Datenbanken
in KeePassXC auch durch eine Schlüsseldatei schützen. Detaillierte Informationen
dazu findest Du auf der Webseite von KeePassXC.
Mein Raspberry Pi
Der Raspberry Pi ist ein kleiner Einplatinencomputer mit ARM11-Prozessor. In
Linux Kreisen sorgt die scheckkartengroße Platine schon seit einiger Zeit für
Aufsehen und ist mit knapp 40 Euro recht erschwinglich. Eigentlich wurde er
entwickelt und hergestellt, um bei Kindern die Freude am Programmieren zu
wecken. Zur besseren Einschätzung der Leistung des Raspberry Pi, erst mal ein
paar Technische Eigenschaften der Version B:
- Broadcom BCM2835 700 MHz ARM1176JZFS-Prozessor
- 512 MB RAM
- SD-/SDHC-Kartenslot (dienst als Laufwerk für das System)
- 10/100 BaseT-Ethernet-Buchse (Modell B)
- HDMI-Videobuchse
- RCA Composite Video-Buchse
- 2x USB 2.0-Buchse (Modell B), 1x USB 2.0-Buchse (Modell A)
- Stromversorgung über microUSB-Buchse
- 3,5-mm-Jack für Audioausgang
- Stiftleiste für GPIO
- Platz für Stiftleiste zum Anschluss einer Kamera
- Größe: 85,6 x 53,98 x 17 mm
Als Betriebssystem, für den Raspberry Pi, habe ich eine ARM Version vom
Debian-Derivat Raspbian “wheezy” installiert. Wie ich das Linux-System
installiert habe, wird weiter unten beschrieben. Die Verwendungszwecke für den
Winzling sind natürlich vielfältig, ich denke darüber nach, ob ich mein Zuhause
damit etwas mehr automatisieren kann oder den “kleinen Linux Zwerg” als eine Art
Datenserver einzusetzen und alle meine mobilen und stationären Geräte damit zu
verbinden. Darüber könnte ich dann auch meinen Drucker als Netzwerkdrucker
betreiben. Natürlich habe ich noch viele andere Ideen in meinem Kopf, man könnte
z.B. die Gartenbewässerung automatisch steuern oder das Garagentor mit Siri
öffnen. Anfangen werde ich mit einem kleinen Projekt um ein paar Hardwarenahe
Programme zu schreiben. Interessant ist hier natürlich die Hardwareschnittstelle
über die GPIO-Ports.
Anleitungen
-
Die Linux Installation
-
Wlan konfigurieren
-
Installieren der WiringPi Bibliothek
Projekte
-
Eine LED mittels GPIO-Pin ansteuern
Die Linux Installation
Raspbian-Image auf SD-Karte installieren
Hier beschreibe ich die Linux Installation, sowie die notwendige Konfiguration,
nach dem ersten Bootvorgang des Raspberry PI. Ich habe mich für die Raspbian
Distribution von Debian entschieden. Raspbian basiert auf Debian "wheezy" und
wurde speziell für die Raspberry Pi Hardware optimiert. Das Raspbian Image wird
auf eine SD-Karte mit mindestens 2GB Speicherkapazität installiert.
Raspbian herunterladen.
Das Raspbian Image kann über den folgenden Link geladen werden:
Nach erfolgreichem Download des ZIP-Archives sollte überprüft werden, ob es
fehlerfrei und vollständig übertragen wurde.
Das Image auf die SD-Karte schreiben.
Die Installation von Raspbian unter Windows ist sehr einfach: Man benötigt dazu
das Programm: Win32DiskImager.
- Image entpacken
- Win32DiskImager starten
-
Mit einem Klick auf das Ordnersymbol öffnen wir den Explorer und suchen unser
Image
- Zielquelle wählen (Laufwerksbuchstabe von dem SD Card-Reader/Writer)
- Mit "Write" Schreibvorgang starten
-
Den Win32DiskImager beenden und die Speicherkarte aus dem Card Reader
entnehmen.
Unter Linux ist es auch sehr einfach:
- Image entpacken
- Mit dem Kommando df -h nachsehen welche Discs gemountet sind
- SD Karte in Ihren SD Card-Reader/Writer einstecken
-
erneut mit df -h nachsehen welche Discs gemountet sind
Die neu hinzu gekommene Disc ist ihre SD Karte.
-
Kommando als root user eingeben: unmount /dev/sdd1 /* Kann auch anders heißen
Das unmounten ist notwendig damit Daten mit nachfolgendem Kommando auf die
Disc geschrieben werden können.
-
Kommando als root user eingeben:
dd bs=1M if=~/<ordner>/*.img of=/dev/sdd Das dd Kommando hat keine
Fortschrittsanzeige und es kann ein wenig dauern.
-
Kommando eingeben: sync Damit alle Daten sicher auf die SD Karte geschrieben
wurden und die SD Karte entnommen werden kann.
Das Schreiben des Images für MAC-User geht am besten so:
- Image entpacken
- Starten sie df -h vom Terminal
- SD Karte in Ihren SD Card-Reader/Writer einstecken
-
erneut mit df -h nachsehen welche Discs gemountet sind
Die neu hinzu gekommene Disc z.B. /dev/disk1s1 ist ihre SD Karte.
-
Unmounten dieser Disc damit ein überschreiben möglich ist. Kommando: diskutil
unmount /dev/disk1s1
-
Den Disk Namen für das raw device ermitteln: /dev/disk1s1 --> /dev/rdisk1
(aus disk wird rdisk, s1 wird weggelassen)
- Kommando: sudo dd bs=1m if=~/Downloads//*.img of=/dev/rdisk1
-
Kommando eingeben:
diskutil eject /dev/rdisk1
Der erste Start.
Nun die vorbereitete SD Karte in den Raspberry Pi stecken. Hiernach die Tastatur
und Maus mit den USB-Anschlüssen des Raspberry Pi verbinden. Jetzt fehlt noch
der Monitor. Entweder schließen wir ihn über den HDMI-Anschluss an ein
HDMI-fähiges Wiedergabegerät oder wir benutzen den Composite Videoausgang. Wenn
Sie den Raspberry Pi mit einem LAN Kabel an ihr Netzwerk angeschlossen haben,
dann wird er versuchen über DHCP eine IP Adresse zu bekommen. Hat der Raspberry
Pi Verbindung mit dem Internet, besteht schon beim ersten Start die Möglichkeit
das Betriebssystem zu aktualisieren. Als letztes verbinden wir das Netzteil mit
der micro-USB_Buchse. Wenn alles funktioniert blinken die LEDs auf der
Leiterplatte und der Bildschirm füllt sich mit Meldungen. Nach einer Weile
erscheint dann das Konfigurationsmenü "Raspi-config" für die Ersteinrichtung. Es
hilft dabei, die wichtigsten Einstellungen des Systems vorzunehmen. Das Menü
wird mit der Tastatur bedient. Mit der Pfeil-unten-Taste erreicht man den
nächsten Menüpunkt und mit der Pfeil-oben-Taste gelangt zum vorhergehenden Punkt
zurück. Die Select-Schaltfläche selektiert man durch Drücken der Tabulator- oder
Pfeil-rechts-Taste. Mit der Leer- oder Returntaste wird der Menüpunkt zu
aktiviert.
Wir fangen mit dem Punkt "expand_rootfs" an. Das Image des Betriebssystems ist
es für eine SD-Karte mit 2 GB Speicher ausgelegt. Benutzt man eine größere
Speicherkarte, kann der restliche verfügbare Speicherplatz der Systempartition
hinzugefügt werden. Der eigentliche Prozess dieser Anpassung läuft beim nächsten
Hochfahren ab.
Über den Menüpunkt "configure_keyboard" kann man die Tastaturbelegung auswählen.
In den meisten Fällen reicht es aus, als Tastatur German und dann Generic
105-key (Intl) PC zu wählen.
Über den Punkt "change_locale" bestimmen wir Zeichensatz und Sprache des
Systems. Wir setzen die Locale auf "de_DE.UTF-8 UTF-8" indem wir den Punkt mit
der Leertaste markieren. Durch einem Druck auf die TAB-Taste gelangen wir auf
die Schaltfläche "Ok" und wählen nun nochmal "de_DE.UTF-8" aus. Es dauert ein
wenig, bis die Einstellungen gändert sind.
Mit "change_timezone" wählen wir die richtige Zeitzone. Wir nehmen Europa
(Europe) Und in Europa natürlich Berlin.
"ssh" bietet die Möglichkeit den Raspberry Pi von einem anderen Rechner aus zu
bedienen. Wir sollten diese Möglichkeit einschalten.
Mit der Schaltfläche "finish" verlassen wir das Hauptmenü. Beim erneuten Start
des Raspberry Pi wird "Raspi-config" nicht automatisch mehr ausgeführt. Es kann
aber im Terminal immer wie folgt aufrufen werden:
pi@raspberry:~$ sudo raspi-config
Nun sollte erst einmal das System auf den neusten Stand gebracht werden. Durch
die Eingabe von:
pi@raspberry:~$ sudo apt-get update && sudo apt-get upgrade
wird die Datenbank des Paketmanagers auf den neuesten Stand gebracht und
veraltete Pakete werden durch neue ersetzt. Es empfiehlt sich diesen Schritt, in
regelmäßigen Abständen, durchzuführen.
Wlan konfigurieren
Nun möchte ich den Raspberry PI über Wlan in das Netzwerk einbinden. Hierfür
verwende ich einen EDIMAX EW-7811UN USB-Wlan Adapter. Hierfür lasse ich die
kabelgebundene Netzwerkverbindung bestehen, um mich per SSH mit dem Raspberry Pi
zu verbinden.
Die Installation
-
Zuerst wird der USB-Adapter an die USB-Buchse des Raspberry Pis angesteckt und
danach wir fahren den Pi hoch.
-
Nach dem Einloggen geben wir den Befehl
pi@raspberry:~$ sudo lsusb
ein, welcher alle am USB angeschlossenen Geräte auflistet. Der letzte Eintrag
ist der Wlan USB-Stick. Er zeigt, dass hier der Edimax EW-7811UN-Adapter mit
einem RTL8188CUS-Chipsatz von Realtek angeschlossen ist.
-
Der Edimax EW-7811UN-Adapter sollte vom Kernel automatisch erkannt und das
entsprechende Treibermodul geladen werden. Die Präsenz des passenden
Gerätetreibers wird durch Eingabe von lsmod festgestellt. Das Kernel-Modul
heißt 8192cu und nach diesem wird mit folgendem Kommando gesucht.
pi@raspberry:~$ sudo lsmod | grep -i 8192cu
-
Bei geladenem Modul sollte der USB-Adapter beim Aufruf von iwconfig als
WLAN-Schnittstelle aufgeführt werden.
-
Um nun eine Verbindung mit unserem WLAN herzustellen, müssen wir die Datei
/etc/network/interfaces editieren mit:
pi@raspberry:~$ sudo nano /etc/network/interfaces
Hier suchen wir etwaige Einträge die mit der Bezeichnung "wlan0" bezeichnet
sind und passen den Inhalt an.
auto lo
iface lo inet loopback
iface eth0 inet dhcp
auto wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-ap-scan 1
wpa-scan-ssid 1
wpa-ssid "WLAN-NAME"
wpa-psk "WLAN-SCHLÜSSEL"
-
Die IP-Nummer wird durch diese Einstellungen automatisch zugewiesen. Den
Raspberry PI mit
pi@raspberry:~$ sudo poweroff
ausschalten und die kabelgebundene Netzwerkverbindung trennen. Beim Neu-Start
wird automatisch die Wlan Verbindung hergestellt.
Installieren der WiringPi Bibliothek
Für die Ansteuerung der GPIOs, wird die Bibliothek WiringPi gebraucht, sie kann
in C, C++, Python, Java und PHP eingebunden werden. Voraussetzung für eine
Installation der WiringPi Bibliothek ist das Paket git-core. Git ist ein
dezentrales Versionsverwaltungssystem, es unterscheidet sich als dezentrales
System von den traditionellen Programmen wie CVS und Subversion. Wir testen das
Vorhandensein von git-core durch die Eingabe von:
pi@raspberry:~$ sudo git -version
Erhalten wir eine Meldung dass das Paket nicht vorhanden ist, installieren wir
es durch:
pi@raspberry:~$ sudo apt-get install git-core
Jetzt sind die Voraussetzungen für eine Installation der WiringPi Bibliothek
erfüllt. Wir laden den Quellcode von GitHub herunter und kompilieren ihn
anschließend. Dies erledigen wir durch die folgenden drei Punkte:
-
Wir clonen den Quellcode auf den Raspberry Pi.
pi@raspberry:~$ sudo git clone git://git.drogon.net/wiringPi
-
Und wechseln in das neu erstellte Verzeichnis wiringPi.
pi@raspberry:~$ cd wiringPi
-
Abschließend kompilieren und installieren wir wiringPi.
pi@raspberry:~$ sudo ./build
WiringPi ist nun erfolgreich installiert, falls alle Schritte ohne Fehler
durchgeführt werden.
Eine LED mittels GPIO-Pin ansteuern
Der Raspberry Pi bietet einige GPIO's (General Purpose Input/Output), die über
die Steckerleiste 'P1' nach außen geführt sind. Die GPIO Pins sind als 3,3V
Signale ausgeführt und nicht TTL kompatibel. Dabei übernehmen bestimmte Pins
neben der einfachen Ansteuerung auch bestimmte Funktionen wie die Kommunikation
per I2C, UART oder SPI.
P1: GPIO-Belegung:
wiringPi
Pin
|
BCM
GPIO
|
Name |
Pinleiste |
Name |
BCM
GPIO
|
wiringPi
Pin
|
| – |
– |
3.3v
|
1 | 2 |
5v
|
– |
– |
| 8 |
R1:0/R2:2 |
SDA0
|
3 | 4 |
5v
|
– |
– |
| 9 |
R1:1/R2:3 |
SCL0
|
5 | 6 |
0v
|
– |
– |
| 7 |
4 |
GPIO7
|
7 | 8 |
TxD
|
14 |
15 |
| – |
– |
0v
|
9 | 10 |
RxD
|
15 |
16 |
| 0 |
17 |
GPIO0
|
11 | 12 |
GPIO1
|
18 |
1 |
| 2 |
R1:21/R2:27 |
GPIO2
|
13 | 14 |
0v
|
– |
– |
| 3 |
22 |
GPIO3
|
15 | 16 |
GPIO4
|
23 |
4 |
| – |
– |
3.3v
|
17 | 18 |
GPIO5
|
24 |
5 |
| 12 |
10 |
MOSI
|
19 | 20 |
0v
|
– |
– |
| 13 |
9 |
MISO
|
21 | 22 |
GPIO6
|
25 |
6 |
| 14 |
11 |
SCLK
|
23 | 24 |
CE0
|
8 |
10 |
| – |
– |
0v
|
25 | 26 |
CE1
|
7 |
11 |
wiringPi
Pin
|
BCM
GPIO
|
Name |
Pinleiste |
Name |
BCM
GPIO
|
wiringPi
Pin
|
P5: Erweiterungsanschluss nur auf Revision 2 Leiterplatten:
| wiringPi Pin |
BCM GPIO |
Name |
Pinleiste |
Name |
BCM GPIO |
wiringPi Pin |
| – |
– |
5v
|
1 | 2 |
3.3v
|
– |
– |
| 17 |
28 |
GPIO8
|
3 | 4 |
GPIO9
|
29 |
18 |
| 19 |
30 |
GPIO10
|
5 | 6 |
GPIO11
|
31 |
20 |
| – |
– |
0v
|
7 | 8 |
0v
|
– |
– |
wiringPi
Pin
|
BCM
GPIO
|
Name |
Pinleiste |
Name |
BCM
GPIO
|
wiringPi
Pin
|
Der Raspberry Pi dient als Basis für einen minimalen Versuchsaufbau, der zum
Ziel hat eine LED blinken zu lassen, sozusagen ein blinkendes "Hello World".
Der ganze Versuchsaufbau eignet sich gut als Einstiegsprojekt, da es die
Grundlagen der Hard- und Software behandelt. Ich habe eine LED und einen 330
Ohm Widerstand mit den Pin 11 (= GPIO 17 = WiringPi Pin 0) und den Pin 14
(Masse) verbunden.
Das erste Programm
Es wird ein möglichst einfaches aber garantiert funktionierendes Programm
benötigt, welches in den Editor Nano eingegeben oder hinein kopiert wird.
pi@raspberry:~$ sudo nano blink.c
Der Quellcode:
#include <wiringP.h>
int main () {
// WiringPi-Api
wiringPiSetup () ;
// Schalte GPIO 17 (=WiringPi Pin 0) auf Ausgang
// Achtung: WiringPi Layout anwenden (siehe Tabelle oben)
pinMode (0, OUTPUT) ;
// Dauerschleife
for (;;)
{
// LED an
digitalWrite (0, HIGH) ;
// Warte 500 ms
delay (500) ;
// LED aus
digitalWrite (0, LOW) ;
// Warte 500 ms
delay (500) ;
}
}
Das kleine C-Programm lässt eine LED an einem Raspberry Pi blinken. Die LED wird
alle 500 ms an bzw. ausgeschaltet. Die Bibliothek wiringPi.h muss installiert
sein.
Nun wird das Skript kompiliert:
pi@raspberry:~$ gcc -Wall -o blink blink.c -lwiringPi
und mit Root-Rechten gestartet:
pi@raspberry:~$ sudo ./blink