Jak na webmail a OpenPGP se SquirrelMail

23. 7. 2007
Doba čtení: 5 minut

Sdílet

Podepsat či zašifrovat zprávu pomocí OpenPGP, stejně jako zprávu dešifrovat či ověřit elektronický podpis, je dnes docela snadné. Stačí využít možností OpenPGP kompatibilních poštovních klientů. Co ale přístup k poštovní schránce přes webové rozhraní (webmail)? Co freemailové poštovní schránky?

Kdo z nás by alespoň občas nepřistupoval k některé ze svých poštovních schránek přes webové rozhraní? Webová rozhraní jsou upřednostňována i zatracována. S rozšiřováním Linuxu se i mezi jeho uživateli objevují tací, pro které je webmail synonymem pošty a slova jako Thunderbird, Kmail, Sylpheed, Claws-Mail, Balsa, Evolution, Mutt, Pine, etPan, Elm a další jim vůbec nic neříkají. Jisté je, že webová rozhraní různých freemailů zůstávají často i pro zkušené uživatele jedinou možností, jak se ke své poště dostat.

Běžné webmaily neposkytují uživatelům možnost zabezpečení zpráv pomocí OpenPGP (PGP nebo GnuPG). Pokud ale dbáme na bezpečnost, můžeme své zprávy pomocí OpenPGP zabezpečit, i když k poštovní schránce přistupujeme z webového prohlížeče.

Kam se soukromým klíčem?

Bezpečnost OpenPGP stojí a padá se zabezpečením soukromého klíče. Na lokálním počítači jej dokážu zabezpečit. Pokud ke své schránce ale potřebuji webový přístup, nastávají komplikace. Kam umístit a jak zabezpečit soukromý klíč? Existují 3 základní možnosti. Každé z nich bude věnován samostatný článek.

  1. Soukromý klíč je uložen na serveru, práce s ním probíhá na serveru,
  2. soukromý klíč je uložen na serveru, práce s ním ale probíhá na lokálním počítači,
  3. soukromý klíč je uložen na lokálním počítači, případně jej nosím s sebou.

Soukromý klíč je uložen na serveru

V dnešním díle se podíváme na první možnost. Pro uživatele se jedná o nejjednodušší řešení. Soukromý klíč je „bezpečně“ uložen na serveru, uživatel se tedy nemusí starat o jeho zabezpečení. Přímo ve webmailu jsou k dispozici tlačítka „Zašifruj“ a „Podepiš“. Uživateli stačí pouze klikat. K poštovní schránce lze přistupovat jak z libovolného počítače, tak z libovolného webového prohlížeče. Problémem nejsou ani webové prohlížeče běžící v textovém módu.

Se soukromým klíčem se pracuje na straně serveru. Pro dešifrování nebo podepisování zpráv je nutné, aby měl webmail přístup ke klíčí v otevřeném tvaru. Klíč může být na serveru uložen v otevřeném tvaru nebo zašifrovaně. Pokud je klíč uložen zašifrovaně, v případě potřeby je nutné jej otevřít. Potřebné heslo k otevření klíče lze na server přenést zašifrovaně pomocí HTTPS. Na serveru musí být heslo dešifrováno. Přístup k heslu i k otevřenému klíči lze v rámci webmailu co nejvíce ztížit. Před provozovatelem, administrátorem daného serveru, ale heslo a klíč schovat nelze. V případě různých PHP řešení nelze administrátorovi zabránit, aby si jednoduše některý z důležitých skriptů upravil a hesla si nechal ukládat do souboru. Binární programy lze vždy trasovat, případně se přímo podívat do paměti.

Administrátor serveru tedy může získat k soukromému klíči přístup a tudíž je možné klíč zneužít. S tím je nutno počítat. I tak lze ale šifrování zpráv doporučit. Šifrování nebude chránit poštu před administrátorem. Ten se k zašifrované poště může dostat jenom o něco složitěji než k poště v otevřeném tvaru. Vyvstává ale několik otázek. Proč by to vůbec dělal? Co by ho k tomu vedlo? Měl by na to vůbec čas?

Šifrování chrání poštu před jinými uživateli. Webmail může vyžadovat jedno heslo pro přístup k poštovní schránce a druhé heslo k dešifrovaní zašifrovaných zpráv. Zprávy posílané přes internet mohou být webmailem snadno šifrovány i podepisovány. Nemusí se přitom jednat pouze o šifrování nebo podepisování pro konkrétního uživatele. Používat lze i klíčový pár celé organizace. Tímto způsobem mohou bezpečně komunikovat například jednotlivé pobočky. Pro zaměstnance může být šifrování i podepisování zcela transparentní.

