Running your own Linux home server is a fun learning experience about how networks work and giving new life to an old laptop or using a Raspberry Pi is a cheap and cheerful way to get the job done!
Plus privacy may be important to you. Hosting your own server running your own services gives more control over your data.
Install a stable, well-tested Linux distribution and provide services such as network printing and storage (NAS), perform backups, host web services and much more. Start with a minimal base configuration of Debian and gain access to tens of thousands of packages ready to install.
0. Choose your server
A used laptop - retired in favour of more current and powerful machines - can still deliver plenty of oomph for running a personal server. Frugal with power and come equipped with their own built-in UPS (battery)!
Link: New life for an old laptop
1. Secure access
Use cryptographic keys to secure access to your new home server.
Link: Secure remote access using SSH keys
Fetch the latest fixes, install, and reboot (if necessary).
Link: Automatic security updates
A terminal multiplexor for creating, detaching, re-attaching work areas.
Link: Multiple terminal windows using tmux
Make incremental and automatic backups of a home folder to the server using SSH + rsync + cron.
Link: Backup home
External USB storage + Pi turns any hard drive into a NAS.
Link: Network attached storage
Use a DDNS service to automatically update an IP address.
Link: Access from anywhere in the world using dynamic DNS
Host web applications using PHP + Nginx + PostgreSQL.
Link: Web + database
Access news feeds over the web with Tiny Tiny RSS news reader.
Link: RSS reader
9. Print and scan
Configure a printer + scanner to receive jobs across the local network.
Link: Network printer + scanner
Use a text-based BitTorrent client combined with tmux to create a lightweight torrent server.