Nastavte Firefox Sync Server na Debian 9 alebo Ubuntu 16.04

Nastavte Firefox Sync Server na Debian 9 alebo Ubuntu 16.04

Firefox Sync je funkcia synchronizácie prehliadača, ktorá vám umožňuje zdieľať vaše údaje a preferencie (ako sú vaše záložky, história, heslá, otvorené karty a nainštalované doplnky) na všetkých vašich zariadeniach. Mozilla tiež ponúka aplikáciu „synchronizačného servera“ na použitie s Firefox Sync pre používateľov a firmy, ktoré uprednostňujú hosťovanie vlastných synchronizačných údajov. Tento článok vám ukáže, ako nastaviť server Mozilla Sync Server.

Predpoklady

  • Novo nasadená inštancia servera Vultr Debian 8, Debian 9 alebo Ubuntu 16.04.
  • Sudo používateľ .

Nainštalujte potrebné balíčky

Aktualizujte systém:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade

Ak chcete vytvoriť a spustiť Sync Server, budete musieť nainštalovať tieto balíky:

  • python-dev
  • git
  • build-essential (C++ kompilátor, GCC kompilátor, make a ďalšie požadované nástroje).
  • sqlite3(ak chcete použiť databázu MySQL namiesto SQLite, môžete sqlite3balík nahradiť mariadb-serveralebo mysql-server).
  • nginx(webový server. Je len na vás, ktorý webový server chcete použiť apache2alebo nginx).

Nainštalujte balíčky:

sudo apt-get install -y git git-core python-dev python-virtualenv build-essential sqlite3 nginx

Budovanie servera

Naklonujeme úložisko Git synchronizačného servera zadaním nasledujúceho príkazu a potom zadajte priečinok:

git clone https://github.com/mozilla-services/syncserver
cd syncserver

Spustite príkaz build, ktorý stiahne závislosti a skompiluje kód.

make build

Konfigurácia synchronizačného servera

Konfigurácia synchronizačného servera je veľmi jednoduchá, v konfiguračnom súbore ( ./syncserver.ini) je potrebné zmeniť len niekoľko parametrov .

Otvorte konfiguračný súbor pomocou svojho obľúbeného textového editora (napríklad nano ./syncserver.ini).

[server:main]
use = egg:gunicorn
host = 0.0.0.0
port = 5000
workers = 1
timeout = 30

[app:main]
use = egg:syncserver

[syncserver]
# This must be edited to point to the public URL of your server,
# i.e. the URL as seen by Firefox.
public_url = http://localhost:5000/

# This defines the database in which to store all server data.
#sqluri = sqlite:////tmp/syncserver.db

# This is a secret key used for signing authentication tokens.
# It should be long and randomly-generated.
# The following command will give a suitable value on *nix systems:
#
#    head -c 20 /dev/urandom | sha1sum
#
# If not specified then the server will generate a temporary one at startup.
#secret = INSERT_SECRET_KEY_HERE

# Set this to "false" to disable new-user signups on the server.
# Only request by existing accounts will be honoured.
# allow_new_users = false

# Set this to "true" to work around a mismatch between public_url and
# the application URL as seen by python, which can happen in certain reverse-
# proxy hosting setups.  It will overwrite the WSGI environ dict with the
# details from public_url.  This could have security implications if e.g.
# you tell the app that it's on HTTPS but it's really on HTTP, so it should
# only be used as a last resort and after careful checking of server config.
force_wsgi_environ = false

[browserid]
# Uncomment and edit the following to use a local BrowserID verifier
# rather than posting assertions to the mozilla-hosted verifier.
# Audiences should be set to your public_url without a trailing slash.
#backend = tokenserver.verifiers.LocalVerifier
#audiences = https://localhost:5000

# By default, syncserver will accept identity assertions issues by
# any server. You can restrict this by setting the below to a list
# of allowed issuer domains.
#allowed_issuers = www.mysite.com myfriendsdomain.org

