Seadistage Firefoxi sünkroonimisserver versioonis Debian 9 või Ubuntu 16.04

Firefoxi sünkroonimine on brauseri sünkroonimisfunktsioon, mis võimaldab teil jagada oma andmeid ja eelistusi (nagu järjehoidjad, ajalugu, paroolid, avatud vahelehed ja installitud lisandmoodulid) kõigis oma seadmetes. Mozilla pakub ka "sünkroonimisserveri" rakendust kasutamiseks koos Firefoxi sünkroonimisega kasutajatele ja ettevõtetele, kes eelistavad majutada oma sünkroonimisandmeid. See artikkel näitab, kuidas seadistada Mozilla Sync Server.

Eeltingimused

  • Äsja juurutatud Vultr Debian 8, Debian 9 või Ubuntu 16.04 serveri eksemplar.
  • Sudo kasutaja .

Installige vajalikud paketid

Uuenda süsteemi:

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

Sünkroonimisserveri loomiseks ja käitamiseks peate installima järgmised paketid:

  • python-dev
  • git
  • build-essential (C++ kompilaator, GCC kompilaator, make ja muud vajalikud tööriistad).
  • sqlite3(kui soovite kasutada MySQL-i andmebaasi asemel SQLite, võite sqlite3paketi asendada mariadb-servervõi mysql-server).
  • nginx(veebiserver. Saate valida, millist veebiserverit soovite kasutada apache2või nginx).

Installige paketid:

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

Serveri ehitamine

Kloonime sünkroonimisserveri Giti hoidla, tippides järgmise käsu ja sisestades seejärel kausta:

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

Käivitage ehitamiskäsk, mis laadib alla sõltuvused ja kompileerib koodi.

make build

Sünkrooni serveri konfiguratsioon

Sünkroonimisserveri seadistamine on väga lihtne, konfiguratsioonifailis ( ./syncserver.ini) on vaja muuta vaid mõnda parameetrit .

