Konfiguro serverin Firefox Sync në Debian 9 ose Ubuntu 16.04

Konfiguro serverin Firefox Sync në Debian 9 ose Ubuntu 16.04

Firefox Sync është një veçori e sinkronizimit të shfletuesit që ju lejon të ndani të dhënat dhe preferencat tuaja (si p.sh. faqeshënuesit, historikun, fjalëkalimet, skedat e hapura dhe shtesat e instaluara) në të gjitha pajisjet tuaja. Mozilla ofron gjithashtu një aplikacion "server sinkronizimi" për përdorim me Firefox Sync për përdoruesit dhe bizneset që preferojnë të mbajnë të dhënat e tyre të sinkronizimit. Ky artikull ju tregon se si të konfiguroni Mozilla Sync Server.

Parakushtet

  • Një shembull i serverit të sapo vendosur Vultr Debian 8, Debian 9 ose Ubuntu 16.04.
  • Një përdorues sudo .

Instaloni paketat e nevojshme

Përditëso sistemin:

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

Për të ndërtuar dhe ekzekutuar serverin Sync, do t'ju duhet të instaloni këto paketa:

  • python-dev
  • git
  • build-essential (Përpiluesi C++, përpiluesi GCC, make dhe mjete të tjera të nevojshme).
  • sqlite3(nëse dëshironi të përdorni një bazë të dhënash MySQL në vend të SQLite, mund ta zëvendësoni sqlite3paketën me mariadb-serverose mysql-server).
  • nginx(serveri i uebit. Varet nga ju që të zgjidhni nga cili ueb server dëshironi të përdorni apache2ose nginx).

Instaloni paketat:

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

Ndërtimi i serverit

Ne do të klonojmë depon e Git të serverit të sinkronizimit duke shtypur komandën e mëposhtme dhe më pas do të futim dosjen:

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

Ekzekutoni komandën e ndërtimit e cila do të shkarkojë varësitë dhe do të përpilojë kodin.

make build

Sinkronizimi i konfigurimit të serverit

Konfigurimi i serverit të sinkronizimit është shumë i thjeshtë, ka vetëm disa parametra për të ndryshuar në skedarin e konfigurimit ( ./syncserver.ini).