Adresa vášho servera musí byť špecifikovaná cez parameter public_url:

public_url = http://fsync.example.com

Poznámka : Predvolená hodnota public_url"http://localhost:5000/" bude fungovať na účely testovania na vašom lokálnom počítači.

Vo sqlurivoľbe odkomentujeme a vložíme umiestnenie alebo, URIktoré umožní serveru pripojiť sa k databáze a uložiť informácie:

sqluri = sqlite:////path/to/database/file.db

Ak chcete použiť iný typ DB:

sqluri = pymysql://username:[email protected]/sync

Pre secretparameter „ “ budeme musieť vygenerovať tajný kľúč pre autentifikačné tokeny:

head -c 20 /dev/urandom | sha1sum

Odkomentujte riadok tajného parametra a potom skopírujte/prilepte vrátený reťazec do tajného parametra:

secret = db8a203aed5fe3e4594d4b75990acb76242efd35

Poznámka : Ak do tohto parametra nič nezadáte, server ho vygeneruje, ale pri každom reštarte servera bude iný.

Pre allow\_new\_usersparameter " " zrušte jeho komentár a nastavte ho tak true, aby sa náš účet mohol prvýkrát pripojiť k nášmu serveru:

allow_new_users = true

Potom upravíme audiencesparameter „ “ a vložíme to isté ako public_uriparameter „ “ bez toho, aby sme zabudli odkomentovať riadok:

audiences = http://fsync.example.com

Nakoniec stačí pridať nasledujúci riadok na koniec súboru:

forwarded_allow_ips = *

Tento riadok vám pomôže vyhnúť sa chybovým hláseniam a problémom s autorizáciou.

Spúšťa sa synchronizačný server

Ak chcete spustiť synchronizačný server, môžete spustiť nasledujúci príkaz:

./path/to/syncserver/local/bin/gunicorn --threads 4 --paste /path/to/syncserver/syncserver.ini &

... alebo tento:

make serve &

Prvá možnosť umožňuje vybrať umiestnenie konfiguračného súboru; a tiež uviesť argument --threads 4, ktorý umožňuje priradiť viac výkonu synchronizačnému serveru.

Ak chcete spustiť server pri každom spustení vašej inštancie, môžete do crontab pridať nasledujúci riadok zadaním crontab -epríkazu:

@reboot ./path/to/syncserver/local/bin/gunicorn --paste /path/to/syncserver/syncserver.ini &

Konfigurácia webového servera

Môžete použiť rôzne webové servery, ktoré sú kompatibilné s WSGIprotokolom. Napríklad:

  • Nginx s uWSGI.
  • Apache v kombinácii s mod_wsgi.

Nginx

Pre Nginx musíte použiť vstavaný proxy server Nginx, ako je uvedené nižšie:

server {
        listen  80;
        server_name fsync.example.com;

        location / {
                proxy_set_header Host $http_host;
                proxy_set_header X-Forwarded-Proto $scheme;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_redirect off;
                proxy_read_timeout 120;
                proxy_connect_timeout 10;
                proxy_pass http://127.0.0.1:5000/;
        }
}

Nginx + uWSGI

Používatelia Nginx môžu používať iba soket WSGI.

Inštalácia uWSGIcez Pip:

pip install uwsgi

Nainštalujte uWSGIstiahnutím zdrojového tarballu:

wget https://projects.unbit.it/downloads/uwsgi-latest.tar.gz
tar zxvf uwsgi-latest.tar.gz
cd <dir>
make

Poznámka : Po zostavení budete mať uwsgibinárny súbor v aktuálnom adresári.

Po inštalácii ho spustite s nasledujúcimi možnosťami:

uwsgi --plugins python27 --manage-script-name \
--mount /<location>=/path/to/syncserver/syncserver.wsgi \
--socket /path/to/uwsgi.sock