Avage konfiguratsioonifail oma lemmiktekstiredaktoriga (näiteks 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

Teie serveri aadress tuleb määrata parameetri kaudu public_url:

public_url = http://fsync.example.com

Märkus : vaikeväärtus public_url"http://localhost:5000/" töötab teie kohalikus masinas testimise eesmärgil.

Kui sqlurivõimalus, siis kommenteeri ja pane asukoha või URImis võimaldab serveri ühendamiseks andmebaasi ja säilitab teabe:

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

Kui soovite kasutada teist tüüpi DB-d:

sqluri = pymysql://username:password@db.example.com/sync

secretParameetri " " jaoks peame genereerima autentimislubade jaoks salajase võtme:

head -c 20 /dev/urandom | sha1sum

Tühjendage salajase parameetri rida ja kopeerige/kleepige tagastatud string salajasse parameetrisse:

secret = db8a203aed5fe3e4594d4b75990acb76242efd35

Märkus . Kui te sellesse parameetrisse midagi ei lisa, genereerib server selle, kuid see muutub iga kord, kui server taaskäivitatakse.

allow\_new\_usersParameetri " " puhul tühjendage see ja määrake see nii, trueet see lubaks meie kontol esimest korda meie serveriga ühenduse luua:

allow_new_users = true

Seejärel muudame audiencesparameetrit " " ja paneme sama asja, mis public_uriparameetriga " ", unustamata rea ​​kommentaare tühistada:

audiences = http://fsync.example.com

Lõpuks lisage lihtsalt oma faili lõppu järgmine rida:

forwarded_allow_ips = *

See rida aitab teil vältida veateateid ja autoriseerimisprobleeme.

Sünkroonimisserveri käivitamine

Sünkroonimisserveri käivitamiseks võite käivitada järgmise käsu:

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

... või see:

make serve &

Esimene võimalus võimaldab valida konfiguratsioonifaili asukoha; ja panna ka argument --threads 4, mis võimaldab määrata sünkroonimisserverile rohkem võimsust.

Serveri käivitamiseks iga kord, kui eksemplar käivitub, saate oma crontabile lisada järgmise rea, tippides crontab -ekäsu:

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

Veebiserveri konfiguratsioon

Saate kasutada erinevaid veebiservereid, mis WSGIprotokolliga ühilduvad . Näiteks:

  • Nginx uWSGI-ga.
  • Apache kombineerituna mod_wsgi-ga.

Nginx

Nginxi jaoks peate kasutama Nginxi sisseehitatud puhverserverit, nagu allpool näidatud:

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

Nginxi kasutajad saavad kasutada ainult WSGI pesa.

Installige uWSGIPipi kaudu:

pip install uwsgi

Installige uWSGIallika tarballi allalaadimise kaudu:

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

Märkus . Pärast ehitamist on uwsgipraeguses kataloogis binaarfail.

Pärast installimist käivitage see järgmiste valikutega:

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

Seejärel kasutage järgmist Nginxi konfiguratsiooni:

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

Apache

Installige mod_wsgi:

apt-get install libapache2-mod-wsgi

Seejärel kasutage järgmist vhosti:

<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>

Kliendi konfigureerimine (Firefox)

Kui server on installitud ja konfigureeritud, peaksite konfigureerima töölaua Firefoxi kliendi uue sünkroonimisserveriga suhtlema. Kui olete juba Firefoxi sünkroonimisserveritega ühendatud, peate enne alustamist välja logima. Vastasel juhul ei pruugi ühendus uue serveriga toimida.

Esmalt avage uus vahekaart ja sisestage järgmine aadress:

about:config

Sisestage otsinguribale identity.sync.tokenserver.urija muutke selle väärtus oma serveri URL-iks, mille tee on token/1.0/sync/1.5:

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

Jäta kommentaar

Masinate tõus: AI tegelikud rakendused

Masinate tõus: AI tegelikud rakendused

Tehisintellekt ei ole tulevik, see on siin, olevikus. Sellest blogist loe, kuidas tehisintellekti rakendused on mõjutanud erinevaid sektoreid.

DDOS-i rünnakud: lühike ülevaade

DDOS-i rünnakud: lühike ülevaade

Kas olete ka DDOS-i rünnakute ohver ja olete segaduses ennetusmeetodite osas? Oma päringute lahendamiseks lugege seda artiklit.

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Võib-olla olete kuulnud, et häkkerid teenivad palju raha, kuid kas olete kunagi mõelnud, kuidas nad sellist raha teenivad? arutleme.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Kas soovite näha Google'i revolutsioonilisi leiutisi ja seda, kuidas need leiutised muutsid iga inimese elu tänapäeval? Seejärel lugege ajaveebi, et näha Google'i leiutisi.

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Isejuhtivate autode kontseptsioon tehisintellekti abil teedele jõudmiseks on meil juba mõnda aega unistus. Kuid vaatamata mitmele lubadusele pole neid kusagil näha. Lisateabe saamiseks lugege seda ajaveebi…

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Kuna teadus areneb kiiresti, võttes üle suure osa meie jõupingutustest, suureneb ka oht, et allume seletamatule singulaarsusele. Loe, mida singulaarsus meie jaoks tähendada võiks.

Suurandmete viitearhitektuuri kihtide funktsioonid

Suurandmete viitearhitektuuri kihtide funktsioonid

Lugege ajaveebi, et kõige lihtsamal viisil teada saada Big Data Architecture'i erinevaid kihte ja nende funktsioone.

Andmesalvestuse areng – infograafik

Andmesalvestuse areng – infograafik

Andmete säilitamise meetodid on arenenud alates andmete sünnist. See ajaveeb käsitleb infograafiku alusel andmete salvestamise arengut.

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

Selles digipõhises maailmas on nutikad koduseadmed muutunud elu oluliseks osaks. Siin on mõned nutikate koduseadmete hämmastavad eelised, mis muudavad meie elu elamisväärseks ja lihtsamaks.

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

Hiljuti andis Apple välja macOS Catalina 10.15.4 täiendusvärskenduse probleemide lahendamiseks, kuid tundub, et värskendus põhjustab rohkem probleeme, mille tulemuseks on Maci masinate tellimine. Lisateabe saamiseks lugege seda artiklit