A Firefox Sync Server beállítása Debian 9 vagy Ubuntu 16.04 rendszeren

A Firefox Sync Server beállítása Debian 9 vagy Ubuntu 16.04 rendszeren

A Firefox Sync egy böngésző szinkronizálási funkciója, amellyel megoszthatja adatait és beállításait (például könyvjelzőit, előzményeit, jelszavait, megnyitott lapjait és telepített bővítményeit) az összes eszközén. A Mozilla egy "szinkronizációs szerver" alkalmazást is kínál a Firefox Sync alkalmazáshoz azoknak a felhasználóknak és vállalkozásoknak, akik inkább saját szinkronizálási adataikat tárolják. Ez a cikk bemutatja a Mozilla Sync Server beállítását.

Előfeltételek

  • Egy újonnan telepített Vultr Debian 8, Debian 9 vagy Ubuntu 16.04 szerverpéldány.
  • Egy sudo felhasználó .

Telepítse a szükséges csomagokat

Frissítse a rendszert:

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

A Sync Server felépítéséhez és futtatásához telepítenie kell a következő csomagokat:

  • python-dev
  • git
  • build-essential (C++ fordító, GCC fordító, make és egyéb szükséges eszközök).
  • sqlite3(ha a helyett MySQL adatbázist szeretne használni SQLite, a sqlite3csomagot helyettesítheti a mariadb-servervagy -ra mysql-server).
  • nginx(webszerver. Ön dönti el, melyik webszervert kívánja használni a apache2vagy a nginx).

Telepítse a csomagokat:

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

A szerver építése

A következő parancs beírásával klónozzuk a szinkronizációs szerver Git tárházát, majd beírjuk a mappát:

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

Futtassa a build parancsot, amely letölti a függőségeket és lefordítja a kódot.

make build

Sync Server konfiguráció

A szinkronizáló szerver beállítása nagyon egyszerű, csak néhány paramétert kell módosítani a konfigurációs fájlban ( ./syncserver.ini).

