Dieser Artikel ist ein Step-by-step Howto für die Einrichtung von dav-sync mit aktivierter Verschlüsselung.
1. Repository konfigurieren
Zuerst erstellen wir ein Repository mit Hilfe des add-repository
Befehls von dav. Wichtig ist, dass wir dabei auch Benutzername und Passwort angeben, da dav-sync Authentifizierungsinformationen benötigt und diese nicht zur Laufzeit vom Benutzer abfragt.
$ dav add-repository
Each repository must have an unique name.
name: myfirstrepo
Specify the repository base url.
url: https://mynas.local/webdav
User for HTTP authentication.
user (optional): mywebuser
password (optional):
2. Key erstellen und konfigurieren
Als nächstes benötigt man einen AES-Key. Diesen erstellen wir aus zufälligen Daten mit Hilfe von dd:
mkdir -p ~/.dav/keys
dd if=/dev/random of=~.dav/keys/mykey bs=32 count=1
Dann muss in der Datei $HOME/.dav/config.xml
nur noch ein Eintrag für den Key hinzugefügt werden.
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
...
<key>
<name>mykey</name>
<type>aes256</type>
<file>keys/mykey</file>
</key>
</configuration>
3. Verschlüsselung für das Repository aktivieren
Wärend man mit dem Tool dav die Verschlüsselung per Kommandozeilenoption an- und abschalten kann, benutzt dav-sync immer die Default-Einstellungen des Repositories. Daher muss für das Repository die Verschlüsselung standardmäßig aktiviert sein und ein Default-Key muss angegeben werden. Hierfür fügt man innerhalb des <repository>
-Elements das <full-encryption>
und <default-key>
-Element hinzu:
<repository>
...
<full-encryption>true</full-encryption>
<default-key>mykey</default-key>
</repository>
3. Sync-Directory erstellen
Letztendlich benötigt man noch die eigentliche Konfiguriation für dav-sync. Mit dem Befehl add-directory
von dav-sync erstellen wir die Konfiguration für ein Sync-Directory. Dabei gibt man dann das Repository mit aktivierter Verschlüsselung an:
$ dav-sync add-directory
Each sync directory must have an unique name.
name: mysyncdir
Enter local directory path.
path: $HOME/important_files
Specify webdav repository.
0) myfirstrepo
1) anotherrepo
repository: 0
Enter collection relative to the repository base url.
collection (default: /): /important_files
Fertig. Für den Benutzer ändert sich an der Bedienung von dav-sync dann nichts. Man kann ganz wie gewohnt mit pull/push seine Dateien synchronisieren, nur dass sie dann verschlüsselt auf dem Server liegen.
Kommentare