PGP ist eine asymmetrische Verschlüsselungssoftware, welche sogenannte Key-Server einsetzt, um die öffentlichen Schlüssel aller Beteiligten anderen zugänglich zu machen. Das Problem an diesem Verfahren ist, dass ein einmal veröffentlichter PGP-Schlüssel nie mehr gelöscht werden kann, er kann lediglich zurückgezogen werden.

    Um nun einen eigenen Key-Server zu betreiben, gibt es zwei gute Gründe. Entweder man möchte als Unternehmen seine PGP-Schlüssel nicht öffentlich zugänglich machen, da die Verschlüsselung nur intern verwendet wird, oder aber man möchte mit PGP-Schlüssel experimentieren und sie in diesem Rahmen auch veröffentlichen. Dafür bietet es sich an, dies nicht über öffentlichen Server zu tun, sondern statt dessen einen eigenen zu betreiben, dessen Key-DB man zur Not auch selber zurücksetzten kann.

    Installation des PGP-Key-Servers

    Die Installation eines PGP Key-Servers ist relativ einfach, da Debian Pakete für den SKS-Key-Server bereits im Repository mitführt.

    apt-get install sks

    Damit sich ein PGP-Key-Server mit anderen Servern synchronisiert, muss dieser auf den entsprechenden Systemen zum peering eingerichtet werden. Darüber hinaus muss der eigene Server ebenfalls seine Gegenstellen zum Synchronisieren kennen. Da der gerade installierte Server noch in keinem Pool registiert ist, kann er auch keine Schlüssel übertragen. Um dennoch ausgehende Sync-Anfrange zu unterbinden, müssen zwei Dateien geleert werden.

    > /etc/sks/membership
    > /etc/sks/mailsync
    
    echo disable_mailsync: 1 >> /etc/sks/sksconf

    Anschließend den Server aktivieren

    sed 's/initstart=no/initstart=yes/g' -i /etc/default/sks

    Und die Key-DB unter /var/lib/sks erstellen lassen.

    su - debian-sks -c '/usr/sbin/sks build'

    Nun den Server starten und prüfen, ob er läuft

    /etc/init.d/sks restart
    
    lsof -i:11371
    COMMAND  PID       USER   FD   TYPE    DEVICE SIZE/OFF NODE NAME
    sks     1477 debian-sks    5u  IPv4 114459450      0t0  TCP *:hkp (LISTEN)

    Installation eines Webinterfaces

    Bei der Installation des sks-Paktes wurde auch bereits eine Beispieldatei für ein Webinterface mit installiert. Diese liegt unter /usr/share/doc/sks/sampleWeb/OpenPKG/index.html. Um diese zu verwenden, sind zwei Schritte notwendig:

    1. Die Datei in das Verzeichnis des Webservers kopieren.
    2. In der Datei die zwei Einträge action="/pks/ durch action="http://<domain.tld>:11371/pks zu ersetzen.

    Alternativ habe ich hier noch ein Beispiel für ein Webinterface gefunden.

    Zurücksetzen der Key-Datenbank

    /etc/init.d/sks stop
    rm -fr /var/lib/sks/DB
    su debian-sks -c '/usr/sbin/sks build'
    /etc/init.d/sks start

     

    Leave A Reply