KamoCRM

Derive X-Real-IP din cel mai bun salt, nu al clientului

FixAPIService
Expediere
23 septembrie 2026 la 10:21 UTC
Autor
Kamo
Comite
65f3228

înainte () setează X-Real-IP de ieșire către X-forwarded-For.split(,"")[0] -- cel mai stâng salt, care este singura parte a antetului pe care îl controlează un client pur și simplu: o cerere care conține "X-forwarded-For: 8.8.8.8" ajunge la Traefik, care adaugă adresa pe care a văzut-o, şi antetul devine "8.8.8.8, un client real >." Economizatorul Serviciului de Securitate stocheaza acest portal X-Real-IP verbatim pe o înregistrare e-continut legal, așa Orice vizitator ar putea confirma orice adresă le-a plăcut doar prin trimiterea propriul lor X-Forwarded-For. Adăugat ClientIpResolver (com.kamo.api.app.config), care merge lista din dreapta și ia primul hop public - totul la dreapta al clientului real este propria noastră infrastructură, și un hop in-cluster este Întotdeauna privat şi sărit. Acesta este același algoritm Acces Enforcement Filtrul a avut deja, privat pentru sine, pentru a judeca normele de acces prin IP; acel filtru delega acum clasei extrase în loc să-și păstreze propria copie, astfel încât înainte() și filtrul să fie de acord cu constructii mai degrabă decât de doi autori obtinerea independent același Nouă linii dreapta. X-forwarded-Pentru sine este neschimbat -- încă transmis după cum a fost primit (sau sintetizat de la perechea prizei atunci când este absent). Aceeași regulă de drept-cea mai publică-hop este duplicat per-service în întreaga platforma (ClientIpResolver al Serviciului de securitate, ESigService's EsignClientIp, Serviciul DocsClientIp) pentru că nici unul dintre cei Serviciile pot fi importate de la alta; aceasta este copia Apiservice. XRealIpwarding Test drives o cerere reală înaintat care transportă o spoofed hop stânga în fața unuia autentic și susține cererea din amonte X-Real-IP este adresa originală, plus că un hop intern anexat după ce clientul adevărat este sărit. ClientIpRezolverTest acoperă Rezolvator direct. Revenind la partea stângă-cea mai mare nu reușește XRealIpwarding Testaţi imediat.

Toate modificările

Ca ceea ce vezi de transport maritim?

Toate acestea ajung în spațiul de lucru pe cont propriu. Începeți cu planul gratuit și citiți această pagină din nou într-o lună.

Pornește gratuit pentru totdeaunaVezi prețurile