geoblock.ini als lokale Config von Git ausnehmen, geoblock.ini.example als Vorlage
This commit is contained in:
@@ -1,2 +1,3 @@
|
||||
__pycache__/
|
||||
*.pyc
|
||||
geoblock.ini
|
||||
|
||||
@@ -14,7 +14,8 @@ und droppt Pakete bereits auf Netzwerk-Ebene.
|
||||
| Datei | Zweck |
|
||||
|---|---|
|
||||
| `geoblock.py` | Hauptscript: laedt Laender-IPs, setzt/entfernt ipset+iptables-Regeln |
|
||||
| `geoblock.ini` | Konfiguration (Laenderliste, Chain, Logging, ...) |
|
||||
| `geoblock.ini.example` | Beispiel-Konfiguration (Vorlage im Repo, siehe unten) |
|
||||
| `geoblock.ini` | Eure eigene, lokale Konfiguration (Laenderliste, Chain, Logging, ...) — **nicht** im Repo/Git, siehe unten |
|
||||
| `geoblock.service` | systemd-Unit, fuehrt `--apply` aus |
|
||||
| `geoblock.timer` | systemd-Timer: beim Booten + einmal taeglich |
|
||||
| `install_geoblock.sh` | Installer: kopiert alles nach `/opt/geoblock`, richtet Timer ein (Testserver optional, siehe unten) |
|
||||
@@ -34,11 +35,23 @@ sudo ./install_geoblock.sh
|
||||
```
|
||||
|
||||
Das:
|
||||
- installiert `geoblock.py` + `geoblock.ini` nach `/opt/geoblock/`
|
||||
(bestehende `.ini` wird NICHT ueberschrieben, neue landet als `.example`)
|
||||
- installiert `geoblock.py` + `geoblock.ini.example` nach `/opt/geoblock/`
|
||||
und erzeugt daraus, falls noch keine vorhanden ist, `geoblock.ini`
|
||||
(bestehende `geoblock.ini` wird NIE ueberschrieben)
|
||||
- legt `/var/log/geoblock/` an
|
||||
- installiert + aktiviert `geoblock.timer` (`systemctl enable --now`)
|
||||
|
||||
**Wichtig:** `geoblock.ini` ist eure lokale, echte Konfiguration (Laender,
|
||||
Ports, ggf. Proxy-Zugangsdaten) — die Datei steht deshalb in `.gitignore`
|
||||
und wird NIE ins Repo committed. Vorlage/Referenz ist `geoblock.ini.example`
|
||||
(die landet im Repo und wird bei jeder Installation frisch mitkopiert).
|
||||
Wer das Script direkt aus dem Repo-Verzeichnis heraus nutzt (ohne
|
||||
`install_geoblock.sh`), muss die `.ini` einmal selbst anlegen:
|
||||
|
||||
```bash
|
||||
cp geoblock.ini.example geoblock.ini
|
||||
```
|
||||
|
||||
**Der Test-Webserver wird standardmaessig NICHT installiert.** Wer ihn
|
||||
braucht (siehe Abschnitt "Verbindungstest" unten), haengt die Option
|
||||
`--with-testserver` an:
|
||||
|
||||
+5
-5
@@ -24,7 +24,7 @@
|
||||
#
|
||||
# Benoetigt im selben Verzeichnis:
|
||||
# geoblock.py
|
||||
# geoblock.ini
|
||||
# geoblock.ini.example
|
||||
# geoblock.service
|
||||
# geoblock.timer
|
||||
# (nur bei --with-testserver:)
|
||||
@@ -61,7 +61,7 @@ done
|
||||
INSTALL_DIR="${INSTALL_DIR:-/opt/geoblock}"
|
||||
LOG_DIR="/var/log/geoblock"
|
||||
|
||||
REQUIRED_FILES=(geoblock.py geoblock.ini geoblock.service geoblock.timer)
|
||||
REQUIRED_FILES=(geoblock.py geoblock.ini.example geoblock.service geoblock.timer)
|
||||
if [[ "$WITH_TESTSERVER" -eq 1 ]]; then
|
||||
REQUIRED_FILES+=(geoblock_testserver.py geoblock-testserver.service)
|
||||
fi
|
||||
@@ -85,12 +85,12 @@ mkdir -p "$INSTALL_DIR"
|
||||
cp "$SRC_DIR/geoblock.py" "$INSTALL_DIR/geoblock.py"
|
||||
chmod 755 "$INSTALL_DIR/geoblock.py"
|
||||
|
||||
cp "$SRC_DIR/geoblock.ini.example" "$INSTALL_DIR/geoblock.ini.example"
|
||||
if [[ -f "$INSTALL_DIR/geoblock.ini" ]]; then
|
||||
echo "==> Bestehende $INSTALL_DIR/geoblock.ini gefunden - wird NICHT ueberschrieben."
|
||||
cp "$SRC_DIR/geoblock.ini" "$INSTALL_DIR/geoblock.ini.example"
|
||||
echo " Neue Beispiel-Config liegt unter $INSTALL_DIR/geoblock.ini.example (zum Vergleich)."
|
||||
echo " Aktuelle Beispiel-Config liegt unter $INSTALL_DIR/geoblock.ini.example (zum Vergleich)."
|
||||
else
|
||||
cp "$SRC_DIR/geoblock.ini" "$INSTALL_DIR/geoblock.ini"
|
||||
cp "$SRC_DIR/geoblock.ini.example" "$INSTALL_DIR/geoblock.ini"
|
||||
echo " -> bitte $INSTALL_DIR/geoblock.ini pruefen/anpassen (Laenderliste!)."
|
||||
fi
|
||||
|
||||
|
||||
Reference in New Issue
Block a user