Skip to content

Commit c8690d4

Browse files
Merge pull request #2972 from bunkerity/dev
Merge branch "dev" into branch "staging"
2 parents 240c603 + 6f1b3ed commit c8690d4

226 files changed

Lines changed: 5837 additions & 3130 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/rc.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -170,7 +170,11 @@ jobs:
170170
run: echo "version=$(cat src/VERSION | tr -d '\n')" >> "$GITHUB_OUTPUT"
171171
- name: Get VERSION (for RPM based)
172172
id: getversionrpm
173-
run: echo "versionrpm=$(cat src/VERSION | tr -d '\n' | sed 's/-/_/g')" >> "$GITHUB_OUTPUT"
173+
run: |
174+
VERSION="$(tr -d '\n' < src/VERSION)"
175+
# Fedora packaging: use ~ for RC so GA release wins the RPM sort order
176+
RPM_VERSION="$(echo "$VERSION" | sed -E 's/-([Rr][Cc][0-9]*)/~\1/' | sed 's/-/_/g')"
177+
echo "versionrpm=${RPM_VERSION}" >> "$GITHUB_OUTPUT"
174178
175179
# Push Docker images
176180
push-images:

CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,19 @@
1212
- [FEATURE] Enhance the Antibot plugin to better handle redirection back to the original request path after a successful challenge by checking the `Referer` header, ensuring users are redirected to meaningful content rather than static files or other unintended destinations
1313
- [BUGFIX] Fix issues with the Ingress controller regarding reverse proxy settings when using multiple paths per rule and a template by adjusting the indexing logic to be configurable via the new `KUBERNETES_REVERSE_PROXY_SUFFIX_START` setting (default is `1` to keep backward compatibility)
1414
- [BUGFIX] Escape percentage signs in `DATABASE_URI` for Alembic when using the SQLAlchemy URL configuration to prevent formatting errors during migrations
15+
- [BUGFIX] Fix issues with `Autoconf` controllers persisting old instances after they have been deleted from the orchestrator.
1516
- [UI] Enhance service configuration handling during edits and renames to ensure consistency and prevent data loss
1617
- [UI] Enhance session management with Redis support and configurable session lifetime
18+
- [UI] Renamed "Global Configuration" to "Global Settings" in the web UI for clarity
19+
- [UI] Address CSRF token issues in the web UI when not connecting through BunkerWeb
20+
- [UI] Add the possibility to provide a certificate and a key so that the web UI can be served over HTTPS (without requiring a reverse proxy)
1721
- [LINUX] Support Fedora 43
22+
- [LINUX] Update version retrieval for RPM packaging to ensure correct sorting for release candidates
1823
- [DOCS] Add documentation about the new logging settings and how to configure them
24+
- [DOCS] Update database compatibility matrix
1925
- [DEPS] Update lua-resty-session version to v4.1.5
2026
- [DEPS] Update coreruleset-v4 version to v4.21.0
27+
- [DEPS] Updated zlib version to v1.3.1.2
2128

2229
## v1.6.6 - 2025/11/24
2330

