Server
A small harbour at the edge of the network. A small, static-first website about useful knowledge, digital independence, self-reliance and things worth keeping.
Schemerhaven Server Handbook
“A small harbour deserves a reliable lighthouse.”
1. Introduction
This document describes the complete technical setup of the Schemerhaven server.
It serves four purposes:
- Documentation
- Disaster recovery
- Future maintenance
- Design rationale
Rather than being a collection of commands, this handbook explains why the server has been built in a particular way.
The server intentionally remains small.
Whenever possible the simplest solution is preferred over the most feature-rich solution.
The server should remain understandable by one person.
2. Design Philosophy
Schemerhaven intentionally avoids unnecessary complexity.
The server exists to publish information.
It is not intended to become a general-purpose Linux server.
The following principles guide every decision.
2.1 Static first
The website is generated using Hugo.
No CMS.
No database.
No PHP.
No server-side rendering.
All pages are static HTML.
Advantages:
- Fast
- Secure
- Minimal maintenance
- Compatible with old browsers
- Very low hardware requirements
2.2 Open Standards
Whenever possible open protocols are preferred.
Current examples:
- HTTP / HTTPS
- SSH
- SFTP
- XMPP
The server deliberately avoids dependence on commercial communication platforms.
2.3 Minimal software
Every installed package increases maintenance.
Software is only installed when it directly contributes to Schemerhaven.
Current stack:
- DietPi
- OpenSSH
- Nginx
- Certbot
- GoAccess
- Prosody
- Micro
2.4 Long-term stability
The server is considered feature complete.
Future work should primarily consist of:
- security updates
- backups
- documentation
- website content
Major software additions require a clear justification.
3. Hardware
Server
Hardware:
Raspberry Pi 1 Model B
Purpose:
Static web server
Services:
- Website
- XMPP
- SSH
- SFTP
- GoAccess
Why a Raspberry Pi 1?
The hardware itself is part of the project.
The website demonstrates that modern websites do not require modern hardware.
The server consumes little power and has more than sufficient performance for serving static HTML.
4. Network Topology
Internet │ ▼ KPN Modem / Router │ ├── Raspberry Pi │ └── Google Nest WiFi │ └── Workstation
The Raspberry Pi is connected directly to the KPN modem.
The workstation connects through Google Nest.
5. Software Overview
Operating System:
DietPi
Installed services:
OpenSSH
Nginx
Certbot
GoAccess
Prosody
Installed editor:
Micro
Shell:
Bash
Deployment:
Hugo → FileZilla (SFTP)
Monitoring:
GoAccess shipstatus
6. Directory Layout
(To be written)
7. User Accounts
(To be written)
8. SSH & SFTP
(To be written)
9. Nginx
(To be written)
10. HTTPS
(To be written)
11. Hugo Deployment
(To be written)
12. DNS
(To be written)
13. Router Configuration
(To be written)
14. GoAccess
(To be written)
15. Prosody
(To be written)
16. Maintenance
(To be written)
17. Backup Strategy
(To be written)
18. Troubleshooting
(To be written)
Appendix
Configuration snippets
(To be written)