Linux E X P R E S

Facebook

Webový poštovní klient Roundcube – aktualizace, konfigurace, pluginy

roundcube_logo.jpg

Minule jsme skončili u nově nainstalovaného Roundcube. To je občas potřeba aktualizovat (když vyjde nová verze), někdy se musí změnit některé méně obvyklé parametry a v neposlední řadě jsou tu také pluginy. Na to vše se podíváme dnes.


Co s novou verzí?

Stejně jako v případě instalace záleží na tom, zda se jedná o aktualizaci prostřednictvím balíčkového systému, nebo o ruční aktualizaci z archivu staženého z webu projektu. V případě balíčků je to naprosto triviální a nemá smysl se tím podrobněji zabývat. Například v Debianu spuštění apt-get upgrade aktualizuje celý systém včetně Roundcube.

„Zajímavější“ je ruční aktualizace. Začíná to samozřejmě už tím, že je potřeba si ohlídat vydávání nových verzí. Stránka s novinkami však nabízí RSS export (což není vždy tak samozřejmé, jak by se mohlo zdát), proto si ho stačí dát do čtečky a zprávy už budou chodit samy.

Nová verze se stáhne úplně stejně jako při prvotní instalaci. Potom se stažený archiv rozbalí na nějaké dočasné místo. Pro vlastní aktualizaci lze využít dvě cesty: pomocí skriptu, nebo ruční s využitím webového instalátoru.

Aktualizace skriptem

Máte-li přímý přístup na server (přes SSH nebo lokální konzoli), můžete využít tuto relativně snadnou cestu. Vstupte do adresáře bin v rozbaleném adresářovém stromě nové verze a zde spusťte příkaz:

./installto.sh <cílový adresář>

Cílový adresář samozřejmě doplňte podle skutečnosti (kořen stromu Roundcube). Skript nakopíruje nové soubory a aktualizuje databázi (pokud je třeba). Následně zkontrolujte, zda má webový server právo zápisu do adresářů logstemp, případně nastavení opravte.

Využíváte-li vestavěný kontaktní adresář Roundcube, spusťte poté přeindexaci tohoto adresáře (uvedená cesta platí pro spuštění z kořene webového stromu Roundcube):

bin/indexcontacts.sh

Ruční aktualizace

Ruční aktualizaci volte jen v případě, že nemáte na server přímý přístup. Rozhodně nestačí jen nakopírovat adresářový strom! Postup je zhruba tento:

  1. Zkopírujte obsah adresářů bin, SQL, program, installer, skinsplugins.
  2. V souboru config/main.inc.php změňte hodnotu parametru enable_installer na true.
  3. Ve webovém prohlížeči otevřete http://<adresa>/installer/ a vyberte funkci 3 Test config.
  4. Zkontrolujte v souboru config/main.inc.php, že má parametr enable_installer hodnotu false.

Nastavování specifických parametrů

Mnohdy si lze vystačit s výchozím nastavením Roundcube a nastavit jen několik málo parametrů, které byly zmíněny minule. Občas je ale potřeba nastavit něco víc, ať už jsou důvody jakékoli. Všechny popisované parametry se nacházejí v souboru main.inc.php v adresáři config. Uvedený popis není rozhodně vyčerpávající!

Logování

Běžně se toho loguje poměrně málo. To je výhodné z hlediska výkonu, někdy je ale potřeba pátrat po příčinách nějakého problému a hodí se více informací.

  • log_driver – Mechanismus logování; výchozí je file (soubor), lze změnit na syslog.
  • smtp_log – Logování odesílaných zpráv (výchozí hodnota false).
  • log_logins – Logování přihlášení uživatelů (výchozí hodnota false).
  • sql_debug, imap_debug, ldap_debug, smtp_debug – Ladicí zprávy jednotlivých protokolů (výchozí hodnota false). Pozor, má značné dopady na výkon a mohou se logovat citlivá data!

IMAP

