blog:set_up_private_firefox_sync_server
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
blog:set_up_private_firefox_sync_server [2012-09-28 12:27] – brb | blog:set_up_private_firefox_sync_server [2014-04-24 09:39] (current) – brb | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Set up private firefox sync server ====== | ====== Set up private firefox sync server ====== | ||
- | $ apt-get install python-dev mercurial sqlite3 python-virtualenv apache2-mpm-prefork libapache2-mod-wsgi make | ||
+ | |||
+ | Firefox sync is very handy, if you use firefox on several computers. Since all data is encrypted before it is sent to the server, I could life with my bookmarks stored on a cloud server. However, it wanted the added security of using my own server. Here's how to install one: | ||
+ | |||
+ | < | ||
Add user ffsync: | Add user ffsync: | ||
- | | + | < |
Add apache user (www-data) to group ffsync: | Add apache user (www-data) to group ffsync: | ||
- | | + | < |
Change user: | Change user: | ||
- | | + | < |
Download source files: | Download source files: | ||
- | | + | < |
Create tmp and data subdirectories | Create tmp and data subdirectories | ||
- | | + | < |
Change permissions | Change permissions | ||
- | | + | < |
Compile sync server | Compile sync server | ||
- | | + | < |
- | $ make build | + | $ make build</ |
Change config files, paths in default install store user data in /tmp, not very useful. | Change config files, paths in default install store user data in /tmp, not very useful. | ||
- | | + | < |
- | [..] | + | [..] |
- | os.environ[' | + | os.environ[' |
- | [..] | + | [..] |
- | $ vi development.ini | + | $ vi development.ini |
- | [..] | + | [..] |
- | [handler_syncserver_errors] | + | [handler_syncserver_errors] |
- | class = handlers.RotatingFileHandler | + | class = handlers.RotatingFileHandler |
- | args = (‘/ | + | args = (‘/ |
- | [..] | + | [..] |
- | $ vi etc/ | + | $ vi etc/ |
- | [..] | + | [..] |
- | [storage] | + | [storage] |
- | backend = syncstorage.storage.sql.SQLStorage | + | backend = syncstorage.storage.sql.SQLStorage |
- | sqluri = sqlite://// | + | sqluri = sqlite://// |
- | [..] | + | [..] |
- | [auth] | + | [auth] |
- | backend = services.auth.sql.SQLAuth | + | backend = services.auth.sql.SQLAuth |
- | sqluri = sqlite://// | + | sqluri = sqlite://// |
- | [..] | + | [..] |
- | fallback_node = http:// | + | fallback_node = http:// |
- | [..] | + | [..] |
+ | </ | ||
Change login shell of ffsync to /bin/false. | Change login shell of ffsync to /bin/false. | ||
- | | + | < |
Enable wsgi module | Enable wsgi module | ||
- | | + | < |
Create new apache virtual host | Create new apache virtual host | ||
- | | + | < |
- | | + | < |
- | ServerName sync.mytestdomain.com | + | ServerName sync.mytestdomain.com |
- | ServerAdmin webmaster@mytestdomain.com | + | ServerAdmin webmaster@mytestdomain.com |
- | | + | DocumentRoot / |
- | | + | CustomLog ${APACHE_LOG_DIR}/ |
- | ErrorLog ${APACHE_LOG_DIR}/ | + | ErrorLog ${APACHE_LOG_DIR}/ |
- | | + | < |
- | Order deny, | + | Order deny, |
- | Allow from all | + | Allow from all |
- | </ | + | </ |
- | | + | WSGIProcessGroup ffsync |
- | WSGIDaemonProcess ffsync user=ffsync group=ffsync processes=2 threads=25 | + | WSGIDaemonProcess ffsync user=ffsync group=ffsync processes=2 threads=25 |
- | WSGIPassAuthorization On | + | WSGIPassAuthorization On |
- | WSGIScriptAlias / / | + | WSGIScriptAlias / / |
- | </ | + | </ |
Activate virtual host | Activate virtual host | ||
- | | + | < |
- | $ ln -s ../ | + | $ ln -s ../ |
Check config and restart apache | Check config and restart apache | ||
- | | + | < |
Now you can configure firefox sync with Tools> | Now you can configure firefox sync with Tools> | ||
- | Ref: http:// | + | Ref: [[http:// |
- | + | ||
- | {{tag>}} | + | |
- | ~~LINKBACK~~ | ||
- | ~~DISCUSSION~~ | ||
blog/set_up_private_firefox_sync_server.1348828036.txt.gz · Last modified: 2012-09-28 12:27 by brb