Potom použite nasledujúcu konfiguráciu Nginx:

location /<location>/ {
  include uwsgi_params;
  uwsgi_pass unix:/path/to/uwsgi.sock;
}

Apache

Inštalovať mod_wsgi:

apt-get install libapache2-mod-wsgi

Potom použite nasledujúci vhost:

<VirtualHost *:80>
  ServerName sync.example.com
  DocumentRoot /path/to/syncserver
  WSGIProcessGroup sync
  WSGIDaemonProcess sync user=sync group=sync processes=2 threads=25 python-path=/path/to/syncserver/local/lib/python2.7/site-packages/
  WSGIPassAuthorization On
  WSGIScriptAlias / /path/to/syncserver/syncserver.wsgi
  CustomLog /var/log/apache2/sync.example.com-access.log combined
  ErrorLog  /var/log/apache2/sync.example.com-error.log
</VirtualHost>

Konfigurácia klienta (Firefox)

Po nainštalovaní a konfigurácii servera by ste mali nakonfigurovať desktopového klienta Firefox, aby mohol komunikovať s vaším novým synchronizačným serverom. Skôr ako začnete, ak ste už pripojení k serverom Firefox Sync Server, musíte sa odhlásiť. V opačnom prípade pripojenie k novému serveru nemusí fungovať.

Najprv otvorte novú kartu a zadajte nasledujúcu adresu:

about:config

Do vyhľadávacieho panela zadajte identity.sync.tokenserver.uria zmeňte jeho hodnotu na adresu URL vášho servera s cestou token/1.0/sync/1.5:

http://sync.example.com/token/1.0/sync/1.5

Ako nastaviť bezobslužné aktualizácie na Debian 9 (Stretch)

Ako nastaviť bezobslužné aktualizácie na Debian 9 (Stretch)

Používate iný systém? Ak si zakúpite server Debian, mali by ste mať vždy najnovšie bezpečnostné záplaty a aktualizácie, či už spíte alebo nie

Nastavte si svoj vlastný DNS server na Debian/Ubuntu

Nastavte si svoj vlastný DNS server na Debian/Ubuntu

Tento tutoriál vysvetľuje, ako nastaviť server DNS pomocou Bind9 na Debiane alebo Ubuntu. V celom článku podľa toho nahraďte názov vašej-domény.com. Pri th

Kompilujte a nainštalujte Nginx pomocou modulu PageSpeed ​​na Debian 8

Kompilujte a nainštalujte Nginx pomocou modulu PageSpeed ​​na Debian 8

V tomto článku uvidíme, ako skompilovať a nainštalovať hlavnú líniu Nginx z oficiálnych zdrojov Nginx pomocou modulu PageSpeed, ktorý vám umožňuje t

Ako nainštalovať Kanboard na Debian 9

Ako nainštalovať Kanboard na Debian 9

Používate iný systém? Úvod Kanboard je bezplatný a otvorený softvérový program na riadenie projektov, ktorý je navrhnutý tak, aby uľahčil a vizualizoval

Ako nainštalovať Gitea na Debian 9

Ako nainštalovať Gitea na Debian 9

Používate iný systém? Gitea je alternatívny open source systém na správu verzií s vlastným hosťovaním, ktorý používa Git. Gitea je napísaná v Golangu a je

Nainštalujte Lynis na Debian 8

Nainštalujte Lynis na Debian 8

Úvod Lynis je bezplatný nástroj na auditovanie systému s otvoreným zdrojovým kódom, ktorý používajú mnohí správcovia systému na overenie integrity a posilnenie svojich systémov. ja

Ako nainštalovať Thelia 2.3 na Debian 9

Ako nainštalovať Thelia 2.3 na Debian 9

Používate iný systém? Thelia je open source nástroj na vytváranie webových stránok elektronického podnikania a správu online obsahu napísaného v PHP. Zdrojový kód Thelia i