Pokud se využívá nějaký nestandardní IMAP server nebo je potřeba zvláštní chování, upravte parametry podle potřeby.

  • default_host – Výchozí server. Můžete použít IP adresu nebo jmennou adresu, případně symboly %n%d pro automatické použití jmenné adresy, resp. domény aktuálního serveru. Adrese lze předřadit ssl:// pro implicitní SSL/TLS nebo tls:// pro explicitní TLS (STARTTLS).
  • default_port – Výchozí port (standardně 143).
  • imap_auth_type – Metoda ověřování uživatele. Prázdná hodnota (výchozí) říká, že se má provést automatická detekce. Pokud s tím jsou problémy, můžete vybrat některou z metod SASL (PLAIN, LOGIN, CRAM-MD5 nebo DIGEST-MD5).
  • imap_delimiter – Oddělovač složek v hierarchii. Výchozí hodnota NULL značí autodetekci, při problémech nastavte podle vašeho serveru.
  • imap_ns_personal, imap_ns_shared, imap_ns_other – Používáte-li server bez podpory rozšíření IMAP NAMESPACE a potřebujete nastavit cesty jmenných prostorů, použijte tyto parametry. Výchozí hodnota NULL spoléhá na hodnoty ze serveru.

SMTP

Pro SMTP platí v zásadě totéž, co pro IMAP. Nastavujte jen v případě, že je to opravdu nutné.

  • smtp_server – Adresa SMTP serveru. Platí zde totéž jako pro adresu IMAP serveru, lze ovšem navíc použít symboly %h (IMAP server uživatele) a %z (IMAP doména).
  • smtp_port – Port pro SMTP (standardně 25, resp. 465 pro SSL; v případě ověřování uživatele lze často použít také 587).
  • smtp_user – Uživatel pro SMTP. Výchozí je symbol %u značící aktuálního uživatele.
  • smtp_pass – Heslo pro SMTP. Výchozí je %p, tedy heslo aktuálního uživatele.
  • smtp_auth_type – Metoda ověřování uživatele, viz imap_auth_type.

Pokud necháte parametr smtp_server prázdný, použije se k odesílání zpráv funkce mail(), a ostatní parametry pak nemají smysl. Chování funkce mail() bude odpovídat tomu, co je nastaveno v konfiguraci PHP.

Ostatní nastavení

Sem spadají nastavení všeho druhu. Podíváte-li se do konfiguračního souboru, najdete tam u každého parametru i stručný popis, k čemu slouží a jak ho nastavit.

  • enable_installer – Povolení webového instalátoru. Používá se jen v případě ruční aktualizace, viz výše.
  • enable_cachingPři přístupu na pomalý vzdálený server lze uchovávat zprávy místně. Tím lze výrazně urychlit přístup, hrozí ale práce s neaktuálními daty. Používejte opatrně!
  • message_cache_lifetimeŽivotnost místně uložených zpráv. Výchozí hodnota je 10 dnů, lze ji nastavit podle potřeby (vždy číslo a jednotka, např. 10d).
  • use_https, force_httpsPrvní parametr říká, zda se chovat jako při používání HTTPS (i v případě, že není detekováno, např. za proxy). Druhý umožňuje vynutit používání HTTPS (nešifrované požadavky způsobí přesměrování).
  • login_lcAutomatická konverze přihlašovacích údajů na malá písmena (ve výchozím stavu false).
  • auto_create_userAutomatické vytvoření uživatele po přihlášení. Jedná se pouze o vnitřního uživatele Roundcube, ne o IMAP uživatele. Pokud se deaktivuje, budou moci využívat Roundcube pouze explicitně vytvoření uživatelé.
  • identities_levelRoundcube umožňuje vytváření více identit pro jednotlivé uživatele. Tímto parametrem lze ovlivnit, zda se tato možnost povolí a zda může uživatel nastavovat své (zpáteční) e-mailové adresy.
  • email_dns_checkKontrola domén v e-mailových adresách (standardně zapnuta). Lze vypnout, pokud jsou s ověřováním problémy nebo je server v nestandardním prostředí.

