Puncte:0

iptables - aruncarea pachetului în lanțul FORWARD bazat pe potrivirea șirurilor nu funcționează

drapel cn

Încerc să redirecționez traficul de la o gazdă la alta. Funcționează, dar vreau să adaug lista albă de adrese URL. Următoarele reguli iptables-save încă blochează vizite precum http://host:8383/api/test

Ce îmi lipsește?

*nat
:ACCEPTAREA PRE-ROUTARE [0:0]
:INPUT ACCEPT [0:0]
: ACCEPT IEȘIRE [7:517]
: POSTROUTING ACCEPT [2:161]
-A PREROUTING -p tcp -m tcp --dport 8383 -j DNAT --to-destination x.x.x.x:8001
-O POSTOUTING! -s 127.0.0.1/32 -j MASCARAT
COMMIT

*filtru
:INPUT ACCEPT [0:0]
: FORWARD ACCEPT [0:0]
: ACCEPT IEȘIRE [0:0]

-A FORWARD -p tcp -m șir --șir "GET /api" --algo bm --icase -j ACCEPT
-P PĂDURA ÎNTÂMPRE

COMMIT
sudo iptables -nvL
INTRARE în lanț (politica ACCEPTĂ 49 de pachete, 2356 de octeți)
 pkts bytes target prot opt ​​in out source destination

Lanț FORWARD (politica DROP 5 pachete, 200 de octeți)
 pkts bytes target prot opt ​​in out source destination
    0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 STRING potriviți „GET /api” ALGO nume bm TO 65535 ICASE

IEȘIRE în lanț (politica ACCEPTĂ 38 de pachete, 3060 de octeți)
 pkts bytes target prot opt ​​in out source destination
Tom Yan avatar
drapel in
Iată `tcpdump` a unui simplu curl de la o altă gazdă pe serverul meu lighttpd: https://paste.ubuntu.com/p/FCHsg4PmBR/, așa că nu, chiar nu poți să-l „liste alb” așa. Nu așa funcționează TCP sau HTTP.
Tom Yan avatar
drapel in
S-ar putea totuși să puteți *lista neagră* anumite „GET” cu acest tip de abordare.
perlwle avatar
drapel cn
setarea politicii la ACCEPT, apoi lista neagră funcționează, dar nu asta vreau. Alte idei?
drapel us
IPTables se potrivește numai cu pachetele IP. Pentru a vă atinge ținta, aveți nevoie de interceptarea la nivel TCP. Poate cel mai ușor ar fi să creați un proxy HTTP transparent cu Squid.
perlwle avatar
drapel cn
Se pare că există și alte opțiuni. Calamar așa cum este sugerat. Cred că ar putea funcționa și un proxy direct folosind nginx.Totuși, poate avea probleme cu protocolul https.
djdomi avatar
drapel za
ai o problemă clasică x și y, ce vrei cu adevărat să rezolvi?

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.