Vytvorenie siete serverov Minecraft pomocou BungeeCord na Debian 8, Debian 9 alebo CentOS 7

Vytvorenie siete serverov Minecraft pomocou BungeeCord na Debian 8, Debian 9 alebo CentOS 7

Čo budete potrebovať Vultr VPS s aspoň 1 GB RAM. Prístup SSH (s oprávneniami root/administrátor). Krok 1: Inštalácia BungeeCord Najprv veci

Ako nainštalovať Golang 1.8.3 na CentOS 7, Ubuntu 16.04 a Debian 9

Ako nainštalovať Golang 1.8.3 na CentOS 7, Ubuntu 16.04 a Debian 9

Golang je programovací jazyk vyvinutý spoločnosťou Google. Vďaka svojej všestrannosti, jednoduchosti a spoľahlivosti sa Golang stal jedným z najpopulárnejších

Obnovte koreňové heslo MySQL na Debian/Ubuntu

Obnovte koreňové heslo MySQL na Debian/Ubuntu

Ak ste zabudli svoje root heslo MySQL, môžete ho resetovať podľa krokov v tomto článku. Proces je pomerne jednoduchý a funguje na nich

Vytváranie sieťových zdieľaní pomocou Samby v Debiane

Vytváranie sieťových zdieľaní pomocou Samby v Debiane

Sú chvíle, keď potrebujeme zdieľať súbory, ktoré musia byť viditeľné pre klientov Windows. Keďže systémy založené na poistkách fungujú iba na Linuxe, predstavíme sa

Nastavenie Counter Strike: Zdroj na Debiane

Nastavenie Counter Strike: Zdroj na Debiane

V tejto príručke nastavíme herný server Counter Strike: Source na Debiane 7. Tieto príkazy boli testované na Debiane 7, ale mali by tiež fungovať

Ako nainštalovať Unturned 2.2.5 na Debian 8

Ako nainštalovať Unturned 2.2.5 na Debian 8

V tejto príručke sa dozviete, ako nastaviť server Unturned 2.2.5 na Vultr VPS so systémom Debian 8. Poznámka: Toto je upravená verzia Unturned, ktorá

Ako nainštalovať Cachet na Debian 8

Ako nainštalovať Cachet na Debian 8

V tomto návode sa naučíte, ako nainštalovať Cachet na Debian 8. Cachet je výkonný open source systém stavových stránok. Inštalácia Tento tutoriál práve pokračuje

Automaticky zálohujte viacero databáz MySQL alebo MariaDB

Automaticky zálohujte viacero databáz MySQL alebo MariaDB

Úvod V tomto článku si dobre prejdeme, ako zálohovať viacero databáz MySQL alebo MariaDB, ktoré sedia na rovnakom počítači pomocou vlastného bash skriptu.

Nastavenie Chroota v Debiane

Nastavenie Chroota v Debiane

Tento článok vás naučí, ako nastaviť chroot väzenie v Debiane. Predpokladám, že používate Debian 7.x. Ak používate Debian 6 alebo 8, môže to fungovať, ale

How to Install Reader Self 3.5 RSS Reader on a Debian 9 LAMP VPS

How to Install Reader Self 3.5 RSS Reader on a Debian 9 LAMP VPS

Using a Different System? Reader Self 3.5 is a simple and flexible, free and open source, self-hosted RSS reader and Google Reader alternative. Reader Sel

Ako nainštalovať Backdrop CMS 1.8.0 na Debian 9 LAMP VPS

Ako nainštalovať Backdrop CMS 1.8.0 na Debian 9 LAMP VPS

Používate iný systém? Backdrop CMS 1.8.0 je jednoduchý a flexibilný, mobilný, bezplatný a open source systém na správu obsahu (CMS), ktorý nám umožňuje

Ako nainštalovať SteamCMD na váš VPS

Ako nainštalovať SteamCMD na váš VPS

