Puncte:0

Regulile IPtables pentru a ocoli proxy-ul squid

drapel it

Cred că am nevoie doar de o verificare a unor reguli iptables. (alerta spoiler nu este buna.)

Problema de bază. Avem un server Squid Proxy care interferează cu diverse resurse de internet. Sunt la distanță și vreau să actualizez regulile IPTable pe serverul proxy, astfel încât traficul să nu ajungă niciodată la serviciul proxy. Aceasta este o remediere temporară în timp ce lucrez la migrarea rețelei la hardware-ul de rețea real.

Deci, scopul este de a direcționa tot traficul care nu este SSH din rețeaua locală (enp5s0 10.90.30.1/16) către „Router” (192.168.165.1/24) cu interfața (enp4s0 192.168.165.1/24)

iptables -t nat -A PREROUTING -p tcp --dport 22 -d 10.90.30.1 -j INTRARE
iptables -t nat -A PREROUTING -p tcp --dport 80 -d 10.90.30.1 -j INTRARE
iptables -t nat -A PREROUTING -i enp5s0 -d 10.90.30.1 -j DNAT --to 192.168.165.1
iptables -t nat -A PREROUTING -i enp4s0 -d 192.168.165.151 -j DNAT --to 10.90.30.1
iptables -A INTRARE -tcp --dport 22 -d 10.90.30.1 -j ACCEPT
iptables -A Forward -i enp5s0 -d 10.90.30.1 --dport 22 accept
iptables -t nat -A POSTROUTING -o enp4s0 -j ​​MASQUERADE
iptables -t nat -A POSTROUTING -o enp5s0 -j ​​MASQUERADE

Apreciez tot ajutorul pe care îl pot primi. Îmi place să cred că înțeleg Iptables suficient pentru a configura firewall-uri de bază. Dar rutarea avansată este ceva ce nu am fost niciodată nevoit să fac.

Cât de mult NAT este prea mult NAT? atât de mult NAT.

vidarlo avatar
drapel ar
Cum vă așteptați ca routerul să știe ce face cu pachetele pe care le primește dacă rescrieți destinația?
Puncte:0
drapel id

Probabil că puteți marca pachetele cu iptables și apoi aveți un tabel de rutare specific pentru acele pachete marcate. Doar un exemplu cum funcționează:

# Adresa IPv4 a proxy-ului
PROXYIP4=192.168.1.45

# Adresa IPv6 a proxy-ului
PROXYIP6=fd48:2b50:6a95:a6db::73:7175:6964

# interfață cu clienții și clienții care urmează să fie squidified
CLIENTIFACE=br-lan
CLIENTIP=smart-tv.lan

# marca arbitrară folosită pentru rutarea pachetelor de către firewall. Poate fi orice de la 1 la 64.
FWMARK=8

# lanț (ar trebui să fie OUTPUT pe client și PREROUTING pe router)
LANTUL=PRERUTIERE

# ID tabel de rutare
TABLEID=252


# permiteți cutia Squid să iasă pe Internet
#iptables -t mangle -A $CHAIN ​​-p tcp --dport 80 -s $PROXYIP4 -j ACCEPT
#ip6tables -t mangle -A $CHAIN ​​-p tcp --dport 80 -s $PROXYIP6 -j ACCEPT

# marcați orice altceva pe portul 80 pentru a fi direcționat către caseta Squid
iptables -t mangle -A $CHAIN ​​-p tcp -s $CLIENTIP -m multiport --dports 80,443 -j MARK --set-mark $FWMARK
ip6tables -t mangle -A $CHAIN ​​-p tcp -s $CLIENTIP -m multiport --dports 80,443 -j MARK --set-mark $FWMARK

# NP: Asigurați-vă că traficul din interiorul rețelei este permis să se întoarcă din nou în interior.
iptables -t filter -A FORWARD -i $CLIENTIFACE -o $CLIENTIFACE -p tcp --dport 80 -j ACCEPT
ip6tables -t filter -A FORWARD -i $CLIENTIFACE -o $CLIENTIFACE -p tcp --dport 80 -j ACCEPT

regulă ip add fwmark $FWMARK tabel $TABLEID
IP route adăuga implicit prin tabelul $PROXYIP4 $TABLEID
ip -6 rule add fwmark $FWMARK tabel $TABLEID
ip -6 route add default prin tabelul $PROXYIP6 $TABLEID

Nu se aplică pentru dvs. fără modificări, deoarece de fapt face opusul â redirecționează traficul către proxy-ul Squid. (Probabil că l-am primit și dintr-un tutorial.) Ideea mea este să demonstrez că puteți aplica un tabel de rutare diferit pentru pachetele marcate și cred că asta este ceea ce trebuie să faceți.

Puncte:0
drapel ar

Deci, motivul pentru care funcționează un proxy transparent este că protocoalele de nivel superior conțin informații despre unde să se conecteze. În HTTP este Gazdă antet; în TLS este antetul SNI.

Dar când redirecționați pachetele pe baza stratului 3, care este locul în care funcționează routerele, routerul care primește pachetul rescris nu are idee ce să facă cu el. Destinația este listată ca IP-ul routerului, care probabil nu ascultă pe portul de destinație. Dacă se întâmplă să asculte, va trece pachetul pe orice software care ascultă și nu îl va trimite.

Deci probabil că ceea ce încerci să obții nu va funcționa, deoarece routerul nu va avea idee ce să facă cu traficul.

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.