Skip to main content

Seafile, a self-hosted Dropbox alternative

Seafile is an open-source alternative to Cloud drive services like Dropbox, OneDrive (formerly Skydrive), Google Drive, etc. However those services often require you to accept their terms and conditions in order to authorize the provider to access your private data… which is why I prefer to host my own solution. Remember when a product is free, it is often because YOU are the product… It is never too late to take control back of your privacy and you can build & manage your own Dropbox-like solution thanks to Seafile !

The desktop client is light and the interface simple. It displays the list of librairies (owned by you or shared by another user), synchonize it automatically and that’s pretty much it. You cannot do much with the client appart from synching libraires which keeps the client easy to use. The advanced features like versioning, sharing, etc are available from Seafile’s server UI. The desktop client is available on Windows, Mac OS X and Linux and there is also a mobile app available on iOS and Android. I have only tested the iOS one which is fine but some users may find annoying the lack of offline synchronization.

Seafile desktop clientIf you feel like testing Seafile before setting up your own server (which is not really complicated) you can always try their free offer here. You can also stay with me a little bit more to get through an overview of Seafile server.

I host my Seafile instance on a dedicated server running on an Intel Atom N2800, 2GB of RAM and a 500 GB hard drive. Its footprint is really small and only consumes a few MB of RAM. You can even host it on a Raspberry Pi as they have a specific package for it. Compressing large file with Seafile is the only CPU-intensive operation I noticed. It took a few minutes on my server to compress a 1 GB file which is acceptable given it relies on a low consumption CPU meant for mobile usage (Intel Atom).

Seafile server’s UI is great. It is simple, minimal and reactive. There is no fancy or useless features and it is easy to understand. After logging in, you will land on the homepage displaying your librairies:

Seafile server

You can notice a small lock under “My secured library” – that’s because it is encrypted. You need the passphrase to open it which is different from your seafile’s password. The data is encrypted on the server side so if someone hacks your server, he won’t be able to access your files easily.

Browsing a librairy is simple, just click on it and the content will be displayed. It is possible to keep an history of the modifications and customize the retention period for each library. If you want to restore a previous version of a file, just click retore and Seafile will list all the versions available:

Seafile file historyOn top of that Seafile’s developpers use an algorithm called Content Defined Chunking to improve storage efficiency. It means activating history on a library may not increase significantly the storage consumed. Even better, I noticed my users are storing a total of 51 GB of data but Seafile uses around 46 GB on my server thanks to their deduplication mechanism.

It is possible to share a library, folders or files with users or groups of users registered on your Seafile server. You can also generate a public link so they can download or upload files without registering. It is a great way to quickly share files with friends who don’t have an account on your server.

I am not going to go through every feature as I have presented the one that are the most usefull to me but Seafile has a lot more to offer. I think a great tool to collaborate (I wish my company was using it…), it is lightwieght, simple and reliable. The development around Seafile is very active and the team brought great enhancements to their product over the last year. They made a great work to keep it simple and full of those little features that make your life easier. They also did a very good job with the documentation and you can find a lot of details on their website. Install Seafile server, create virtualhost for Nginx / Apache, enable https, configure your firewall, tweaking server conf… everything is explained step by step in the manual. If you feel like trying it, just keep reading and follow the tutorial below !


This tutorial has been created for Debian Wheezy but should work on most Linux distributions.
1) Install dependencies (as root)

2) Create a user for Seafile, download and install it

Visit to get the link to the latest version.

Follow the instructions of the install script to complete setup.

3) Start Seafile server:

You will be asked to create an admin account.

You can now access Seafile by browsing to http://your-server-ip:8000.


Virtualhost configuration

If you prefer to configure a reverse proxy (Apache or Nginx) to access Seafile using a domain name and a SSL connexion, follow the instructions below (don’t forget to replace with your domain).

1) Generate self-signed certificates
2) Configure your domain under Seafile (as seafile user)

Edit /home/seafile/ccnet/ccnet.conf and modify the value of SERVICE_URL as below (replace with your domain)

Then edit /home/seafile/ and add the line below (replace with your domain):

Finally, restart Seafile and enable fastcgi

3) NGINX configuration

Create a virtualhost (e.g. under /etc/nginx/sites-enabled/, copy the following content (replace with your domain), restart Nginx and that’s it !

3-bis) Apache configuration

If you prefer to use Apache instead of Nginx, follow the instructions below. Install dependencies (as root)

