install.sh: ufw låst til NetBird (wt0) når det finnes

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
Kent 2026-10-06 19:20:47 +02:00
parent ad1715838e
commit 775ab6d075
2 changed files with 15 additions and 2 deletions

View file

@ -16,7 +16,9 @@ Tjenesten er en systemd-brukerenhet: `~/.config/systemd/user/sg-announcer.servic
i koden. Manuelt: `uv run announcer.py --port 8090`. i koden. Manuelt: `uv run announcer.py --port 8090`.
Ny maskin (Debian/Ubuntu/Mint): `git clone https://git.1x1.no/kent/sg-announcer.git` Ny maskin (Debian/Ubuntu/Mint): `git clone https://git.1x1.no/kent/sg-announcer.git`
og `./install.sh` gjør alt (apt, uv, Python 3.13, stemmer, enhet, ufw). Kan og `./install.sh` gjør alt (apt, uv, Python 3.13, stemmer, enhet, ufw). Finnes
NetBird (`wt0`) skrur det på ufw med deny incoming og åpner 22 og porten kun
på `wt0`. Kan
kjøres på nytt. Avspilling bruker `pw-play` når PipeWire kjører, ellers kjøres på nytt. Avspilling bruker `pw-play` når PipeWire kjører, ellers
`paplay` (`player_cmd()`), så Mint 21 med PulseAudio virker også. `paplay` (`player_cmd()`), så Mint 21 med PulseAudio virker også.

View file

@ -81,7 +81,18 @@ systemctl --user enable --now sg-announcer
systemctl --user restart sg-announcer systemctl --user restart sg-announcer
step "Brannmur" step "Brannmur"
if sudo ufw status 2>/dev/null | grep -q "Status: active"; then if ip link show wt0 >/dev/null 2>&1; then
# NetBird er installert: slipp inn kun via VPN-grensesnittet, blokker alt annet.
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow in on wt0 to any port 22 proto tcp comment "ssh via netbird"
sudo ufw allow in on wt0 to any port "$PORT" proto tcp comment "sg-announcer via netbird"
sudo ufw delete allow "$PORT/tcp" >/dev/null 2>&1 || true
sudo ufw --force enable
echo "ufw aktiv: port $PORT og 22 er åpne kun på wt0 (NetBird)."
echo "Vil du også nå sida fra lokalt LAN uten VPN:"
echo " sudo ufw allow from <lan-subnett> to any port $PORT proto tcp"
elif sudo ufw status 2>/dev/null | grep -q "Status: active"; then
sudo ufw allow "$PORT/tcp" comment "sg-announcer" sudo ufw allow "$PORT/tcp" comment "sg-announcer"
else else
echo "ufw er ikke aktiv, ingen regel nødvendig." echo "ufw er ikke aktiv, ingen regel nødvendig."