KMail/PGP MIME

From KDE UserBase Wiki
Revision as of 10:22, 22 January 2011 by Claus chr (talk | contribs) (Importing a new version from external source)

Opsætning af signerede mails ved hjælp af GPG i KMail

af Fajar Priyanto, 2004

Lav din nøgle, lav en backup og udgiv den

1. Du får brug for programmet gpg. Det er allerede installeret som standard.

2. Lav din egen nøgle (skriv dette som dig selv, ikke som root):

gpg --gen-key

Følg instruktionerne, det er meget klart og let.


3. Tjek, at nøglen blev lavet:

gpg --list-key

Du vil se noget i retning af dette med dine egne legitimationsdata.

:pub 1024D/85EEC6A5 2004-03-15 Fajar Priyanto (Knowledge is power! http://linux.arinet.org) sub 1024g/BBBB57F3 2004-03-15


4. Se på detaljerne ovenfor. For eksempel er 85EEC6A5 din nøgles ID. For at eksportere din offentlige nøgle skriver du:

:gpg -ao fajar-pub.key --export 85EEC6A5


En fil ved navn fejar-pub.key vil blive lavet i den aktuelle mappe. Det er en kopi a din offentlige nøgle. Dette er også den fil, som folk skal importere for at verificere dine signerede e-mails. Du kan offentliggøre den på nøgleservere over hele verden, sende den direkte til de folk, som beder om den eller lægge den på dit websted, sådan at andre kan downloade den.

Hvis du ser på filens indhold, så vil det ligne dette:

-- --BEGIN PGP PUBLIC KEY BLOCK-- --

Version: GnuPG v1.2.3 (GNU/Linux)

mQGiBEBVTw8RBACaYvnDkgqNWyktg3urdE9mrpv63x3Iux2zVkuZk8pIRp5HeR/V

[snip snip...]

B394acuU4FdGN/EynYUAn1aRvNmgs0/IU2MDzYQpbHIaqpkE

=B0cy

-- --END PGP PUBLIC KEY BLOCK-- --

Desuden kan det være en god ide at lave en backup af din hemmelige nøgle på et sikkert medium (ikke kun én diskette; den bliver bare beskadiget). Brug følgende kommando:

$ gpg -ao secret.asc --export-secret-keys 85EEC6A5

Dette vil lave en tekstfil ved navn secret.asc med din hemmelige eller private nøgle. Giv den ikke til nogen, som du ikke har fuld tillid til. Gem den et sikkert sted (eller endnu bedre: mere end et sted).

Endelig er det tilrådeligt at generere et tilbagekaldelsescertifikat og gemme det et sikkert sted, ikke sammen med din hemmelige nøgle. Hvis din hemmelige nøgle falder i de forkerte hænder, så kan du tilbagekalde den, sådan at den ikke så let kan misbruges af andre. Kommandoen til at gøre dette er

$ gpg -a -o revoker.asc --gen-revoke 85EEC6A5

Dette vil lave en tekstfil ved navn revoker.asc, som indeholder tilbagekaldelsescertifikatet.


Opsætning af KMail til at signere e-mails ved brug af din gpg-nøgle

  1. Start KMail og vælg menuen Indstillinger -> Indstil KMail... -> Identiteter
  2. Vælg den identitet, som du bruger
  3. Klik så på Ændr... -> Kryptografi -> OpenPGP-signeringsnøgle
  4. Det vil automatisk vise din gpg-nøgle, dvs. 85EEC6A5
  5. Gør den ikke det, så klik på Ændr..., vælg nøgle-ID og klik så O.k.
  6. Opsæt nu KMail til automatisk at signere alle de e-mails, som du skriver med din nøgle
  7. Gå til Sikkerhed -> Skrivning (stadig i indstillingesdialogen)
  8. Vælg disse punkter:
    1. Opbevar gemte breve krypterede
    2. Vis altid indkodningsnøgle til godkendelse
    3. Signér breve automatisk
  9. Forlad indstillingsdialogen ved at klikke på O.k..


Test KMail ved at lave en ny meddelelse

  1. Du vil bemærke, at der er et ikon, Signér, lige efter papirklips-ikonet (Vedlæg) i værktøjslinjen. Det er allerede aktivt.
  2. Skriv din meddelse og send den, når du er klar.
  3. KMail vil bede dig om at skrive den hemmelige passphrase, som du lavede under gpg --gen-key-skridtet. Skriv det, og KMail vil vise dig en dialog, som bekræfter den signerede besked. Klik på O.k. for at sende den.
  4. Hvis du tester den ved at sende den til dig selv, så vil du bemærke, at KMail viser meddelsen med en GRØN overskrift, som siger noget i retning af: Brevet var signeret af Fajar Priyanto (Knowledge is power! http://linux.arinet.org) (Key ID: 0x85EEC6A5). Signaturen er gyldig, og nøglen er fuldt troværdig.
  5. Folk, som har din offentlige nøgle vil også have se dette, men de som ikke har nøglen vil få meddelsen vis i gult med ord som disse: Brevet var signeret med ukendt nøgle 0xBFE7357F. Gyldigheden af signaturen kan ikke verificeres.

Tillykke!

Du kan nu kommunikere på en mere sikker måde, hvis du vil. Jeg ved, at denne beskrivelse er meget kort og måske ikke så klar. Giv mig foreslag; så vil jeg forbedre den efterhånden. Jeg her desuden til hensigt at skrive den anden del af dette emne, som dækker, hvordan man krypterer beskeder, importerer andre offentlige nøgler og installerer krypterings-plugins. Særlig tak til Tim Sawchuck og Philip Cronje og til alle mine venner på Mandrake-listen.


Problemer

  • Beskeder signeret med en nøgle, som allerede kendes vises korrekt i KMail', men nye nøgler blev ikke importeret og du kan ikke signere beskeder: Årsagen er en manglende pakke. Installation af pinentry-qt (du får måske også brug for pinentry-qt4) løser tilsyneladende begge problemer.
  • KMail foretager ikke længere in-line signaturer. Brug OpenGPG til dette. KGpg er en nyttig applet, som hjælper med at håndtere signaturer, både dine egne og dem, som du samler sammen.
  • Hvis OpenGPG virker korrekt, så skal du skrive din passphrase hver gang du sender et dokument, som ikke er signeret. Dette bliver hurtigt irriterende, og du kan komme ud over det ved at konfigurere gpg-agent, som kommer med pakken kdebase-common. Uheldigvis opfanger installationen ikke behovet for pinentry-qt(4) og pinentry-gtk (KDE or GNOME), så de skal installeres separat. Konfigurationsfilen for gpg-agent bliver skrevet af KMails indstillinger.

Note

For at siker dig, at "passphraseagenten" (gpg-agent) er aktiveret kan du tjekke filen ~/.gnupg/gpg.conf og eventuelt kommentere linjen, som indeholder "use-agent" ud.
I KMails Indstillinger -> INdstil KMail... -> Sikkerhed -> Krypteringsmotorer vælger du OpenGPG og klikker på Indstil.... På siden GPG Agent kan du skrive en sti til en fil, hvor en log kan skrives hvis der opstår problemer. Du kan tjekke loggen i KMails Værktøjer -> GnuPG logfremviser. Det er nok også en god ide at øge cache-tiden - jeg bruger 3600.


Advarsel

Følgende scripts til opstart og nedlukning er måske allerede i brug fra din distribution, men ligger et andet sted. Installér ikke disse scripts, medmindre du har problemer med opstart og nedlukning


  • Hvis du ikke allerede den, så lav en mappe kaldet env i ~/.kde. I denne mappe laver du en fil kaldet gpgagent.sh med følgende indhold
#!/bin/bash
killall gpg-agent
eval `gpg-agent --daemon`

Gem den og gør den kørbar.

På samme måde bør du få gpg-agent ryddet op ved nedlukning: Hvis du ikke har den allerede, så lav en mappe kaldet shutdown i ~/.kde og lav en scriptfil ved navn stop_gpgagent.sh med følgende indhold

#!/bin/bash
killall gpg-agent

Gem den og gør den kørbar.


Tips til fejlsøgning

 grep gpg-agent

vil skrive en liste af kørende instanser af gpg-agent.

killall gpg-agent

stopper alle instanser

eval "$(gpg-agent --daemon)"

genstarter agenten

gpg-agent status

skulle fortælle dig, om agenten kører.