Enable mod_rewrite, mod_fastcgi, apache proxy and ssl.

Enable fastcgi in Apache config file under /etc/apache2/apache2.conf:

This is valid for Apache 2.2. If you are using a different version, please consult Seafile manual for configuration. Create a virtualhost (e.g. under /etc/apache2/sites-enabled/, copy the following content (replace with your domain), restart Apache and that’s it !

PHP database management tool – Adminer, the alternative to PHPMyAdmin

adminer database management logo

If you think PHPMyAdmin is too heavy for your server, or wish to have a proper web administration tool for your  databases, Adminer is one of the few alternative projects to PHPMyAdmin, that is still under active development.

Indeed, Adminer (formerly known as phpMinAdmin) is a full-featured database management tool written in PHP. The installation is very easy (Single file) while yet powerful enough to support extensive set of databases, such as MySQL, PostgreSQL, SQLite, MS SQL, Oracle, SimpleDB, Elasticsearch and also MongoDB.

Available in many languages, Adminer have 5 key development priorities. That are:

1. Security,

2. User experience,

3. Great performance,

4. Large feature set,

5. Compact size.

They actually claim to superior in many ways to PHPMyAdmin and you can check their comparison here. Although you may not agree with all their claims, Adminer can be highly customized and is indeed very easy to install (Through your distribution repo or simply by downloading their latest version, available as a single php file!!)

Adminer - Main page screenshot

You can directly check their online demo to give it a try.

And as usual, here is how to install it on your server:


– Installation from your distribution repo:

You can simply install Adminer from the repositories of your distribution. In my case, on Debian 7, I can get the version 3.3.3-1 and to install it, I simply need to run (as root or using sudo)

And you will be able to directly access the web interface through http://YourIP/adminer

– Latest version from the official website

But if you prefer to use the latest version, the installation is still very easy! Only 1 file to donwload.

In your /var/www, you can simply download adminer php’s file. For the v4.1.0, in my case, I will run:

and then I will have directly access to the adminer web interface through http://myIP/adminer-4.1.0.phpAdminer - LoginEasy to install right?

List of alternatives to Google and co for your own server

search engine logoGoogle Search having probably more than 70% market share followed by Bing and Yahoo, Google tends to be unavoidable….but it exists quite a lot of robust alternatives and I wanted to share some of them here.


Obvisouly DuckDuckGo have become quite popular after all the revelation about PRISM, NSA surveillance, etc….. and after testing it for several weeks, I’m quite happy with it, although its was tough to change my habits and I even felt the relevancy of answers was not so good as I was used to the “selected” (Called it restricted) contents from Google (based on my previous history). But actually I’m now very happy  to see the web from a fresh eye!

If you’re not a big fan of DuckDuckGo, I recommend you to give a try to Ixquick or StartPage. (Many more exists tho)

But hey, this is a blog on self hosting or managing your own server…DuckDuckGo is great, but how about having my own search engine?

Basically, you can have 2 types of search engine:

1) The Meta search engine, using the indexes of others search engine (They crawl the web and the meta search engine will use their database to deliver you the content).

It’s usually a light application with a good accuracy (Large number of indexed websites, usually from Google, Yahoo or Bing). Hence you got most of the web under a single click with some added features (Compared to google, etc..) such as privacy or even collaborative. However, you fully rely on the 3rd party databases. If Google remove a website from its database, then you cannot see it.

2) The “real” search engine, clearly like Google and co. Meaning you will need to crawl the web and index it before doing a search. The benefits are a total censorship-free, independence and privacy, however as you can expect, crawling the web is a long job and you won’t be able to compete with Google’s billions of pages indexed and million servers….

Actually, expect for intranet or if you want to have your own search engine restricted in few websites that you can crawl by yourself, I don’t see much reasonable alternatives except the great Yacy (Peer to Peer search engine) that I will detail (and write a tutorial) later.

Here is the list of meta/search engines that worth a try:

1) Meta Search Engine

Searx, opensource meta search engine protecting your privacy with parallel query for faster response, Duckduckgo like !bang functionality with engine shortcuts and many more.

Seeks, opensource collaborative distributed (p2p) search engine that ranks results by social consensus (filter)

MySearch, opensource simple meta search engine (Minimalist design) and respecting your privacy.

2) Search Engine

Yacy, decentralized and censorship free, Yacy allow you to crawl your part of the internet and share your index on p2p. The more people running a node, the faster and more complete it become. (My favourite Search Engine!)


