- Use DNS domain for lighthouse discovery (works with HAProxy/Keepalived) - All nodes are lighthouses by default for full redundancy - Remove static_host_map complexity - DNS handles everything - Ask for lighthouse domain during setup - Allow disabling lighthouse mode for remote/edge nodes - Simplified cluster secret: domain:port:ca_cert This allows using existing HA infrastructure (DNS pointing to alive nodes) instead of complex IP tracking and manual updates.
59 lines
1.9 KiB
Markdown
59 lines
1.9 KiB
Markdown
<div align="center">
|
|
<img src='./icon.svg' width="150px">
|
|
<h2>nullpoint</h2>
|
|
<br>
|
|
</div>
|
|
|
|
Secure AlmaLinux (RHEL) Server setup with LUKS encryption, Tang, TPM and RAID1 for Hetzner Dedicated Servers.
|
|
|
|
## Features
|
|
|
|
- AlmaLinux Server base
|
|
- Full disk encryption with LUKS
|
|
- Remote unlock via Tang server
|
|
- TPM-based boot verification
|
|
- mdadm RAID1 + XFS (RHEL standard)
|
|
- SSH key-only access with early boot SSH via dropbear
|
|
- Best-in-class terminal: zsh + powerlevel10k + evil tmux
|
|
|
|
## Unlock Strategy
|
|
|
|
1. **Automatic unlock via Tang/TPM** (default):
|
|
- Configure TPM2 and/or Tang servers in post-install.sh
|
|
- System unlocks automatically if conditions are met
|
|
- No manual intervention required
|
|
|
|
2. **Manual unlock via SSH** (fallback):
|
|
- SSH to server on port 22 (dropbear in early boot)
|
|
- Enter LUKS passphrase when prompted (twice, once per disk)
|
|
- Used when automatic unlock fails or is not configured
|
|
|
|
## Install
|
|
|
|
Boot your Hetzner server into rescue mode and run:
|
|
|
|
```bash
|
|
wget -qO- https://git.dominik-roth.eu/dodox/nullpoint/raw/branch/master/get.sh | bash
|
|
```
|
|
|
|
The installer will:
|
|
- Detect your SSH key from the current session
|
|
- Ask for hostname and username
|
|
- Generate a secure LUKS passphrase (SAVE IT!)
|
|
- Download and configure everything
|
|
- Run Hetzner's installimage automatically
|
|
|
|
## Nullpoint Cluster
|
|
|
|
Create or join a distributed storage cluster with Nebula mesh networking and GlusterFS. Start with a single node and scale up by adding more servers.
|
|
|
|
```bash
|
|
wget -qO- https://git.dominik-roth.eu/dodox/nullpoint/raw/branch/master/cluster-setup.sh | sudo bash
|
|
```
|
|
|
|
- **Storage mounted at**: `/data/storage/` - all data replicated to all nodes
|
|
- **Nebula mesh network** - encrypted overlay with certificate-based trust
|
|
- **DNS-based discovery** - use your existing HA setup (HAProxy/Keepalived)
|
|
- **All nodes are lighthouses** - full redundancy, no single point of failure
|
|
- **Simple secret sharing** - just `domain:port:ca_cert` to join
|