📖 Overview & Requirements ESSENTIAL
What You'll Build
By the end of this tutorial, you'll have:
- Your own cloud storage (replaces Google Drive/Dropbox)
- Accessible from anywhere with internet
- Unlimited storage space (pay only for what you use)
- Complete privacy - no one can access your files
- Easy web interface for managing everything
💰 Cost Breakdown
- Monthly: €4.51/month for Hetzner Cloud VPS
- Domain (optional): ~$10/year
- Total first year: ~$65 (vs $120+ for Google/Dropbox)
What You Need Before Starting
- A computer (Windows, Mac, or Linux)
- Credit card or PayPal for VPS payment
- 30 minutes of focused time
- Basic ability to copy/paste commands
What is a VPS (Virtual Private Server)?
A VPS is like renting a computer in a professional data center. Instead of buying physical hardware, you get a "virtual" computer that runs on powerful servers.
Think of it like: Renting an apartment vs buying a house. You get your own space, but the building maintenance is handled by someone else.
Benefits: Always online (99.9% uptime), fast internet, no electricity costs at home, professional backups, easy upgrades
🔌 Connect to Your Server ESSENTIAL
What is SSH (Secure Shell)?
SSH is a secure way to connect to and control a remote computer using text commands. It's like having a direct phone line to your server.
Think of it like: Remote desktop, but using text commands instead of clicking with a mouse. More efficient and secure.
Why use it: All server management happens through SSH - it's the standard way to control Linux servers.
Option 1: Web Console (Easiest for Beginners)
Use Hetzner's web console
- In your server panel, click the server name
- Click "Console" tab
- Click "Open Console in Browser"
- Login as "root" with the password from email
Option 2: SSH Client (More Professional)
Windows users: Install SSH client
- Windows 10/11: SSH is built-in (use Command Prompt)
- Or download PuTTY for a GUI
Connect via SSH
ssh root@1.2.3.4
✅ Success Check: You should see something like "root@ubuntu-server:~#" - this means you're connected!
🏠 Install CasaOS ESSENTIAL
What is CasaOS?
CasaOS is like having an app store for your server. Instead of typing complex commands, you get a beautiful web interface where you can install services with one click.
Think of it like: The Apple App Store or Google Play Store, but for server software. Click "install" and it handles all the technical setup.
Makes easy: Installing Nextcloud, password managers, media servers, and 100+ other applications without any technical knowledge.
Update your server
apt update
apt upgrade -y
This ensures your server has the latest security updates. Takes 2-3 minutes.
Install CasaOS
curl -fsSL https://get.casaos.io | sudo bash
This command downloads and installs CasaOS automatically. Takes 3-5 minutes.
Access CasaOS web interface
- Open your web browser
- Go to: http://YOUR-SERVER-IP (replace with your IP)
- You should see the CasaOS welcome screen
- Follow the setup wizard (create username/password)
🔧 Can't Access CasaOS?
- Make sure you're using http:// not https://
- Try http://YOUR-SERVER-IP:81 instead
- Check if firewall is blocking:
ufw status
- If ufw is active:
ufw allow 80,81,443/tcp
✅ Success Check: You should see CasaOS dashboard with colorful tiles and an app store icon.
☁️ Install Nextcloud ESSENTIAL
What is Nextcloud?
Nextcloud is your personal Google Drive replacement. It provides file storage, photo backup, document editing, calendar, contacts, and much more - all under your control.
Think of it like: Google Workspace (Drive, Docs, Calendar, Photos) but running on your own server instead of Google's.
Key features: Unlimited storage, file sync across devices, document editing, calendar, contacts, photo galleries, mobile apps
Open CasaOS App Store
- In CasaOS dashboard, click "App Store" icon
- Search for "Nextcloud"
- Click on the official Nextcloud app
Install Nextcloud
- Click "Install" button
- Leave default settings (CasaOS handles everything)
- Wait 3-5 minutes for installation
- You'll see Nextcloud appear in your dashboard
Initial Nextcloud setup
- Click the Nextcloud tile in CasaOS
- Create admin username and password
- Leave database settings as default
- Click "Finish Setup"
Explore your new cloud
- Upload some test files
- Try the photo gallery
- Check out the calendar and contacts
- Install mobile apps from app stores
🎉 Congratulations! You now have your own cloud storage that rivals Google Drive, completely under your control!
🌐 Setup Domain Name OPTIONAL
Why Get a Domain?
Instead of remembering 1.2.3.4, you can access your cloud at mycloud.example.com. This also enables proper SSL certificates for security.
Purchase a domain
- Recommended registrars: Namecheap, Porkbun
- Choose something memorable like yourname-cloud.com
- Cost: ~$10-15/year depending on extension
Configure DNS
- In your domain registrar's control panel
- Create an A record pointing to your server IP
- Example: cloud.yourdomain.com → 1.2.3.4
- DNS changes take 10-60 minutes to propagate
Enable HTTPS in CasaOS
- Go to CasaOS Settings
- Find SSL/Certificate section
- Enter your domain name
- Enable Let's Encrypt automatic certificates
💡 Free Alternative: Use
DuckDNS for a free subdomain like yourname.duckdns.org
💾 Backup Setup ESSENTIAL
Why Backups Matter
Your VPS could fail, get hacked, or you might accidentally delete something. The 3-2-1 rule: 3 copies of data, 2 different storage types, 1 offsite.
Enable Hetzner snapshots
- Go to your Hetzner console
- Click your server → "Snapshots"
- Create a manual snapshot first
- Enable automatic daily snapshots (+€1.30/month)
Setup Nextcloud external storage backup
- Get a cloud storage account (Google Drive, Dropbox, etc.)
- In Nextcloud: Apps → External storage
- Configure external storage as backup destination
- Setup automatic sync of important files
Install backup software (Advanced)
apt install duplicity -y
💡 Backup Strategy:
- Level 1: Hetzner snapshots (server-level backup)
- Level 2: Nextcloud external storage (file-level backup)
- Level 3: Download important files locally
🔧 Maintenance & Updates ESSENTIAL
Weekly Tasks (5 minutes)
Check system updates
apt update && apt list --upgradable
apt upgrade -y
Check CasaOS for app updates
- Open CasaOS dashboard
- Look for update notifications
- Update apps one by one (test after each)
Monthly Tasks (15 minutes)
Review security logs
fail2ban-client status sshd
journalctl --since "1 month ago" -p err
Test your backups
- Download a few files from your backup
- Verify Hetzner snapshots are working
- Test restore process (in a test environment)
Monitor disk space
df -h
apt autoremove -y
apt autoclean
⚠️ Before Major Updates: Always create a snapshot first! Major updates can break things, and you'll want a way to roll back.