Parametrů k nastavování je zde podstatně víc. Případů, kdy je potřeba jejich nastavení měnit, je však velmi málo, a pokud nějaký nastane, poslouží popis přímo v konfiguračním souboru. Celé sady parametrů jsou věnovány uživatelskému rozhraní a výchozímu nastavení uživatelských preferencí. Ty nejsou vůbec zmíněny výše – nejsou klíčové pro fungování Roundcube a dotýkají se především toho, jak se bude webové rozhraní vůči uživatelům tvářit.

Pluginy – instalace, aktivace, konfigurace

Řada funkcí není obsažena přímo v samotném Roundcube, ale lze je dodat prostřednictvím doplňků (pluginů). Ve standardní instalaci je k dispozici základní sada, další lze získat z repozitáře či odjinud, případně si je vytvořit podle potřeby.

Instalace/odstraňování

Všechny pluginy jsou umístěny ve svých adresářích pod adresářem plugins. Základní instalace spočívá v tom, že se prostě soubory pluginu (jeho adresářová struktura) nakopírují do adresáře, který se pro něj vytvoří. Pokud není potřeba modifikace databáze, je to obvykle vše, co je potřeba udělat.

Existují však pluginy, které databázi modifikovat potřebují. Případně je potřeba udělat ještě nějaké další operace. Vždy se proto podívejte do adresáře příslušného pluginu, zda tam nejsou soubory jako README, INSTALLUPGRADING. V nich bývá popsáno, jak postupovat.

Odstraňování je pak opakem instalace. Většinou stačí jen smazat příslušný adresář (nejdřív ale deaktivovat plugin, viz dále), někdy ale může být potřeba udělat i zásah do databáze. Pozor na to, že takový zásah může mít destruktivní účinky, tedy že nevratně odstraní data vytvořená během používání pluginu. Naopak neprovedení zásahu do databáze může znefunkčnit program Roundcube jako takový.

Aktivace/deaktivace

Plugin zůstává po instalaci většinou neaktivní, tedy nijak se nepodílí na fungování Roundcube. Výjimkou jsou jen pluginy, na kterých závisejí jiné pluginy (typickým případem je třeba jqueryui). Ty se aktivují automaticky tím, že si je vyžádají jiné pluginy a není třeba je aktivovat explicitně.

Obecně je ale aktivace potřeba. V konfiguračním souboru config/main.inc.php najdete parametr plugins. Ten má podobu pole, jehož prvky jsou názvy jednotlivých pluginů (názvy jejich adresářů). Přidáním pluginu se tento aktivuje, odebráním se deaktivuje (čímž není dotčena zmíněná možnost automatické aktivace). To je vše.

Konfigurace pluginů

Pokud je v pluginu co konfigurovat – což obvykle je – bývá u daného doplňku přiložen konfigurační soubor. Je nazván config.inc.php.dist. Pokud chcete něco změnit, zkopírujte si tento soubor na config.inc.php a upravte nastavení dle potřeby. Platí zde tytéž zásady jako pro hlavní konfiguraci Roundcube.

Pozor na to, že při aktualizaci pluginů může dojít ke změně ve výchozí konfiguraci, případně k přidání nových parametrů. To ostatně platí i pro hlavní konfigurační soubor, ovšem u pluginů to snáze unikne pozornosti. Pokud je v konfiguračním souboru daná hodnota předefinována, výchozí nastavení se neuplatní. Nové parametry tam naopak nejsou, a člověk si tak nemusí všimnout, že by mohl něco nastavit (ovšem dokud vše funguje, ani nemá důvod nastavovat).

Základní práce s Roundcube

Zatím to bylo hodně suché, nezáživné a administrátorské. Příště už ale přijde řada na praktickou práci přímo v programu. Podíváme se na to, jak se pracuje s doručenými zprávami, píší nové zprávy, přidávají přílohy atd.

Diskuze (0) Nahoru