docs/advanced.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ You will find more settings about real IP in the [features section](features.md#
4646

4747
=== "Web UI"
4848

49-
Navigate to the **Global config** page, select the **Real IP** plugin and fill out the following settings :
49+
Navigate to the **Global Settings** page, select the **Real IP** plugin and fill out the following settings :
5050

5151
<figure markdown>![Real IP settings (header) using web UI](assets/img/advanced-proxy1.png){ align=center }<figcaption>Real IP settings (header) using web UI</figcaption></figure>
5252

@@ -208,7 +208,7 @@ You will find more settings about real IP in the [features section](features.md#
208208

209209
=== "Web UI"
210210

211-
Navigate to the **Global config** page, select the **Real IP** plugin and fill out the following settings :
211+
Navigate to the **Global Settings** page, select the **Real IP** plugin and fill out the following settings :
212212

213213
<figure markdown>![Real IP settings (PROXY protocol) using web UI](assets/img/advanced-proxy2.png){ align=center }<figcaption>Real IP settings (PROXY protocol) using web UI</figcaption></figure>
214214

@@ -874,7 +874,7 @@ To enable systemd-resolved as your DNS resolver in BunkerWeb, set the `DNS_RESOL
874874

875875
=== "Web UI"
876876

877-
Navigate to the **Global config** page and set the DNS resolvers to `127.0.0.53`
877+
Navigate to the **Global Settings** page and set the DNS resolvers to `127.0.0.53`
878878

879879
<figure markdown>![DNS resolvers setting using web UI](assets/img/advanced-dns-resolvers.png){ align=center }<figcaption>DNS resolvers setting using web UI</figcaption></figure>
880880

@@ -942,7 +942,7 @@ To enable systemd-resolved as your DNS resolver in BunkerWeb, set the `DNS_RESOL
942942

943943
=== "Web UI"
944944

945-
Navigate to the **Global config** page, select the **NGINX** plugin and set the DNS resolvers to `127.0.0.1`.
945+
Navigate to the **Global Settings** page, select the **NGINX** plugin and set the DNS resolvers to `127.0.0.1`.
946946

947947
<figure markdown>![DNS resolvers setting using web UI](assets/img/advanced-dns-resolvers2.png){ align=center }<figcaption>DNS resolvers setting using web UI</figcaption></figure>
948948

@@ -1267,7 +1267,7 @@ Some integrations provide more convenient ways to apply configurations, such as
12671267
**Using labels**
12681268

12691269
!!! warning "Limitations using labels"
1270-
When using labels with the Docker autoconf integration, you can only apply custom configurations for the corresponding web service. Applying **http**, **default-server-http**, **stream** or any global configurations (like **server-http** or **server-stream** for all services) is not possible : you will need to mount files for that purpose.
1270+
When using labels with the Docker autoconf integration, you can only apply custom configurations for the corresponding web service. Applying **http**, **default-server-http**, **stream** or any global settings (like **server-http** or **server-stream** for all services) is not possible : you will need to mount files for that purpose.
12711271

12721272
The labels to use must follow the pattern `bunkerweb.CUSTOM_CONF_<TYPE>_<NAME>` :
12731273

@@ -2836,7 +2836,7 @@ services:
28362836

28372837
This configuration ensures that logs are rotated, preventing them from filling up your disk. You can apply this to any service in your Docker Compose setup.
28382838

2839-
**Global configuration (daemon.json)**
2839+
**Global settings (daemon.json)**
28402840

28412841
If you want to apply these logging settings to all containers on the host by default, you can configure the Docker daemon by editing (or creating) the `/etc/docker/daemon.json` file:
28422842

@@ -2856,7 +2856,7 @@ After modifying `daemon.json`, you need to restart the Docker daemon for the cha
28562856
sudo systemctl restart docker
28572857
```
28582858

2859-
This global configuration will be inherited by all containers. However, any logging configuration defined on a per-service basis in a `docker-compose.yml` file will override the global settings in `daemon.json`.
2859+
These global settings will be inherited by all containers. However, any logging configuration defined on a per-service basis in a `docker-compose.yml` file will override the global settings in `daemon.json`.
28602860

28612861
## Security tuning {#security-tuning}
28622862

docs/concepts.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ app2.example.com_WHITELIST_COUNTRY=FR
9696
app3.example.com_USE_BAD_BEHAVIOR=no
9797
```
9898

99-
Please note that multisite mode is implicit when using the web User Interface. You have the option to apply configurations directly to your services or to set a global configuration that will be applied to all your services (you can still apply exceptions directly to specific services):
99+
Please note that multisite mode is implicit when using the web User Interface. You have the option to apply configurations directly to your services or to set global settings that will be applied to all your services (you can still apply exceptions directly to specific services):
100100

101101
<figure markdown>
102102
![Overview](assets/img/ui-multisite.png){ align=center, width="600" }
@@ -163,15 +163,15 @@ By specifying the appropriate database URI in the configuration, you can seamles
163163

164164
### Database compatibility matrix
165165

166-
| Integration | PostgreSQL | MariaDB | MySQL | SQLite |
167-
| :----------------- | :---------------------------- | :------------------ | :----------------- | :---------- |
168-
| **Docker** |`v17` and earlier (`v18`) |`v11` and earlier |`v9` and earlier | ✅ Supported |
169-
| **Kubernetes** |`v17` and earlier (❌ `v18`) |`v11` and earlier |`v9` and earlier | ✅ Supported |
170-
| **Autoconf** |`v17` and earlier (❌ `v18`) |`v11` and earlier |`v9` and earlier | ✅ Supported |
171-
| **Linux packages** | See notes below | See notes below | See notes below | ✅ Supported |
166+
| Integration | PostgreSQL | MariaDB | MySQL | SQLite |
167+
| :----------------- | :------------------------------------------- | :------------------ | :----------------- | :---------- |
168+
| **Docker** |`v18` and earlier (all-in-one: ✅ `v17`) |`v11` and earlier |`v9` and earlier | ✅ Supported |
169+
| **Kubernetes** |`v18` and earlier |`v11` and earlier |`v9` and earlier | ✅ Supported |
170+
| **Autoconf** |`v18` and earlier |`v11` and earlier |`v9` and earlier | ✅ Supported |
171+
| **Linux packages** | See notes below | See notes below | See notes below | ✅ Supported |
172172

173173
!!! info "Notes"
174-
- **PostgreSQL**: `v18` is unsupported because the Alpine base images we ship only include `v17` client packages.
174+
- **PostgreSQL**: Alpine packages now ship with the `v18` client, so `v18` and earlier are supported out of the box; the all-in-one image still embeds `v17`, so `v18` is unsupported there.
175175
- **Linux**: Support depends on your distribution's packages. If needed, you can install database clients manually from vendor repositories (RHEL typically requires this).
176176
- **SQLite**: Ships with the packages and is ready to use.
177177

docs/de/advanced.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ Weitere Einstellungen zur echten IP finden Sie im [Features-Abschnitt](features.
4646

4747
=== "Web-UI"
4848

49-
Navigieren Sie zur Seite **Globale Konfiguration**, wählen Sie das Plugin **Real IP** und füllen Sie die folgenden Einstellungen aus:
49+
Navigieren Sie zur Seite **Globale Einstellungen**, wählen Sie das Plugin **Real IP** und füllen Sie die folgenden Einstellungen aus:
5050

5151
<figure markdown>![Real IP Einstellungen (Header) mit Web-UI](assets/img/advanced-proxy1.png){ align=center }<figcaption>Real IP Einstellungen (Header) mit Web-UI</figcaption></figure>
5252

@@ -208,7 +208,7 @@ Weitere Einstellungen zur echten IP finden Sie im [Features-Abschnitt](features.
208208

209209
=== "Web-UI"
210210

211-
Navigieren Sie zur Seite **Globale Konfiguration**, wählen Sie das Plugin **Real IP** und füllen Sie die folgenden Einstellungen aus:
211+
Navigieren Sie zur Seite **Globale Einstellungen**, wählen Sie das Plugin **Real IP** und füllen Sie die folgenden Einstellungen aus:
212212

213213
<figure markdown>![Real IP Einstellungen (PROXY-Protokoll) mit Web-UI](assets/img/advanced-proxy2.png){ align=center }<figcaption>Real IP Einstellungen (PROXY-Protokoll) mit Web-UI</figcaption></figure>
214214

@@ -874,7 +874,7 @@ Um systemd-resolved als Ihren DNS-Resolver in BunkerWeb zu aktivieren, setzen Si
874874

875875
=== "Web-UI"
876876

877-
Navigieren Sie zur Seite **Globale Konfiguration** und setzen Sie die DNS-Resolver auf `127.0.0.53`
877+
Navigieren Sie zur Seite **Globale Einstellungen** und setzen Sie die DNS-Resolver auf `127.0.0.53`
878878

879879
<figure markdown>![DNS-Resolver-Einstellung mit Web-UI](assets/img/advanced-dns-resolvers.png){ align=center }<figcaption>DNS-Resolver-Einstellung mit Web-UI</figcaption></figure>
880880

@@ -942,7 +942,7 @@ Um systemd-resolved als Ihren DNS-Resolver in BunkerWeb zu aktivieren, setzen Si
942942

943943
=== "Web-UI"
944944

945-
Navigieren Sie zur Seite **Globale Konfiguration**, wählen Sie das **NGINX**-Plugin und setzen Sie die DNS-Resolver auf `127.0.0.1`.
945+
Navigieren Sie zur Seite **Globale Einstellungen**, wählen Sie das **NGINX**-Plugin und setzen Sie die DNS-Resolver auf `127.0.0.1`.
946946

947947
<figure markdown>![DNS-Resolver-Einstellung mit Web-UI](assets/img/advanced-dns-resolvers2.png){ align=center }<figcaption>DNS-Resolver-Einstellung mit Web-UI</figcaption></figure>
948948

@@ -2837,7 +2837,7 @@ services:
28372837

28382838
Diese Konfiguration stellt sicher, dass die Protokolle rotiert werden, und verhindert, dass sie Ihre Festplatte füllen. Sie können dies auf jeden Dienst in Ihrer Docker Compose-Einrichtung anwenden.
28392839

2840-
**Globale Konfiguration (daemon.json)**
2840+
**Globale Einstellungen (daemon.json)**
28412841

28422842
Wenn Sie diese Protokollierungseinstellungen standardmäßig auf alle Container auf dem Host anwenden möchten, können Sie den Docker-Daemon konfigurieren, indem Sie die Datei `/etc/docker/daemon.json` bearbeiten (oder erstellen):
28432843

@@ -2857,7 +2857,7 @@ Nachdem Sie `daemon.json` geändert haben, müssen Sie den Docker-Daemon neu sta
28572857
sudo systemctl restart docker
28582858
```
28592859

2860-
Diese globale Konfiguration wird von allen Containern übernommen. Jede pro Dienst in einer `docker-compose.yml`-Datei definierte Protokollierungskonfiguration überschreibt jedoch die globalen Einstellungen in `daemon.json`.
2860+
Diese globalen Einstellungen werden von allen Containern übernommen. Jede pro Dienst in einer `docker-compose.yml`-Datei definierte Protokollierungskonfiguration überschreibt jedoch die globalen Einstellungen in `daemon.json`.
28612861

28622862
## Sicherheits-Tuning {#security-tuning}
28632863

docs/de/concepts.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ app2.example.com_WHITELIST_COUNTRY=FR
9696
app3.example.com_USE_BAD_BEHAVIOR=no
9797
```
9898

99-
Bitte beachten Sie, dass der Multisite-Modus bei Verwendung der Web-Benutzeroberfläche implizit ist. Sie haben die Möglichkeit, Konfigurationen direkt auf Ihre Dienste anzuwenden oder eine globale Konfiguration festzulegen, die auf alle Ihre Dienste angewendet wird (Sie können immer noch Ausnahmen direkt auf bestimmte Dienste anwenden):
99+
Bitte beachten Sie, dass der Multisite-Modus bei Verwendung der Web-Benutzeroberfläche implizit ist. Sie haben die Möglichkeit, Konfigurationen direkt auf Ihre Dienste anzuwenden oder globale Einstellungen festzulegen, die auf alle Ihre Dienste angewendet werden (Sie können immer noch Ausnahmen direkt auf bestimmte Dienste anwenden):
100100

101101
<figure markdown>
102102
![Übersicht](assets/img/ui-multisite.png){ align=center, width="600" }
@@ -163,15 +163,15 @@ Durch Angabe des entsprechenden Datenbank-URI in der Konfiguration können Sie B
163163

164164
### Datenbank-Kompatibilitätsmatrix
165165

166-
| Integration | PostgreSQL | MariaDB | MySQL | SQLite |
167-
| :--------------- | :--------------------------- | :------------------- | :------------------- | :------------ |
168-
| **Docker** |`v17` und früher (`v18`) |`v11` und früher |`v9` und früher | ✅ Unterstützt |
169-
| **Kubernetes** |`v17` und früher (❌ `v18`) |`v11` und früher |`v9` und früher | ✅ Unterstützt |
170-
| **Autoconf** |`v17` und früher (❌ `v18`) |`v11` und früher |`v9` und früher | ✅ Unterstützt |
171-
| **Linux-Pakete** | Siehe Hinweise unten | Siehe Hinweise unten | Siehe Hinweise unten | ✅ Unterstützt |
166+
| Integration | PostgreSQL | MariaDB | MySQL | SQLite |
167+
| :--------------- | :--------------------------------------- | :------------------- | :------------------- | :------------ |
168+
| **Docker** |`v18` und früher (all-in-one: ✅ `v17`) |`v11` und früher |`v9` und früher | ✅ Unterstützt |
169+
| **Kubernetes** |`v18` und früher |`v11` und früher |`v9` und früher | ✅ Unterstützt |
170+
| **Autoconf** |`v18` und früher |`v11` und früher |`v9` und früher | ✅ Unterstützt |
171+
| **Linux-Pakete** | Siehe Hinweise unten | Siehe Hinweise unten | Siehe Hinweise unten | ✅ Unterstützt |
172172

173173
!!! info "Hinweise"
174-
- **PostgreSQL**: `v18` wird nicht unterstützt, da die von uns bereitgestellten Alpine-Basis-Images nur die `v17`-Client-Pakete enthalten.
174+
- **PostgreSQL**: Alpine-basierte Pakete enthalten jetzt den `v18`-Client, daher werden `v18` und frühere Versionen standardmäßig unterstützt; das all-in-one-Image enthält weiterhin den `v17`-Client, daher wird `v18` dort nicht unterstützt.
175175
- **Linux**: Die Unterstützung hängt von den Paketen Ihrer Distribution ab. Bei Bedarf können Sie Datenbank-Clients manuell aus den Hersteller-Repositorys installieren (dies ist bei RHEL normalerweise erforderlich).
176176
- **SQLite**: Wird mit den Paketen ausgeliefert und ist sofort einsatzbereit.
177177

docs/de/integrations.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2712,7 +2712,7 @@ The **BunkerWeb controller** automatically discovers pods with BunkerWeb sidecar
27122712
```yaml
27132713
controller:
27142714
enabled: true
2715-
tag: "1.6.5"
2715+
tag: "1.6.6"
27162716
```
27172717

27182718
2. For each sidecar, add:
@@ -2805,7 +2805,7 @@ In your BunkerWeb chart `values.yaml`, configure the `BUNKERWEB_INSTANCES` envir
28052805

28062806
```yaml
28072807
scheduler:
2808-
tag: "1.6.5"
2808+
tag: "1.6.6"
28092809
extraEnvs:
28102810
- name: BUNKERWEB_INSTANCES
28112811
value: "http://app1-bunkerweb-workers.namespace.svc.cluster.local:5000 http://app2-bunkerweb-workers.namespace.svc.cluster.local:5000"
@@ -2849,7 +2849,7 @@ spec:
28492849
28502850
# BunkerWeb Sidecar
28512851
- name: bunkerweb
2852-
image: bunkerity/bunkerweb:1.6.6-rc2
2852+
image: bunkerity/bunkerweb:1.6.6
28532853
ports:
28542854
- containerPort: 8080 # Exposed HTTP port
28552855
- containerPort: 5000 # Internal API (mandatory)
@@ -3419,7 +3419,7 @@ Und Sie können nun zum Einrichtungsassistenten gehen, indem Sie zu `https://bun
34193419

34203420
**Schutz einer bestehenden Anwendung**
34213421

3422-
**Zuerst müssen Sie zu Global Config gehen, das SSL-Plugin auswählen und dann die automatische Weiterleitung von HTTP zu HTTPS deaktivieren. Bitte beachten Sie, dass Sie dies nur einmal tun müssen.**
3422+
**Zuerst müssen Sie zu den Globalen Einstellungen gehen, das SSL-Plugin auswählen und dann die automatische Weiterleitung von HTTP zu HTTPS deaktivieren. Bitte beachten Sie, dass Sie dies nur einmal tun müssen.**
34233423

34243424
Nehmen wir an, Sie haben eine Anwendung im Namespace `myapp`, die über den Dienst `myapp-service` auf Port `5000` zugänglich ist.
34253425

docs/de/troubleshooting.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -547,7 +547,7 @@ Falls Sie Ihre UI-Anmeldeinformationen vergessen haben oder Probleme mit 2FA hab
547547
Verwenden Sie die **Support-Seite** in der Web-UI, um schnell Konfigurationen und Protokolle zur Fehlerbehebung zu sammeln.
548548

549549
- Öffnen Sie die Web-UI und gehen Sie zur Support-Seite.
550-
- Wählen Sie den Geltungsbereich: Exportieren Sie die globale Konfiguration oder wählen Sie einen bestimmten Dienst aus.
550+
- Wählen Sie den Geltungsbereich: Exportieren Sie die globalen Einstellungen oder wählen Sie einen bestimmten Dienst aus.
551551
- Klicken Sie, um das Konfigurationsarchiv für den ausgewählten Geltungsbereich herunterzuladen.
552552
- Laden Sie optional Protokolle herunter: Die exportierten Protokolle werden automatisch anonymisiert (alle IP-Adressen und Domains werden maskiert).
553553

0 commit comments

Comments
 (0)