Paranoidním uživatelům lze uložení soukromého klíče na serveru doporučit pouze v případě, kdy lze provozovateli serveru bezmezně věřit. To lze asi jenom v případě, kdy si server provozují sami. Svůj vlastní server si pečlivě zabezpečím, nainstaluji si vlastní webmail a veškerý přenos samozřejmě šifruji.

Příkladem řešení, kdy je soukromý klíč uložen na serveru a pracuje se s ním na serveru může být rozšíření G/PGP Encryption Plugin pro webmail SquirrelMail.

SquirrelMail a G/PGP Encryption Plugin

SquirrelMail patří k nejoblíbenějším webmailům. Projekt SquirrelMail vznikl v roce 1999. U jeho vzniku stáli bratři Luke a Nathan Ehresmanovi. SquirrelMail je naprogramován v skriptovacím jazyce PHP. Lze jej nainstalovat na libovolný webový server podporující PHP. SquirrelMail vyžaduje přístup k IMAP a SMTP serverům.

K oblíbě SquirrelMail zcela jistě přispívá jeho licence (GPL) a celá řada rozšíření (pluginů). V současné době je k dispozici 213 rozšíření rozdělených do 14 kategorií. V kategorii Compose (vytváření zpráv) lze nalézt také rozšíření G/PGP Encryption Plugin.

G/PGP Encryption Plugin přidává do SquirrelMail možnost šifrování a dešifrování zpráv, podepisování i ověřování elektronických podpisů dle OpenPGP standardu. Nejedná se o vlastní implementaci, jde o PHP nadstavbu nad GnuPG.

Dne 7. července 2007 byla po více než třech letech vydána nová stabilní verze 2.1. Autorem rozšíření je Brian G. Peterson. Na jeho stránkách lze získat další informace, dokumentaci v phpdoc, jakož i vývojové verze SquirrelMail (dailybuild).

Instalace G/PGP rozšíření je velice snadná. Samozřejmě pokud už máte fungující SquirrelMail. G/PGP Encryption Plugin stačí pouze rozbalit do příslušného adresáře (v Source Mage GNU/Linux se jedná o adresář /usr/share/www/squirrelmail/plugins. Rozšíření lze instalovat také příkazem cast squirrelmail-gpg), spustit konfigurační skript samotného SquirrelMail ( .../squirrelmail/config/conf.pl) a G/PGP rozšíření povolit. Následuje případná úprava konfiguračního souboru webového serveru ( httpd.conf).

sq1

1) Konfigurace SquirrelMail, skript conf.pl

sq2

2) SquirrelMail bez rozšíření G/PGP Encryption Plugin

sq3

3) SquirrelMail s rozšíření G/PGP Encryption Plugin (přibyl odkaz Keyring)

sq4

4) Uživatelské nastavení SquirrelMail (přibyla možnost nastavení G/PGP rozšíření)

sq5

5) Uživatelské nastavení G/PGP rozšíření

sq6

6) Pracovat s klíčenkou, generovat nové klíče, lze pouze přes HTTPS

sq7

7) Klíče lze do G/GPG rozšíření importovat pomocí souboru nebo textového formuláře. Klíčový pár lze také vygenerovat přímo v G/GPG rozšíření

sq8

8) Generování klíčů samozřejmě nějakou dobu trvá

sq9

9) Klíče lze importovat přímo z poštovní zprávy

sq10

10) Práce s klíčenkou

sq11

11) Pro zašifrování či podepsání stačí kliknout na tlačítko

sq12

12) Odeslání zašifrované zprávy

sq13

13) Příjem zašifrované zprávy, po příjemci je vyžadováno heslo k soukromému klíči

sq14

14) Zpráva v otevřeném tvaru, informace o použitých klíčích

sq15

15) G/GPG rozšíření umožňuje vyhledávat veřejné klíče na serverech OpenPGP klíčů

ict ve školství 24

sq16

16) Vyhledané klíče lze stiskem tlačítka naimportovat

Co dál?

Příště se podíváme na možnost uložení soukromého klíče na serveru a práci s ním na lokálním počítači. Zaměříme se na HushMail a freenigma. Možnost uložení soukromého klíče na lokálním počítači, případně jeho nošení s sebou, bude rozebráno ve třetí části. Zde se budeme věnovat především FireGPG rozšíření webového prohlížeče Mozilla Firefox.

Používáte častěji webmail nebo poštovního klienta?

Autor článku