Debian 9 veya Ubuntu 16.04te Firefox Sync Sunucusunu Kurma

Firefox Sync , verilerinizi ve tercihlerinizi (yer işaretleriniz, geçmişiniz, şifreleriniz, açık sekmeler ve yüklü eklentiler gibi) tüm cihazlarınızda paylaşmanıza olanak tanıyan bir tarayıcı senkronizasyon özelliğidir. Mozilla ayrıca, kendi senkronizasyon verilerini barındırmayı tercih eden kullanıcılar ve işletmeler için Firefox Sync ile kullanım için bir "senkronizasyon sunucusu" uygulaması sunar. Bu makalede, Mozilla Sync Server'ın nasıl kurulacağı gösterilmektedir.

Ön şartlar

  • Yeni dağıtılan Vultr Debian 8, Debian 9 veya Ubuntu 16.04 sunucu örneği.
  • Bir sudo kullanıcısı .

Gerekli paketleri kurun

Sistemi güncelleyin:

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

Sync Server'ı oluşturmak ve çalıştırmak için şu paketleri yüklemeniz gerekir:

  • python-dev
  • git
  • build-essential (C ++ derleyici, GCC derleyici, marka ve diğer gerekli araçlar).
  • sqlite3(bunun yerine bir MySQL veritabanı kullanmak SQLiteistiyorsanız, sqlite3paketi mariadb-serverveya ile değiştirebilirsiniz mysql-server).
  • nginx(web sunucusu. Size gelen kullanım istediğiniz web sunucusu seçmek size kalmış apache2veya nginx).

Paketleri yükleyin:

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

Sunucuyu oluşturma

Aşağıdaki komutu yazarak senkronizasyon sunucusunun Git deposunu klonlayacağız ve ardından klasörü gireceğiz:

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

Bağımlılıkları indirecek ve kodu derleyecek olan build komutunu çalıştırın.

make build

Senkronizasyon Sunucusu yapılandırması

Senkronizasyon sunucusunun yapılandırması çok basittir, yapılandırma dosyasında ( ./syncserver.ini) değiştirilecek birkaç parametre vardır .

