The server runs at the moment on a Raspberry Pi 2, that is connected via ethernet to the router. It runs a current Raspbian OS which is stored on a 16GB micro-sd card (class 10). This SD card is only used during the boot process, the system lives on an (externally powered) USB drive. See this updated for my experience using USB thumbdrives for storage.
- Raspbian as underlying OS
- lighttpd for serving webpages
- MariaDB, as Friendica does need a MySQL compatible DB
- PHP7.0 from Raspbian
- Pelican as CMS for the static part of the pages
- Friendica as social network connected to Diaspora, GNU Social, Hubzilla and Mastodon.
As a very first step after installing the disk image to the RasPi change the SSL default port away from port 22 and change the default user name and password.
I’m using letsencrypt as CA for providing a secure connection to the little box. The cert is obtained using acme-tiny which is short python script to issue and renuew Let’s Encrypt certificates. For configuration hints I’ve used Stong SSL Security on lighttpd by Remy van Elst.