Nyissa meg a konfigurációs fájlt kedvenc szövegszerkesztőjével (például 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

A szerver címét a következő paraméterrel kell megadni public_url:

public_url = http://fsync.example.com

Megjegyzés : a public_url"http://localhost:5000/" alapértelmezett értéke tesztelési célokra működik a helyi gépen.

Az sqluriopciónál töröljük a megjegyzéseket, és megadjuk a helyet, vagy URIamely lehetővé teszi a szerver számára az adatbázishoz való csatlakozást és az információk tárolását:

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

Ha más típusú DB-t szeretne használni:

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

A " secret" paraméterhez létre kell hoznunk egy titkos kulcsot a hitelesítési tokenekhez:

head -c 20 /dev/urandom | sha1sum

Törölje a megjegyzést a titkos paraméter sorából, majd másolja/illessze be a visszaadott karakterláncot a titkos paraméterbe:

secret = db8a203aed5fe3e4594d4b75990acb76242efd35

Megjegyzés : Ha nem ad meg semmit ebben a paraméterben, a szerver generál egyet, de minden alkalommal más lesz, amikor újraindítják.

A " allow\_new\_users" paraméternél törölje a megjegyzést, és állítsa be úgy, truehogy fiókunk először csatlakozhasson a szerverünkhöz:

allow_new_users = true

Ezután módosítjuk a " audiences" paramétert, és ugyanazt adjuk meg, mint a " public_uri" paramétert anélkül, hogy elfelejtené a sor megjegyzését:

audiences = http://fsync.example.com

Végül csak adja hozzá a következő sort a fájl végéhez:

forwarded_allow_ips = *

Ez a sor segít elkerülni a hibaüzeneteket és az engedélyezési problémákat.

A Sync Server indítása

A szinkronizálási kiszolgáló elindításához a következő parancsot indíthatja el:

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

...vagy ez:

make serve &

Az első opció lehetővé teszi a konfigurációs fájl helyének kiválasztását; és adja meg az argumentumot is --threads 4, amely lehetővé teszi nagyobb teljesítmény hozzárendelését a szinkronizáló szerverhez.

Ha a kiszolgálót minden alkalommal el szeretné indítani a példány indításakor, a következő sort adhatja a crontabhoz a crontab -eparancs beírásával :

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

Webszerver konfigurációja

Különféle webszervereket használhat, amelyek kompatibilisek a WSGIprotokollal. Például:

  • Nginx uWSGI-vel.
  • Apache mod_wsgi-vel kombinálva.

Nginx

Az Nginx esetében az Nginx beépített proxyját kell használnia az alábbiak szerint:

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

Az Nginx felhasználók csak a WSGI aljzatot használhatják.

Telepítés uWSGIPip-en keresztül:

pip install uwsgi

Telepítés uWSGIegy forrás tarball letöltésével:

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

Megjegyzés : A build után egy uwsgibináris fájl lesz az aktuális könyvtárban.

A telepítés után indítsa el a következő lehetőségekkel:

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

Ezután használja a következő Nginx konfigurációt:

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

Apache

Telepítés mod_wsgi:

apt-get install libapache2-mod-wsgi

Ezután használja a következő vhost-ot:

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

A kliens konfigurálása (Firefox)

A szerver telepítése és konfigurálása után be kell állítania az asztali Firefox klienst, hogy kommunikáljon az új szinkronizáló kiszolgálóval. Mielőtt elkezdené, ki kell jelentkeznie, ha már csatlakozott a Firefox Sync Servers szolgáltatáshoz. Ellenkező esetben előfordulhat, hogy a kapcsolat az új szerverrel nem működik.

Először nyisson meg egy új lapot, és írja be a következő címet:

about:config

A keresősávba írja be identity.sync.tokenserver.uriés módosítsa az értékét a szerver URL-jére a következő elérési úttal token/1.0/sync/1.5:

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

A Cacti beállítása a Debian Jessie-n

A Cacti beállítása a Debian Jessie-n

Bevezetés A Cacti egy nyílt forráskódú megfigyelő és grafikus eszköz, amely teljes mértékben az RRD adatokon alapul. A Cactuson keresztül szinte bármilyen típusú eszközt felügyelhet

Az iRedMail beállítása a Debian Wheezy rendszeren

Az iRedMail beállítása a Debian Wheezy rendszeren

Más rendszert használ? Ez az oktatóanyag megmutatja, hogyan telepítheti a csoportmunka iRedMail programot a Debian Wheezy friss telepítésére. Használnia kell egy szervát

Felügyelet nélküli frissítések beállítása Debian 9-en (Stretch)

Felügyelet nélküli frissítések beállítása Debian 9-en (Stretch)

Más rendszert használ? Ha Debian szervert vásárol, akkor mindig rendelkeznie kell a legújabb biztonsági javításokkal és frissítésekkel, akár alszik, akár nem

Állítsa be a saját DNS-kiszolgálóját a Debian/Ubuntu rendszeren

Állítsa be a saját DNS-kiszolgálóját a Debian/Ubuntu rendszeren

Ez az oktatóanyag elmagyarázza, hogyan állíthat be DNS-kiszolgálót a Bind9 használatával Debian vagy Ubuntu rendszeren. A cikkben ennek megfelelően helyettesítse be a saját-domain-neve.com címet. TH-nál

Fordítsa le és telepítse az Nginx-et a PageSpeed ​​Modul segítségével a Debian 8 rendszeren

Fordítsa le és telepítse az Nginx-et a PageSpeed ​​Modul segítségével a Debian 8 rendszeren

Ebben a cikkben látni fogjuk, hogyan fordíthatja le és telepítheti az Nginx fővonalat az Nginx hivatalos forrásaiból a PageSpeed ​​modullal, amely lehetővé teszi a

A Kanboard telepítése Debian 9 rendszeren

A Kanboard telepítése Debian 9 rendszeren

Más rendszert használ? Bevezetés A Kanboard egy ingyenes és nyílt forráskódú projektmenedzsment szoftver, amely megkönnyíti és vizualizálja

A Gitea telepítése Debian 9-re

A Gitea telepítése Debian 9-re

Más rendszert használ? A Gitea egy alternatív nyílt forráskódú, saját üzemeltetésű verziókezelő rendszer, amelyet a Git üzemeltet. A Gitea golang nyelven íródott, és az is

Telepítse a Lynis-t Debian 8-ra

Telepítse a Lynis-t Debian 8-ra

Bevezetés A Lynis egy ingyenes, nyílt forráskódú rendszer-ellenőrző eszköz, amelyet sok rendszergazda használ a rendszer integritásának ellenőrzésére és a rendszer megerősítésére. én

A Thelia 2.3 telepítése Debian 9 rendszeren

A Thelia 2.3 telepítése Debian 9 rendszeren

Más rendszert használ? A Thelia egy nyílt forráskódú eszköz e-üzleti webhelyek létrehozására és PHP-ben írt online tartalmak kezelésére. Thelia forráskód i

Minecraft szerverek hálózatának létrehozása BungeeCord segítségével Debian 8, Debian 9 vagy CentOS 7 rendszeren

Minecraft szerverek hálózatának létrehozása BungeeCord segítségével Debian 8, Debian 9 vagy CentOS 7 rendszeren

Mire lesz szüksége Egy Vultr VPS legalább 1 GB RAM-mal. SSH hozzáférés (root/adminisztrátori jogosultságokkal). 1. lépés: A BungeeCord telepítése Először is

A Golang 1.8.3 telepítése CentOS 7, Ubuntu 16.04 és Debian 9 rendszeren

A Golang 1.8.3 telepítése CentOS 7, Ubuntu 16.04 és Debian 9 rendszeren

A Golang a Google által kifejlesztett programozási nyelv. Sokoldalúságának, egyszerűségének és megbízhatóságának köszönhetően a Golang az egyik legnépszerűbb lett

Állítsa vissza a MySQL root jelszót Debian/Ubuntu rendszeren

Állítsa vissza a MySQL root jelszót Debian/Ubuntu rendszeren

Ha elfelejtette MySQL root jelszavát, visszaállíthatja azt az ebben a cikkben található lépések végrehajtásával. A folyamat meglehetősen egyszerű, és ezeken működik

Hálózati megosztások létrehozása a Samba használatával a Debian rendszeren

Hálózati megosztások létrehozása a Samba használatával a Debian rendszeren

Vannak esetek, amikor olyan fájlokat kell megosztanunk, amelyeket a Windows-kliensek láthatnak. Mivel a Fuse-alapú rendszerek csak Linuxon működnek, tessék bemutatni

A Counter Strike beállítása: Forrás Debianon

A Counter Strike beállítása: Forrás Debianon

Ebben az útmutatóban egy Counter Strike: Source játékszervert fogunk beállítani a Debian 7 rendszeren. Ezeket a parancsokat a Debian 7 rendszeren teszteltük, de működniük kell

Az Unturned 2.2.5 telepítése Debian 8 rendszeren

Az Unturned 2.2.5 telepítése Debian 8 rendszeren

Ebből az útmutatóból megtudhatja, hogyan állíthat be egy Unturned 2.2.5 szervert Debian 8-at futtató Vultr VPS-en. Megjegyzés: Ez az Unturned szerkesztett változata, amely nem

A Cachet telepítése Debian 8 rendszeren

A Cachet telepítése Debian 8 rendszeren

Ebből az oktatóanyagból megtudhatja, hogyan telepítheti a Cachet Debian 8-ra. A Cachet egy hatékony, nyílt forráskódú állapotoldal-rendszer. Telepítés Ez a bemutató folyamatban van

Több MySQL vagy MariaDB adatbázis biztonsági mentése automatikusan

Több MySQL vagy MariaDB adatbázis biztonsági mentése automatikusan

Bevezetés Ebben az írásban részletesen végigvezeti, hogyan készíthet biztonsági másolatot több MySQL vagy MariaDB adatbázisról, amelyek ugyanazon a gépen vannak egy egyedi bash szkript segítségével.

Chroot beállítása Debianon

Chroot beállítása Debianon

Ez a cikk megtanítja Önnek, hogyan állítson be chroot börtönt a Debian rendszeren. Feltételezem, hogy a Debian 7.x-et használod. Ha Debian 6-ot vagy 8-at futtat, ez működhet, bu

A Reader Self 3.5 RSS Reader telepítése Debian 9 LAMP VPS-re

A Reader Self 3.5 RSS Reader telepítése Debian 9 LAMP VPS-re

Más rendszert használ? A Reader Self 3.5 egy egyszerű és rugalmas, ingyenes és nyílt forráskódú, saját üzemeltetésű RSS-olvasó és Google Reader alternatíva. Olvasó Sel

A Backdrop CMS 1.8.0 telepítése Debian 9 LAMP VPS-re

A Backdrop CMS 1.8.0 telepítése Debian 9 LAMP VPS-re

Más rendszert használ? A Backdrop CMS 1.8.0 egy egyszerű és rugalmas, mobilbarát, ingyenes és nyílt forráskódú tartalomkezelő rendszer (CMS), amely lehetővé teszi

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A mesterséges intelligencia nem a jövőben, hanem itt a jelenben. Ebben a blogban Olvassa el, hogyan hatott a mesterséges intelligencia alkalmazások különböző ágazatokra.

DDOS támadások: Rövid áttekintés

DDOS támadások: Rövid áttekintés

Ön is DDOS támadások áldozata, és tanácstalan a megelőzési módszereket illetően? Olvassa el ezt a cikket a kérdések megoldásához.

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Talán hallottál már arról, hogy a hackerek sok pénzt keresnek, de elgondolkodtál már azon, hogyan kereshetnek ennyi pénzt? beszéljük meg.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

Szeretné látni a Google forradalmi találmányait, és azt, hogy ezek a találmányok hogyan változtatták meg minden mai ember életét? Ezután olvassa el a blogot, és nézze meg a Google találmányait.

Essential péntek: Mi történt az AI-vezérelt autókkal?

Essential péntek: Mi történt az AI-vezérelt autókkal?

Az önvezető autók koncepciója, hogy mesterséges intelligencia segítségével kerüljenek az utakra, már egy ideje álmunk. De számos ígéret ellenére sehol sem látszanak. Olvassa el ezt a blogot, hogy többet megtudjon…

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Ahogy a tudomány gyors ütemben fejlődik, átveszi erőfeszítéseink nagy részét, megnő annak a kockázata is, hogy alávetjük magunkat egy megmagyarázhatatlan szingularitásnak. Olvassa el, mit jelenthet számunkra a szingularitás.

Az adattárolás fejlődése – Infografika

Az adattárolás fejlődése – Infografika

Az adatok tárolási módjai az Adatok születése óta alakulhatnak. Ez a blog egy infografika alapján mutatja be az adattárolás fejlődését.

A Big Data Reference Architecture Layerek funkciói

A Big Data Reference Architecture Layerek funkciói

Olvassa el a blogot, hogy a legegyszerűbb módon ismerje meg a Big Data Architecture különböző rétegeit és azok funkcióit.

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Ebben a digitálisan vezérelt világban az intelligens otthoni eszközök az élet döntő részévé váltak. Íme az intelligens otthoni eszközök néhány elképesztő előnye, hogyan teszik életünket érdemessé és egyszerűbbé.

A macOS Catalina 10.15.4 kiegészítés frissítése több problémát okoz, mint a megoldás

A macOS Catalina 10.15.4 kiegészítés frissítése több problémát okoz, mint a megoldás

Az Apple a közelmúltban kiadott egy kiegészítést a macOS Catalina 10.15.4-hez a problémák megoldására, de úgy tűnik, hogy a frissítés több problémát okoz, ami a Mac gépek blokkolásához vezet. További információért olvassa el ezt a cikket