V tomto návode nainštalujeme SteamCMD. SteamCMD je možné použiť na stiahnutie a inštaláciu mnohých herných serverov Steam, ako je Counter-Strike: Global Offensiv

Aktualizujte Python na Debian

Aktualizujte Python na Debian

Ako možno viete, úložiská Debianu sa aktualizujú veľmi pomaly. V čase písania tohto článku sú verzie vydania Pythonu 2.7.12 a 3.5.2, ale v úložisku Debian 8

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Umelá inteligencia nie je v budúcnosti, je tu priamo v súčasnosti V tomto blogu si prečítajte, ako aplikácie umelej inteligencie ovplyvnili rôzne sektory.

Útoky DDOS: Stručný prehľad

Útoky DDOS: Stručný prehľad

Ste aj vy obeťou DDOS útokov a máte zmätok ohľadom metód prevencie? Ak chcete vyriešiť svoje otázky, prečítajte si tento článok.

Zaujímalo vás niekedy, ako hackeri zarábajú peniaze?

Zaujímalo vás niekedy, ako hackeri zarábajú peniaze?

Možno ste už počuli, že hackeri zarábajú veľa peňazí, ale premýšľali ste niekedy nad tým, ako môžu zarábať také peniaze? poďme diskutovať.

Revolučné vynálezy od spoločnosti Google, ktoré vám uľahčia život.

Revolučné vynálezy od spoločnosti Google, ktoré vám uľahčia život.

Chcete vidieť revolučné vynálezy od Google a ako tieto vynálezy zmenili život každého dnešného človeka? Potom si prečítajte na blogu a pozrite si vynálezy spoločnosti Google.

Piatok Essential: Čo sa stalo s autami poháňanými AI?

Piatok Essential: Čo sa stalo s autami poháňanými AI?

Koncept samoriadených áut vyraziť na cesty s pomocou umelej inteligencie je snom, ktorý máme už nejaký čas. Ale napriek niekoľkým prísľubom ich nikde nevidno. Prečítajte si tento blog a dozviete sa viac…

Technologická singularita: vzdialená budúcnosť ľudskej civilizácie?

Technologická singularita: vzdialená budúcnosť ľudskej civilizácie?

Ako sa veda vyvíja rýchlym tempom a preberá veľa nášho úsilia, zvyšuje sa aj riziko, že sa vystavíme nevysvetliteľnej singularite. Prečítajte si, čo pre nás môže znamenať singularita.

Vývoj ukladania dát – Infografika

Vývoj ukladania dát – Infografika

Spôsoby ukladania údajov sa môžu vyvíjať už od zrodu údajov. Tento blog sa zaoberá vývojom ukladania údajov na základe infografiky.

Funkcionality vrstiev referenčnej architektúry veľkých dát

Funkcionality vrstiev referenčnej architektúry veľkých dát

Prečítajte si blog, aby ste čo najjednoduchším spôsobom spoznali rôzne vrstvy architektúry veľkých dát a ich funkcie.

6 úžasných výhod toho, že máme v živote inteligentné domáce zariadenia

6 úžasných výhod toho, že máme v živote inteligentné domáce zariadenia

V tomto digitálnom svete sa inteligentné domáce zariadenia stali kľúčovou súčasťou života. Tu je niekoľko úžasných výhod inteligentných domácich zariadení o tom, ako robia náš život, ktorý stojí za to žiť, a ktorý zjednodušujú.

Aktualizácia doplnku macOS Catalina 10.15.4 spôsobuje viac problémov, ako ich rieši

Aktualizácia doplnku macOS Catalina 10.15.4 spôsobuje viac problémov, ako ich rieši

Spoločnosť Apple nedávno vydala doplnkovú aktualizáciu macOS Catalina 10.15.4 na opravu problémov, ale zdá sa, že táto aktualizácia spôsobuje ďalšie problémy, ktoré vedú k blokovaniu počítačov Mac. Prečítajte si tento článok a dozviete sa viac