HOME SERVER NOTES ================= Sometime around Christmas last year, I wrote about my experiences setting up a Nextcloud server. I shut that server down after learning that Nextcloud had scanned for non-updated servers and reported them to various agencies.[1] I don't think it's wise to run an out-of-date server, but I disagree completely with Nextcloud's decision and I no longer trust them to respect my privacy. Since then, I've been making use of BlackBerry Desktop to sync my work laptop and my phone (an old Bold 9900) offline (via bluetooth). That definitely seems like the most secure approach. But I am still interested in setting up a personal server to store my calendar, contacts, notes, and files, and to facilitate small-scale private communications. That server will be more important if/when I have to 'upgrade' my phone. A replacement for those Nextcloud services is shaping up. My replacement server is a Raspberry Pi Zero (I was originally using a Zero W, but experienced VOIP latency issues, described below) running a 'default' Raspbian Lite installation. Here is the software I am using to replace the Nextcloud functions: *File storage -- WebDav *Calendar and contacts -- Radicale *Notes -- Joplin (which makes use of WebDav) *IM -- Prosody (XMPP) *Private Phone Network -- Asterisk Setup: Several of the instruction pages below might seem to be out of date, but they worked with my completely updated version of raspian-stretch-lite. WebDav. It's amazingly responsive and works well with my laptop. On the downside, I have not found an open source client for Android and the Ghost Commander plugin no longer works. If you know of one, get in touch. I followed these instructions to install: https://www.howtoforge.com/tutorial/how-to-install-webdav-with-lighttpd-on-debian-jessie/ Radicale. I installed version 1.1 from the repository rather than the more up to date version available through python-pip, which wouldn't work on my Pi Zero. Everything has gone without a hitch so far. Installation instructions are here: https://jonathantutorial.blogspot.com/2014/10/how-to-set-up-radicale.html Joplin. It allows you to store your notes on your WebDav server. Configure the Joplin client to sync the notes to a subdirectory in your webdav folder. There is an option to encrypt the files as well. Prosody. I'm already running an XMPP server for circumlunar.space. Prosody is simple to set up and runs flawlessly. The official documentation is great, which I might say is a rarity among open source projects, and something to be commended. Asterisk was fairly simple to set up. I initially found that I was experiencing significant latency, but it was my own fault. Sometimes, I ignore recommendations when I don't like them. In this case, the solution was to go with wired connections all the way. WiFi is your enemy with VOIP. Check out this old (and super simple) configuration guide: https://web.archive.org/web/20100612193611/http://www.beardy.se/2010/05/30/an-introduction-to-asterisk-the-open-source-telephony-project The only change I made was to disable all codecs in /etc/asterisk/sip.conf prior to enabling them, as follows (this is the head, or beginning, of the file): [general] context=incoming disallow=all allow=ulaw allow=alaw allow=gsm Doing this seems to have eliminated some static. I don't really understand why, but somebody, somewhere recommended it. [1] Here's the reddit thread through which I learned about this issue: https://www.reddit.com/r/selfhosted/comments/5ybmf1/nextcloud_scanning_peoples_owncloud_and_nextcloud/ You can read Nextcloud's assessment of what happened here: https://nextcloud.com/blog/nextcloud-releases-security-scanner-to-help-protect-private-clouds/