Hey everyone,
I’m looking for some insights to confirm if my home server’s security is up to par against common cyber threats. Here’s a brief rundown of my setup:
-
External Ports: I’ve limited external access to only three ports:
- Port 80 and 443 for Nginx-Proxy-Manager
- Port 51829 for Wireguard VPN
-
Hardware:
- I’m running a Raspberry Pi 4 and a Mini PC.
- Both are connected to the router via Ethernet.
-
Network:
- NPM is set up for reverse proxy.
- SSL is enabled for local DNS - to avoid memorizing IP addresses.
-
Docker:
- All applications are containerized and use
network_mode: bridge
.
- All applications are containerized and use
-
Internet-Facing Services:
- Only two services are exposed to the internet:
- A media server
- The Wireguard VPN
- I’m using free DuckDNS domains, configured with NPM.
- Only two services are exposed to the internet:
-
Firewall:
- Currently, I’m relying on the default settings of Debian 12 and the Docker engine.
- I haven’t set up any specific firewall rules.
Given this setup, do you think my security measures are sufficient? I’m particularly curious about the risks associated with my Docker containers and the exposed ports. Any recommendations or best practices you could share would be greatly appreciated!
Thanks in advance for your help!
Fail2ban is useful to set up.
Put your external facing services behind the VPN, or at least put them in a separate VLAN that’s firewalled in such a way that they can’t reach the rest of the network if they become compromised.
Can you give me some pointers on how to get started on accomplishing this? Maybe some app names or tutorials?
Setup automatic security updates with unattended-upgrades. I don’t know alot about your security expect for the fact that outdated applications are more vulnerable.