Co je Firefox Sync
O technologii Firefox Sync se občas hovoří jako o „synchronizaci záložek“, ale takové označení vystihuje jen část nabízených možností. Firefox Sync zvládne synchronizovat mnohem víc věcí – kromě záložek to jsou doplňky, hesla, předvolby, historie a panely. Synchronizuje se ale jen to, co synchronizovat chcete.
Synchronizace pomocí Firefox Sync funguje nejen mezi instalacemi prohlížeče na desktopech (bez ohledu na platformu), ale i s mobilními přístroji. Jakmile si tedy přidáte například záložku na jednom počítači, přidá se vám i na všech ostatních, včetně mobilu nebo tabletu. Navštívená stránka se objeví v historii opět ve všech instalacích.
Firefox Sync je již nějakou dobu integrální součástí prohlížeče Mozilla Firefox. Mozilla pro jeho funkci provozuje také synchronizační servery, které lze zdarma využívat. Ovšem kdo v ně nemá důvěru (přestože se data šifrují již v prohlížeči a nikdo by je neměl být schopen získat v otevřeném tvaru), může si velmi snadno zprovoznit synchronizaci na vlastním serveru.
Jak Firefox Sync funguje
Pro zprovoznění „synchronizačního serveru“ není třeba znát žádné podrobnosti o fungování technologie Firefox Sync. Nicméně jsou věci, které je zajímavé vědět. Protože je Firefox svobodný software, jsou i veškeré informace o technologii svobodně dostupné.
Firefox Sync pracuje nad běžným protokolem HTTP nebo HTTPS. Synchronizace začíná tak, že se z prohlížeče Firefox vytvoří účet, ať již přímo u Mozilly nebo na jiném serveru. Další instalace se nejsnáze přidávají tak, že se z každé z nich přenesou vygenerované kódy do některé již zapojené instalace. Podrobnosti jsou uvedeny v návodech, jsou k dispozici i v češtině.
Na serveru to funguje tak, že je potřeba mít k dispozici nějaký HTTP server, implementaci serverové části Firefox Sync a databázi pro uložení dat. Existuje více implementací, lze si je samozřejmě přizpůsobovat svým potřebám. Asi nejčastějším případem bude omezení, kdo smí server využívat.
Přestože Firefox Sync slouží primárně k synchronizaci prohlížeče Firefox, možnosti jsou mnohem širší. Chcete si například synchronizovat i nastavení poštovního klienta Mozilla Thunderbird? Žádný problém, i to lze zajistit. Je k dispozici také javascriptové API, přes které lze využívat Firefox Sync k dalším účelům. Podrobnější popis ale přesahuje rámec tohoto článku.
Firefox Sync na vlastním serveru
Možností existuje víc, následující řádky se budou věnovat zprovoznění serverové implementace v PHP, protože je tato webová technologie jednoznačně nejrozšířenější. Jako databáze poslouží SQLite, není tedy ani třeba MySQL nebo jiná databáze, přestože je lze také použít.
Co je k instalaci potřeba? Nic výjimečného. Postačí běžně připravený webový server s PHP a se zmíněnou databází SQLite – například Debian 7, CentOS apod. Je velmi žádoucí si zprovoznit také HTTPS, ať už s certifikátem od nějaké autority uznávané Mozillou (lze získat i zdarma nebo za cenu v řádu stokorun ročně) nebo i samopodepsaný či podepsaný vlastní autoritou (je třeba schválit ve Firefoxu nebo si tam přidat tento certifikát či certifikát autority).
Vlastní instalace se pak provádí takto:
- Stáhněte si soubory implementace FSyncMS, například přímo z GitHubu.
- Soubory umístěte do adresáře na webovém serveru, kam je „vidět“ zvenku (například
/var/www
). Webový server musí mít právo tam zapisovat. - Otevřete ve webovém prohlížeči URL odpovídající danému umístění na serveru, tedy něco ve stylu https://nejakadomena.cz/index.php (vygeneruje se databáze a konfigurační soubor).
- To je z hlediska funkčnosti vše. Další kroky jsou již věcí bezpečnosti a pohodlí.
- Zrušte webovému serveru právo zápisu ke všem souborům kromě
weave_db
. V případě souborusettings.php
je dobré (pokud je vlastníkem webový server, tj. uživatelwww-data
) vytvořit kopii pod běžným uživatelem, původní soubor smazat a nový přejmenovat nasettings.php
. - Zamezte přímému přístupu k souboru
weave_db
. Možností je víc a závisí na tom, co lze na daném serveru dělat: - zakázat přístup pomocí
.htaccess
, pokud ho lze použít – například takto:Order Deny,Allow
Deny from all
Allow from 127.0.0.1
<Files index.php>
Order Allow,Deny
Allow from all
</Files> - přesunout soubor do adresáře, kam „vidí“ PHP, ale nevidí tam webový server, následně změnit konfiguraci (není třeba
.htaccess
). - Standardní URL pro přístup z klientů Firefox Sync končí „
index.php/
“. Komu se takový tvar nelíbí, může si pomocí přepisovacího pravidla definovat jiný.
Tím je hotovo a můžete se připojit z Firefoxu. Z menu vyberete Nastavit Sync... a následně Vytvořit nový účet. Zadáte údaje (e-mailovou adresu a heslo) a místo výchozího serveru vložíte URL na ten váš – bude vypadat nějak jako https://nejakadomena.cz/index.php/
. To lomítko na konci je důležité, viz výše. Pokud jste podle bodu 7 nastavili něco jiného, můžete to použít – nejdřív ale přizpůsobte konfiguraci.
Vytvoření účtu Firefox Sync na vlastním serveru
Konfigurace serverové části Firefox Sync
Konfigurace se nachází v již zmíněném souboru settings.php
a většinou tam není potřeba nic moc nastavovat. V zásadě se jedná o tři parametry:
ENABLE_REGISTER
– výchozí nastavení jetrue
. Parametr povoluje registraci nových klientů. Pokud chcete server používat jen pro sebe, zaregistrujte si první instalaci a nastavte parametr na false. Pro přidávání dalších zařízení není registrace potřeba.FSYNCMS_ROOT
– základ URL pro synchronizaci. Bývá tam vygenerovaná hodnota, pokud budete používat jinou (typicky po vytvoření přepisovacího pravidla), nastavte ji zde.SQLITE_FILE
– soubor s databází SQLite. Soubor můžete přesunout podle bodu 6, případně přejmenovat, je ale potřeba přizpůsobit tuto hodnotu.
Další parametry se vztahují hlavně k databázi. FSyncMS umí pracovat i s MySQL, takže pokud chcete tuto databázi použít, nastavte příslušné parametry. Databáze musí už existovat a uživatel musí mít právo tam vytvářet tabulky (vytvoří se automaticky podle bodu 3).
Zvládne to každý
Popsaný postup zvládne jistě každý, kdo má k dispozici server s Apachem a PHP. Obvykle se nepřenáší se žádné velké datové objemy, lze se tedy spokojit i s málem (z hlediska výkonu serveru a rychlosti připojení). Databázi je samozřejmě žádoucí zálohovat, není-li zálohována společně s dalšími soubory. Pak už zbývá jen (bez obav ohledně soukromí) „užívat plodů“ nezávislosti na ukládání dat u cizího provozovatele.