En sevdiğiniz metin düzenleyicisiyle yapılandırma dosyasını açın (örneğin 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

Sunucunuzun adresi şu parametre ile belirtilmelidir public_url:

public_url = http://fsync.example.com

Not : "http: // localhost: 5000 /" varsayılan değeri public_urlyerel makinenizde test amacıyla çalışacaktır.

In sqluriseçeneği, biz yorumsuz ve konumunu koymak veya olacak URIbu sunucu veritabanına bağlanmak ve bilgi depolamak sağlayacaktır:

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

Başka türde bir DB kullanmak istiyorsanız:

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

" secret" Parametresi için kimlik doğrulama jetonları için gizli bir anahtar oluşturmanız gerekecek:

head -c 20 /dev/urandom | sha1sum

Gizli parametrenin satırını açın ve ardından döndürülen dizeyi gizli parametreye kopyalayın / yapıştırın:

secret = db8a203aed5fe3e4594d4b75990acb76242efd35

Not : Bu parametreye herhangi bir şey koymazsanız, sunucu bir tane oluşturur ancak sunucu her yeniden başlatıldığında farklı olur.

" allow\_new\_users" Parametresi için bunu kaldırın ve truehesabımızın sunucumuza ilk kez bağlanmasına izin verecek şekilde ayarlayın :

allow_new_users = true

Daha sonra " audiences" parametresini değiştiririz ve " " parametresi ile aynı şeyi public_uri, satırı kaldırmayı unutmadan koyarız :

audiences = http://fsync.example.com

Son olarak, dosyanızın sonuna aşağıdaki satırı ekleyin:

forwarded_allow_ips = *

Bu satır, hata mesajlarından ve yetkilendirme sorunlarından kaçınmanıza yardımcı olacaktır.

Eşitleme Sunucusunu Başlatma

Senkronizasyon sunucusunu başlatmak için, aşağıdaki komutu başlatabilirsiniz:

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

... ya da bu:

make serve &

İlk seçenek, yapılandırma dosyasının konumunun seçilmesine izin verir; ve ayrıca --threads 4senkronizasyon sunucusuna daha fazla güç verilmesine izin veren argümanı koymak .

Örneğiniz her önyüklendiğinde sunucuyu başlatmak için, crontab -ekomutu yazarak crontab'ınıza aşağıdaki satırı ekleyebilirsiniz :

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

Web sunucusu yapılandırması

WSGIProtokol ile uyumlu farklı web sunucuları kullanabilirsiniz . Örneğin:

  • Nginx uWSGI ile.
  • Apache mod_wsgi ile birleştirildi.

nginx

Nginx için, Nginx'in yerleşik proxy'sini aşağıda gösterildiği gibi kullanmanız gerekir:

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

Nginx kullanıcılarının yalnızca WSGI soketini kullanmaları mümkündür.

uWSGIPip ile yükleme :

pip install uwsgi

uWSGIBir kaynak tarball indirerek kurun :

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

Not : Derlemeden sonra, geçerli dizinde bir uwsgiikili dosya olacaktır .

Kurulduktan sonra, aşağıdaki seçeneklerle başlatın:

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

Ardından aşağıdaki Nginx yapılandırmasını kullanın:

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

Apaçi

Kurulum mod_wsgi:

apt-get install libapache2-mod-wsgi

Ardından aşağıdaki hayaleti kullanın:

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

İstemciyi yapılandırma (Firefox)

Sunucu kurulduktan ve yapılandırıldıktan sonra, masaüstü Firefox istemcisini yeni Senkronizasyon Sunucunuzla konuşacak şekilde yapılandırmalısınız. Başlamadan önce, Firefox Sync Sunucularına zaten bağlıysanız çıkış yapmalısınız. Aksi takdirde, yeni sunucuyla bağlantı çalışmayabilir.

İlk olarak, yeni bir sekme açın ve aşağıdaki adresi girin:

about:config

Arama çubuğuna identity.sync.tokenserver.urideğerini girin ve sunucunuzun URL'sini aşağıdaki yolla değiştirin token/1.0/sync/1.5:

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


Leave a Comment

Debianda NFS Paylaşımı Ayarla

Debianda NFS Paylaşımı Ayarla

NFS, bilgisayarların bilgisayar ağı üzerindeki dosyalara erişmesine izin veren ağ tabanlı bir dosya sistemidir. Bu kılavuz, klasörleri NF üzerinden nasıl açığa çıkarabileceğinizi açıklar

Debian 9da Diaspora ile Sosyal Ağınızı Kurun

Debian 9da Diaspora ile Sosyal Ağınızı Kurun

Farklı Bir Sistem mi Kullanıyorsunuz? Diaspora gizliliğe duyarlı, açık kaynaklı bir sosyal ağdır. Bu derste, bir Diaspora posının nasıl kurulacağını ve yapılandırılacağını öğreneceksiniz

Debian 9 Üzerinde Yakıt CMS Kurulumu

Debian 9 Üzerinde Yakıt CMS Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Fuel CMS, CodeIgniter tabanlı bir içerik yönetim sistemidir. Kaynak kodu GitHubda barındırılmaktadır. Bu kılavuz size

SSL / TLS ile vsFTPd Nasıl Güvenli Hale Getirilir

SSL / TLS ile vsFTPd Nasıl Güvenli Hale Getirilir

Çok Güvenli FTP arka plan programı, ya da sadece vsFTPd, özelleştirme yeteneği olan hafif bir yazılım parçasıdır. Bu derste bir müttefikimiz olacak

Debian 9 Üzerinde Thelia 2.3 Kurulumu

Debian 9 Üzerinde Thelia 2.3 Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Thelia, e-iş web siteleri oluşturmak ve PHP ile yazılmış çevrimiçi içeriği yönetmek için açık kaynaklı bir araçtır. Thelia kaynak kodu i

Debianda Chroot Oluşturma

Debianda Chroot Oluşturma

Bu makale size Debianda nasıl bir cezaevi hapishane kurulacağını öğretecek. Debian 7.x kullandığınızı varsayıyorum. Debian 6 veya 8 çalıştırıyorsanız, bu işe yarayabilir, bu

Debian 9 InvoicePlane Nasıl Kurulur

Debian 9 InvoicePlane Nasıl Kurulur

Farklı Bir Sistem mi Kullanıyorsunuz? InvoicePlane ücretsiz ve açık kaynaklı bir faturalandırma uygulamasıdır. Kaynak kodu bu Github deposunda bulunabilir. Bu rehber

Debian 9u Debian 10a Yükseltme

Debian 9u Debian 10a Yükseltme

Giriş Debian 10 (Buster), Debian 9un (Stretch) halefidir. 6 Temmuz 2019da piyasaya sürüldü. Bu derste, bir var olanı yükselteceğiz

Debian 9 LAMP VPS Arka Plan CMS 1.8.0 Kurulumu

Debian 9 LAMP VPS Arka Plan CMS 1.8.0 Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Backdrop CMS 1.8.0, basit ve esnek, mobil uyumlu, ücretsiz ve açık kaynaklı bir İçerik Yönetim Sistemidir (CMS)

Debian 9 Üzerinde BookStack Kurulumu

Debian 9 Üzerinde BookStack Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? BookStack, bilgileri düzenlemek ve depolamak için basit, kendi kendine barındırılan, kullanımı kolay bir platformdur. BookStack tamamen ücretsiz ve açık

Ubuntu ve CentOS İçin Daha İyi İzleme Araçları

Ubuntu ve CentOS İçin Daha İyi İzleme Araçları

Giriş Linux sistemleri, süreçleri ve disk alanını izlemeye yardımcı olan varsayılan olarak top, df ve du gibi izleme araçlarıyla birlikte gelir. Çoğu zaman, onlar ar

CentOS 7, Ubuntu 16.04 ve Debian 9da Golang 1.8.3 Kurulumu

CentOS 7, Ubuntu 16.04 ve Debian 9da Golang 1.8.3 Kurulumu

Golang, Google tarafından geliştirilen bir programlama dilidir. Çok yönlülüğü, sadeliği ve güvenilirliği sayesinde Golang en popüler topluluklardan biri haline geldi

Debian 9a Cıvata CMS Takma (Uzatma)

Debian 9a Cıvata CMS Takma (Uzatma)

Farklı Bir Sistem mi Kullanıyorsunuz? Bolt PHP ile yazılmış açık kaynaklı bir CMSdir. Cıvata kaynak kodu GitHubda barındırılıyor. Bu kılavuz size Bolt CMnin nasıl kurulacağını gösterecektir

Munin ile Debian Sunucu Durumunu İzleme

Munin ile Debian Sunucu Durumunu İzleme

Munin, makinenizdeki süreçleri ve kaynakları araştırmak için bir izleme aracıdır ve bilgileri bir web arayüzü aracılığıyla grafiklerde sunar. Aşağıdaki kullanın

Debian 10da Apachede TLS 1.3ü Etkinleştirme

Debian 10da Apachede TLS 1.3ü Etkinleştirme

Farklı Bir Sistem mi Kullanıyorsunuz? TLS 1.3, 2018de RFC 8446da önerilen bir standart olarak yayınlanan Taşıma Katmanı Güvenliği (TLS) protokolünün bir sürümüdür

Debian 9 Üzerinde PyroCMS Kurulumu

Debian 9 Üzerinde PyroCMS Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? PyroCMS, PHP ile yazılmış açık kaynaklı bir CMSdir. PyroCMS kaynak kodu GitHubda barındırılmaktadır. Bu kılavuzda entir boyunca yürüyün

Sunucunuza IP Adresi Aralığı Ekleyin (CentOS / Ubuntu / Debian)

Sunucunuza IP Adresi Aralığı Ekleyin (CentOS / Ubuntu / Debian)

Giriş Bu eğitimde, CentOS, Debian veya Ubuntu çalıştıran bir Linux sunucusuna tüm IP aralığını / alt ağını ekleme işlemini ele alacağız. Süreç

Counter Strikeı Ayarlama: Debianda Kaynak

Counter Strikeı Ayarlama: Debianda Kaynak

Bu kılavuzda, Debian 7de Counter Strike: Source oyun sunucusu kuracağız. Bu komutlar Debian 7de test edildi, ancak aynı zamanda o

Debian Üzerinde Snort Nasıl Yapılandırılır

Debian Üzerinde Snort Nasıl Yapılandırılır

Snort, ücretsiz bir ağ saldırı tespit sistemidir (IDS). Daha az resmi terimle, ağınızı şüpheli etkinlikler için gerçek zamanlı olarak izlemenizi sağlar

Debian 9 Üzerinde Dolibarr Kurulumu

Debian 9 Üzerinde Dolibarr Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Dolibarr, işletmeler için açık kaynaklı bir kurumsal kaynak planlaması (ERP) ve müşteri ilişkileri yönetimi (CRM). Dolibarr

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.

Hala Teslim Edilmeyen Teknoloji Sözleri

Hala Teslim Edilmeyen Teknoloji Sözleri

Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp, uzaktan sağlık hizmetleri ve gelecek nesiller üzerindeki etkisi nedir? Pandemi durumunda iyi bir yer mi değil mi? Bir görünüm bulmak için blogu okuyun!

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Bilgisayar korsanlarının çok para kazandığını duymuş olabilirsiniz, ancak bu kadar parayı nasıl kazandıklarını hiç merak ettiniz mi? Hadi tartışalım.

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

Son zamanlarda Apple, sorunları gidermek için macOS Catalina 10.15.4'ü ek bir güncelleme yayınladı, ancak güncelleme, mac makinelerinde tuğla oluşmasına neden olan daha fazla soruna neden oluyor gibi görünüyor. Daha fazla bilgi edinmek için bu makaleyi okuyun