Well, I have to say I didn’t find many still maintained search engines so far, but I’ll continue to look for. if you know any other good ones, please share them on the comment section!


google search engine question why

OpenSource alternatives to Flipboard, Newsstand, Feedly and others (RSS Reader) is full of interesting websites, blogs, peoples, … that you may want to follow, read in a regular basis, but instead of having 10 tab opened and refreshing them everyday (Or keeping a lot of bookmarks to check regularly), it’s more time saving to consolidate all these blogs, websites into a unique service and to see only the recently posted content.

This is what a lot of people were doing with Google Reader (Closed) or now with dedicated apps/online service such as Zite, Flipboard, Newsstand, Feedly, Reverb, Pocket, and more.

Obviously, if you have your own server you may already know some popular alternatives to those services (Tiny Tiny RSS? RSSLounge?…).
Actually there are plenty of alternatives, some with very good design/features, some others with very light requirement or being minimalist.

As I do read quite a lot of different websites (And I’m always keen to diversify my readings), it’s time for me to set up a new RSS service on my server. But which one? Well, let’s try some and I’ll post an installation tutorial for each of them, with some feedback.

Here is the current list I got on hand that I want to test:

Selfoss, From the dev of the very nice but depreciated RSSLounge, once my favourite. As usual, I wrote a tutorial on how to install Selfoss on a Ubuntu/Debian server.

Sismic Reader, Multiusr, in Java, very easy to install and complete, to install it, follow these steps.



Go Read,

MiniFlux, a minimalist RSS Reader without fancy features but only with what it needs. Tutorial available.

FeedHQ, a paid service ($12/year, not much) but with Open Source apps! (Meaning can be freely installed on your server)

Newsblur, free service with some limitation (64 sites follow up with once a day refresh) or paid service for unlimited sites and 10 refresh a day for $24/year but with here again an Open Source app.

Tiny Tiny RSS, I know well this one too but it’s time to write an installation steps article about it.

Universal Aggregator, What if the website don’t export RSS? and want to consolidate the news from RSS and Emails?

1flow, Most probably the one I’ve looking forward to test but not suitable for Self hosting/small servers due to all its dependencies and features.

Leed, responsive design with good performance RSS Reader, looking for an installation guide?

FreshRSS, a free, self-hostable aggregator, one of the best RSS Reader, read this tutorial to see how to install it.

Phppaper, a responsive design RSS reader written in jquery, javascript and php. Here is how to install phppaper.

Readerself, powerful RSS reader with responsive design, LDAP authentication, Feed detection, Adaptive crawl and many more. Simply read this tutorial through to know how to install Readerself.

It’s already quite a lot and should help you see what’s on the web. If you know some interesting services not listed here, please share them in the comments section and I’ll try them out!

So the next article will be about how to install and configure Selfoss.

Shouldn't Be Hard

Jitsi, promissing alternative to Skype and Hangouts

If you are looking for an alternative to Skype or Hangouts that is easy to use, Open Source, well maintained, with promising features, focused on privacy, security and with the ability to host most of it, well I strongly recommend Jitsi !

Alternative to Skype or Hangouts
logo jitsi

“Jitsi (formerly SIP Communicator) is an audio/video and chat communicator that supports protocols such as SIP, XMPP/Jabber, AIM/ICQ, Windows Live, Yahoo! and many other useful features” such as:

  • Desktop sharing
  • Audio & Video conference call
  • Call recording
  • Call & OTR encryption

Jitsi is Open Source / Free Software, and is available under the terms of the LGPL.

Already mufti-platforms (Windows, Mac OS, Linux, Android,…), several developments is being carried to improve even further its features, such as JitMeet, WebRTC JavaScript Application and even a HTML5 interface is about to start being developed.


You could actually host by yourself the XMPP server and their VideoBridge (For multi-user video conference call bridge). But if you don’t want to do so, you could simply register to their XMPP at and start using it !

They actually presented during the FOSDEM 2014 their Jitsi Videobridge, JitMeet and the other components that they used to build the service.


Also, you could find a recent interview of Emil Evov, CEO of Blue Jimp, the company behind the Jitsi open source VoIP client on Worth to read !

I’ve moved completely to Jitsi for my XMPP and SIP experience and I’m very happy with it. Obvisouly a lot of improvement can be made, but the good news is they are really working on it and at a good speed !

Have you tried this service already? Or do you think you use a better alternative?

Communicate effectively...?
Preferred chat system