Commit 5a67cb7
fix(analytics): scope real IP to Umami proxy, default to private ranges, log XFF
- Apply set_real_ip_from/real_ip_header only inside the /x/ Umami proxy
location, so $remote_addr for all other routes remains the direct
peer and no client-supplied header is trusted outside analytics.
- Default TRUSTED_PROXY_CIDRS to the private ranges reverse proxies
normally connect from (10/8, 172.16/12, 192.168/16, fc00::/7) so the
fix works out of the box behind in-cluster ingresses; internet
clients cannot spoof these as source addresses. Set
TRUSTED_PROXY_CIDRS=none to disable real IP resolution entirely.
- Extend the access log format to append xff="$http_x_forwarded_for",
recording the proxy-reported client chain verbatim alongside the
direct peer address without trusting it.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>1 parent bf9edfd commit 5a67cb7
2 files changed
Lines changed: 22 additions & 11 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
16 | 27 | | |
17 | 28 | | |
18 | 29 | | |
19 | 30 | | |
20 | 31 | | |
21 | 32 | | |
22 | 33 | | |
23 | | - | |
| 34 | + | |
24 | 35 | | |
25 | 36 | | |
26 | 37 | | |
27 | 38 | | |
28 | 39 | | |
29 | 40 | | |
30 | 41 | | |
31 | | - | |
32 | | - | |
| 42 | + | |
| 43 | + | |
33 | 44 | | |
34 | 45 | | |
35 | 46 | | |
| |||
124 | 135 | | |
125 | 136 | | |
126 | 137 | | |
| 138 | + | |
127 | 139 | | |
128 | 140 | | |
129 | 141 | | |
| |||
167 | 179 | | |
168 | 180 | | |
169 | 181 | | |
170 | | - | |
| 182 | + | |
171 | 183 | | |
172 | 184 | | |
173 | 185 | | |
174 | 186 | | |
175 | 187 | | |
176 | 188 | | |
177 | | - | |
178 | | - | |
179 | | - | |
180 | | - | |
181 | | - | |
182 | | - | |
183 | 189 | | |
184 | 190 | | |
185 | 191 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
3 | 8 | | |
4 | 9 | | |
5 | | - | |
| 10 | + | |
6 | 11 | | |
7 | 12 | | |
8 | 13 | | |
| |||
0 commit comments