přejít na obsah přejít na navigaci

Linux E X P R E S, Firefox Sync na vlastním serveru

Firefox Sync na vlastním serveru

Firefox_Sync_logo.jpg

Technologie Firefox Sync umožňuje snadno synchronizovat instalace prohlížeče Mozilla Firefox napříč platformami. K synchronizaci můžete velmi jednoduše použít i vlastní server.


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:

  1. Stáhněte si soubory implementace FSyncMS, například přímo z GitHubu.
  2. 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.
  3. 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).
  4. To je z hlediska funkčnosti vše. Další kroky jsou již věcí bezpečnosti a pohodlí.
  5. Zrušte webovému serveru právo zápisu ke všem souborům kromě weave_db. V případě souboru settings.php je dobré (pokud je vlastníkem webový server, tj. uživatel www-data) vytvořit kopii pod běžným uživatelem, původní soubor smazat a nový přejmenovat na settings.php.
  6. 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).
  7. 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 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í je true. 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.

Nahoru

Příspěvky

Firefox Sync na vlastním serveru
Matěj Cepl 27. 09. 2013, 16:02:28
Odpovědět  Odkaz 
Hmm, a co oficiální server ... instrukce jsou na http://docs.services.mozilla.com/howtos/run-sync.html ?
Lukáš Jelínek Re: Firefox Sync na vlastním serveru
Lukáš Jelínek 27. 09. 2013, 16:42:24
Odpovědět  Odkaz 
Ten běží na Pythonu. Záměrně jsem pro článek zvolil řešení založené na PHP, protože to je k dispozici "na každém rohu", pro zprovoznění jsou tuny návodů a kdekdo s tím má zkušenosti. A také proto, že ho používám (což je dáno tím, že Python osobně moc rád nemám).
Lukáš Jelínek Re: Re: Firefox Sync na vlastním serveru
Lukáš Jelínek 27. 09. 2013, 16:43:27
Odpovědět  Odkaz 
S tím "pro zprovoznění jsou tuny návodů a kdekdo s tím má zkušenosti" jsem měl samozřejmě na mysli Apache+PHP (resp. obecně LAMP), ne ten Firefox Sync.
Jiří Němec S pythonem to jde skoro stejne snadno
Jirka Němec 29. 09. 2013, 10:05:51
Odpovědět  Odkaz 
Já sice mám zkušenosti s Pythonem a také s Pythonem pod Apache, ale i tak si myslím, že nastavení WSGI s Apachem je opravdu jednoduché a s mozilla-sync už je to pak taktéž snadné.
Doporučuji tedy případným zájemcům o vlastní Firefox Sync server, ať v první řadě zkusí oficiální řešení a teprve v případě, že by to pro vás bylo z nějakého důvodu neproveditelné, tak se uchýlit k řešení v článku. Já nahazoval vlastní mozilla-sync-server včera a probéhlo to opravdu hladce, takže doporučuji. Pokud máte openSUSE, tak to bude o to jednodušší, že balíčky pro tuto distribuci jsou perfektně připraveny - https://build.opensuse.org/package/show?project=home%3Amarec2000&package=mozilla-sync-server
Firefox Sync na vlastním serveru
Miloslav Hůla 1. 10. 2013, 11:18:22
Odpovědět  Odkaz 
Je to hrozně napsaná aplikace. Logování se zapíná obskurně a je natvrdo do souboru v /tmp, chybové hlášky jsou na X místech duplicitní a nic neříkající, aplikace se velmi špatně chová při symlinku index.php odjinud, atd.

Zlatá ofiko Python verze ikdyž ji nemám rád.
Firefox Sync na vlastním serveru
Tomáš Navrátil 17. 10. 2013, 20:12:41
Odpovědět  Odkaz 
Provozuji již několik let (původně php verzi, poslední rok nebo víc python verzi). Co ale přestalo fungovat je synchronizace s FF na Androidu (od přeinstalace Androidu na 4.2 cyanogenmod). Když přidávám zařízení, vše se tváří, že proběhlo, ale nic se nesynchronizuje, resp. neprovede se sync ze serveru do zařízení. Desktopový FF funguje bez problémů.
Firefox Sync
Miloš 13. 05. 2014, 21:17:33
Odpovědět  Odkaz 
Založil som si firefox sync a dal som tam asi zlú emailovú adresu a nemôžem sa prihlásiť a ani zmeniť heslo alebo email. poprosím o poradenie.
Re: Firefox Sync
davkol 13. 05. 2014, 21:44:30
Odpovědět  Odkaz 
Napiš přihlašovací údaje, ať můžeme pomoct.
Re: Re: Firefox Sync
Miloš 14. 05. 2014, 13:31:15
Odpovědět  Odkaz 
Takovou debilovinu může napsat jedině davkol.
Re: Firefox Sync
VK 14. 05. 2014, 23:12:21
Odpovědět  Odkaz 
Sice jsem si Firefox účet nezakládal, ale pokud ověřují e-mail, tak pokud nenastane do nějaké doby ověření, měli by účet smazat, a mělo by se dát začít znovu? Třeba za týden? Ale to je jen dohad, rychlejší bude založit jiný účet.
Firefox Sync na vlastním serveru
VK 14. 05. 2014, 22:52:25
Odpovědět  Odkaz 
Starý Firefox Sync existoval i jako plugin OwnCloudu, nový nejspíš už nebude. Takové inovace jsou na ...
Firefox Sync na vlastním serveru
Swork 22. 02. 2016, 09:25:00
Odpovědět  Odkaz 
Dobrý den,
funguje tento návod i na aktuální verzi FF 44.0.2?
Děkuji.
Lukáš Jelínek Re: Firefox Sync na vlastním serveru
Lukáš Jelínek 22. 02. 2016, 11:04:27
Odpovědět  Odkaz 
Dobrý den,
funguje jen za podmínky, že byla synchronizace nastavena u starších verzí FF (do 28) - než Mozilla tento způsob synchronizace opustila a zavedla ten "nový". U novějších verzí už nastavit nejde, tam se k synchronizaci používají Mozilla Accounts (kde by snad měl jít také využít vlastní server, ale zatím jsem to nestudoval, takže nevím detaily). Čili jediný způsob, jak to zprovoznit, je nainstalovat starší verzi (pokud to jde) a pak aktualizovat.

Odpovědět

Nejsou podporovány žádné značky, komentáře jsou jen čistě textové. Více o diskuzích a pravidlech najdete v nápovědě.
Diskuzi můžete sledovat pomocí RSS kanálu rss



 
 

Top články z OpenOffice.cz

Lukáš Jelínek

Lukáš Jelínek

Dlouholetý člen autorského týmu LinuxEXPRESu a OpenOffice.cz. Vystudoval FEL ČVUT v oboru Výpočetní technika. Žije v Kutné Hoře, podniká v oblasti IT a zároveň pracuje v týmu projektu Turris. Ve volném čase rád fotografuje, natáčí a stříhá video, občas se věnuje powerkitingu a na prahu čtyřicítky začal hrát tenis.


  • Distribuce: Debian, Kubuntu, Linux Mint
  • Grafické prostředí: KDE

| proč linux | blog