Algemeen

Automatisch PGP keys importeren vanuit maildrop

Het kan soms handig zijn om automatisch PGP-keys te importeren op het moment dat je ze binnenkrijgt. Als je bijvoorbeeld GPG in OTRS aangezet hebt, is het lastig om iedere keer op een shell op de betreffende server in te loggen om de key te downloaden.

Door middel van maildrop (of procmail, maar de laatste versie daarvan is uit 2001) kun je op het moment van afleveren proberen die keys automatisch te downloaden. Je kunt dat met onderstaand script doen. Je moet hier uiteraard wel een mailserver hebben die maildrop ondersteunt.

if (/.*BEGIN PGP SIGNATURE.*/:b)
{
    foreach /^From: (.*)$/
    {  
        foreach (getaddr $MATCH) =~ /.+/
        {  
            flock "gnupg.lock" {
                `grep -iqx "$MATCH" senders.txt 2>/dev/null || { 
                echo "$MATCH" >> senders.txt ; 
                SENDERKEY=$(gpg --batch --no-tty --search-key "$MATCH"  | tr 'n' ' ' 
                    | sed -e 's/.*key ([0-9A-F]+).*/1/'); 
                gpg --recv-keys --batch --no-tty "$SENDERKEY"; 
                exit 1; 
                }`
            }
        }
    }
}