Hapni skedarin e konfigurimit me redaktuesin tuaj të preferuar të tekstit (për shembull 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 e serverit tuaj duhet të specifikohet nëpërmjet parametrit public_url:

public_url = http://fsync.example.com

Shënim : vlera e paracaktuar e public_url"http://localhost:5000/" do të funksionojë për qëllime testimi në makinën tuaj lokale.

sqluriopsion, ne do të çkomentojmë dhe vendosim vendndodhjen ose URIqë do të lejojë serverin të lidhë bazën e të dhënave dhe të ruajë informacionin:

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

Nëse dëshironi të përdorni një lloj tjetër DB:

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

Për secretparametrin " ", do të duhet të gjenerojmë një çelës sekret për shenjat e vërtetimit:

head -c 20 /dev/urandom | sha1sum

Çkomentoni rreshtin e parametrit sekret dhe më pas kopjoni/ngjisni vargun e kthyer në parametrin sekret:

secret = db8a203aed5fe3e4594d4b75990acb76242efd35

Shënim : Nëse nuk vendosni asgjë në këtë parametër, serveri do të gjenerojë një të tillë, por ai do të jetë i ndryshëm sa herë që serveri riniset.

Për allow\_new\_usersparametrin " ", hiqni komentin dhe vendoseni që truetë lejojë që llogaria jonë të lidhet me serverin tonë për herë të parë:

allow_new_users = true

Më pas do të modifikojmë audiencesparametrin " " dhe do të vendosim të njëjtën gjë si public_uriparametri " " pa harruar të çkomentojmë rreshtin:

audiences = http://fsync.example.com

Së fundi, thjesht shtoni rreshtin e mëposhtëm në fund të skedarit tuaj:

forwarded_allow_ips = *

Kjo linjë do t'ju ndihmojë të shmangni mesazhet e gabimit dhe çështjet e autorizimit.

Nisja e serverit të sinkronizimit

Për të nisur serverin e sinkronizimit, mund të hapni komandën e mëposhtme:

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

...ose kjo:

make serve &

Opsioni i parë ju lejon të zgjidhni vendndodhjen e skedarit të konfigurimit; dhe gjithashtu për të vendosur argumentin --threads 4, i cili lejon caktimin e më shumë fuqisë në serverin e sinkronizimit.

Për të nisur serverin sa herë që niset shembulli juaj, mund të shtoni rreshtin e mëposhtëm në crontab tuaj duke shtypur crontab -ekomandën:

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

Konfigurimi i serverit në ueb

Ju mund të përdorni serverë të ndryshëm në internet që janë në përputhje me WSGIprotokollin. Për shembull:

  • Nginx me uWSGI.
  • Apache kombinuar me mod_wsgi.

Nginx

Për Nginx, duhet të përdorni përfaqësuesin e integruar të Nginx siç tregohet më poshtë:

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

Është e mundur që përdoruesit e Nginx të përdorin vetëm folenë WSGI.

Instaloni uWSGIpërmes Pip:

pip install uwsgi

Instaloni duke uWSGIshkarkuar një burim tarball:

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

Shënim : Pas ndërtimit, do të keni një uwsgibinar në drejtorinë aktuale.

Pasi të instalohet, filloni me opsionet e mëposhtme:

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

Pastaj përdorni konfigurimin e mëposhtëm Nginx:

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

Apache

Instaloni mod_wsgi:

apt-get install libapache2-mod-wsgi

Pastaj përdorni vhost-in e mëposhtëm:

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

Konfiguro klientin (Firefox)

Pasi serveri të jetë instaluar dhe konfiguruar, duhet të konfiguroni klientin e desktopit Firefox për të folur me serverin tuaj të ri Sync. Përpara se të filloni, nëse tashmë jeni lidhur me serverët e Firefox Sync, duhet të dilni. Përndryshe, lidhja me serverin e ri mund të mos funksionojë.

Së pari, hapni një skedë të re dhe shkruani adresën e mëposhtme:

about:config

Në shiritin e kërkimit, futni identity.sync.tokenserver.uridhe ndryshoni vlerën e tij në URL-në e serverit tuaj me një shteg prej token/1.0/sync/1.5:

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

Si të konfiguroni përmirësimet e pambikëqyrura në Debian 9 (Stretch)

Si të konfiguroni përmirësimet e pambikëqyrura në Debian 9 (Stretch)

Përdorimi i një sistemi të ndryshëm? Nëse blini një server Debian, atëherë duhet të keni gjithmonë arnimet dhe përditësimet më të fundit të sigurisë, pavarësisht nëse jeni në gjumë apo jo

Konfiguro serverin tuaj DNS në Debian/Ubuntu

Konfiguro serverin tuaj DNS në Debian/Ubuntu

Ky tutorial shpjegon se si të konfiguroni një server DNS duke përdorur Bind9 në Debian ose Ubuntu. Gjatë gjithë artikullit, zëvendësoni emrin e domain-it tuaj në përputhje me rrethanat. Në

Përpiloni dhe instaloni Nginx me Modulin e PageSpeed ​​në Debian 8

Përpiloni dhe instaloni Nginx me Modulin e PageSpeed ​​në Debian 8

Në këtë artikull, ne do të shohim se si të përpiloni dhe instaloni Nginx mainline nga burimet zyrtare të Nginx me modulin PageSpeed, i cili ju lejon t

Si të instaloni Kanboard në Debian 9

Si të instaloni Kanboard në Debian 9

Përdorimi i një sistemi të ndryshëm? Hyrje Kanboard është një program softuerik për menaxhimin e projekteve me burim të lirë dhe me burim të hapur, i cili është krijuar për të lehtësuar dhe vizualizuar

Si të instaloni Gitea në Debian 9

Si të instaloni Gitea në Debian 9

Përdorimi i një sistemi të ndryshëm? Gitea është një sistem alternativ i kontrollit të versionit me burim të hapur, i vetë-pritur, i mundësuar nga Git. Gitea është shkruar në Golang dhe është

Instaloni Lynis në Debian 8

Instaloni Lynis në Debian 8

Hyrje Lynis është një mjet falas, me burim të hapur të auditimit të sistemit, që përdoret nga shumë administratorë të sistemit për të verifikuar integritetin dhe për të forcuar sistemet e tyre. Unë

Si të instaloni Thelia 2.3 në Debian 9

Si të instaloni Thelia 2.3 në Debian 9

Përdorimi i një sistemi të ndryshëm? Thelia është një mjet me burim të hapur për krijimin e faqeve të internetit të e-biznesit dhe menaxhimin e përmbajtjes në internet të shkruar në PHP. Kodi burimor Thelia i

Krijimi i një rrjeti të serverëve Minecraft me BungeeCord në Debian 8, Debian 9 ose CentOS 7

Krijimi i një rrjeti të serverëve Minecraft me BungeeCord në Debian 8, Debian 9 ose CentOS 7

Çfarë ju nevojitet një Vultr VPS me të paktën 1 GB RAM. Qasje SSH (me privilegje root/administrative). Hapi 1: Instalimi i BungeeCord Gjërat e para

Si të instaloni Golang 1.8.3 në CentOS 7, Ubuntu 16.04 dhe Debian 9

Si të instaloni Golang 1.8.3 në CentOS 7, Ubuntu 16.04 dhe Debian 9

Golang është një gjuhë programimi e zhvilluar nga Google. Falë shkathtësisë, thjeshtësisë dhe besueshmërisë së tij, Golang është bërë një nga më të populluarit

Rivendosni fjalëkalimin rrënjësor MySQL në Debian/Ubuntu

Rivendosni fjalëkalimin rrënjësor MySQL në Debian/Ubuntu

Nëse e keni harruar fjalëkalimin tuaj rrënjësor MySQL, mund ta rivendosni atë duke ndjekur hapat në këtë artikull. Procesi është mjaft i thjeshtë dhe funksionon në to

Vendosja e Counter Strike: Burimi në Debian

Vendosja e Counter Strike: Burimi në Debian

Në këtë udhëzues, ne do të konfigurojmë një server lojërash Counter Strike: Source në Debian 7. Këto komanda janë testuar në Debian 7, por ato gjithashtu duhet të funksionojnë

Si të instaloni Unturned 2.2.5 në Debian 8

Si të instaloni Unturned 2.2.5 në Debian 8

Në këtë udhëzues, do të mësoni se si të konfiguroni një server Unturned 2.2.5 në një Vultr VPS që ekzekuton Debian 8. Shënim: Ky është një version i modifikuar i Unturned që nuk

Si të instaloni Cachet në Debian 8

Si të instaloni Cachet në Debian 8

Në këtë tutorial, do të mësoni se si të instaloni Cachet në Debian 8. Cachet është një sistem i fuqishëm i faqeve të statusit me burim të hapur. Instalimi Ky tutorial po shkon

Rezervoni automatikisht bazat e të dhënave të shumta MySQL ose MariaDB

Rezervoni automatikisht bazat e të dhënave të shumta MySQL ose MariaDB

Hyrje Në këtë shkrim-up, ecni mirë se si të bëni kopje rezervë të bazave të të dhënave të shumta MySQL ose MariaDB që qëndrojnë në të njëjtën makinë duke përdorur një skedar bash të personalizuar

Vendosja e një Chroot në Debian

Vendosja e një Chroot në Debian

Ky artikull do t'ju mësojë se si të vendosni një burg chroot në Debian. Unë supozoj se po përdorni Debian 7.x. Nëse jeni duke ekzekutuar Debian 6 ose 8, kjo mund të funksionojë, por

Si të instaloni Reader Self 3.5 RSS Reader në një Debian 9 LAMP VPS

Si të instaloni Reader Self 3.5 RSS Reader në një Debian 9 LAMP VPS

Përdorimi i një sistemi të ndryshëm? Reader Self 3.5 është një lexues i thjeshtë dhe fleksibël, falas dhe me burim të hapur, i vetë-strehuar lexues RSS dhe alternativë e Google Reader. Lexuesi Sel

Si të instaloni Backdrop CMS 1.8.0 në një Debian 9 LAMP VPS

Si të instaloni Backdrop CMS 1.8.0 në një Debian 9 LAMP VPS

Përdorimi i një sistemi të ndryshëm? Sfondi CMS 1.8.0 është një Sistem i Menaxhimit të Përmbajtjes (CMS) i thjeshtë dhe fleksibël, i përshtatshëm për celularin, pa pagesë dhe me burim të hapur që na lejon

Si të instaloni SteamCMD në VPS-në tuaj

Si të instaloni SteamCMD në VPS-në tuaj

Në këtë tutorial ne do të instalojmë SteamCMD. SteamCMD mund të përdoret për të shkarkuar dhe instaluar shumë serverë lojërash Steam, të tilla si Counter-Strike: Global Offensiv

Përditësoni Python në Debian

Përditësoni Python në Debian

Siç mund ta dini, depot e Debian përditësohen shumë ngadalë. Në kohën e shkrimit, versionet e lëshimit të Python janë në 2.7.12 dhe 3.5.2, por në depo Debian 8

Si të konfiguroni Samba me Block Storage në Debian 9

Si të konfiguroni Samba me Block Storage në Debian 9

Samba është një zgjidhje me burim të hapur që i lejon përdoruesit të konfigurojnë skedarë të shpejtë dhe të sigurt dhe të printojnë shpërndarje. Në këtë artikull, unë do të mbuloj se si të konfiguroni zgjuarsinë Samba

Ngritja e makinave: Aplikimet në botën reale të AI

Ngritja e makinave: Aplikimet në botën reale të AI

Inteligjenca Artificiale nuk është në të ardhmen, është këtu në të tashmen Në këtë blog Lexoni se si aplikacionet e inteligjencës artificiale kanë ndikuar në sektorë të ndryshëm.

Sulmet DDOS: Një përmbledhje e shkurtër

Sulmet DDOS: Një përmbledhje e shkurtër

A jeni edhe ju viktimë e Sulmeve DDOS dhe jeni konfuz në lidhje me metodat e parandalimit? Lexoni këtë artikull për të zgjidhur pyetjet tuaja.

A e keni pyetur ndonjëherë veten se si fitojnë para hakerët?

A e keni pyetur ndonjëherë veten se si fitojnë para hakerët?

Ju mund të keni dëgjuar se hakerët fitojnë shumë para, por a keni menduar ndonjëherë se si i fitojnë ato para? Le te diskutojme.

Shpikjet revolucionare nga Google që do tju bëjnë të lehtë jetën tuaj.

Shpikjet revolucionare nga Google që do tju bëjnë të lehtë jetën tuaj.

Dëshironi të shihni shpikjet revolucionare nga Google dhe se si këto shpikje ndryshuan jetën e çdo njeriu sot? Më pas lexoni në blog për të parë shpikjet nga Google.

E Premte Thelbësore: Çfarë ndodhi me Makinat e drejtuara nga AI?

E Premte Thelbësore: Çfarë ndodhi me Makinat e drejtuara nga AI?

Koncepti i makinave vetë-drejtuese për të dalë në rrugë me ndihmën e inteligjencës artificiale është një ëndërr që e kemi prej kohësh. Por, pavarësisht nga disa premtime, ato nuk shihen askund. Lexoni këtë blog për të mësuar më shumë…

Singulariteti teknologjik: Një e ardhme e largët e qytetërimit njerëzor?

Singulariteti teknologjik: Një e ardhme e largët e qytetërimit njerëzor?

Ndërsa Shkenca evoluon me një ritëm të shpejtë, duke marrë përsipër shumë nga përpjekjet tona, rriten edhe rreziqet për t'iu nënshtruar një Singulariteti të pashpjegueshëm. Lexoni, çfarë mund të thotë singulariteti për ne.

Evolucioni i ruajtjes së të dhënave - Infografik

Evolucioni i ruajtjes së të dhënave - Infografik

Metodat e ruajtjes së të dhënave kanë evoluar mund të jenë që nga lindja e të dhënave. Ky blog mbulon evolucionin e ruajtjes së të dhënave në bazë të një infografike.

Funksionalitetet e shtresave të arkitekturës së referencës së të dhënave të mëdha

Funksionalitetet e shtresave të arkitekturës së referencës së të dhënave të mëdha

Lexoni blogun për të njohur shtresat e ndryshme në arkitekturën e të dhënave të mëdha dhe funksionalitetet e tyre në mënyrën më të thjeshtë.

6 Përfitimet e mahnitshme të të pasurit pajisje shtëpiake inteligjente në jetën tonë

6 Përfitimet e mahnitshme të të pasurit pajisje shtëpiake inteligjente në jetën tonë

Në këtë botë të drejtuar nga dixhitali, pajisjet inteligjente të shtëpisë janë bërë një pjesë thelbësore e jetës. Këtu janë disa përfitime të mahnitshme të pajisjeve shtëpiake inteligjente se si ato e bëjnë jetën tonë të vlefshme dhe më të thjeshtë.

Përditësimi shtesë i macOS Catalina 10.15.4 po shkakton më shumë probleme sesa zgjidhja

Përditësimi shtesë i macOS Catalina 10.15.4 po shkakton më shumë probleme sesa zgjidhja

Së fundmi Apple lëshoi ​​macOS Catalina 10.15.4 një përditësim shtesë për të rregulluar problemet, por duket se përditësimi po shkakton më shumë probleme që çojnë në bricking të makinerive mac. Lexoni këtë artikull për të mësuar më shumë