Proxy
15 отговора
623 прегледа
Proxy
zdraveite, pusnal sym si Squid i transperant proxy. pravq go sys ipchains sys sledniq red: ipchains -A input -p tcp -s 168.92.10.1/24 --destination-port 80 -j REDIRECT 3128
iskam Squid-a da go pusna na druga mashina da kajem 168.92.9.1 i redirect da se pravi kym neq. pravih nqkolko opita no bez uspeshni:(
iskam Squid-a da go pusna na druga mashina da kajem 168.92.9.1 i redirect da se pravi kym neq. pravih nqkolko opita no bez uspeshni:(
Re: Proxy
za druga mashina ti triabva port forwarder. samo s ipchains niama da stane.
i e polezno da si kompilirash squid-a sas opcia --transparent_proxying ili kakto tam se pisheshe (configure --help)
za edno hubavo nesto specialno za squid vij na [линк]
TANSTAAFL! There AiNt Such Thing As A Free Lunch
i e polezno da si kompilirash squid-a sas opcia --transparent_proxying ili kakto tam se pisheshe (configure --help)
za edno hubavo nesto specialno za squid vij na [линк]
TANSTAAFL! There AiNt Such Thing As A Free Lunch
Re: Proxy
mnogo mersi za transproxy-1.4 , sys nego stana
4udq se samo dali shte e po-byrzo ot dvata Squid-a deto gi bqh vyrzal, sega po ne e edin :)
4udq se samo dali shte e po-byrzo ot dvata Squid-a deto gi bqh vyrzal, sega po ne e edin :)
Re: Proxy
Само една бележка за transproxy. Общо-взето добра програма, но има следните проблеми.
1. Не позволява на браузърите да ползват keepalive връзките на HTTP/1.1, защото просто изрязва "Connection: Keepalive" хедъра от връзката.
2. При всяка нова заявка прави fork(). Ако имаш сравнително натоварен proxy server, то рутъра на който върви transproxy-то просто ще клекне. А ако някой от клиентите на проксито направи connect portscan за порт 80, въобще ще убие рутъра.
3. Проксито вижда всички заявки през transproxy-то, като идващи със сорс адрес, този на рутъра, така че няма да можеш да слагаш на проксито никакви правила по source адрес, deny/delay pools/и др. Цялото филтриране/ограничаване трябва да се прави на рутъра.
transproxy-то има и алтернатива, просто по всички рутъри маркирай пакетите с destination port 80, с някакъв firewall mark и след това в рутинг таблицата ползвай policy routing за да рутираш пакетите с този firewall марк към прокси сървъра.
1. Не позволява на браузърите да ползват keepalive връзките на HTTP/1.1, защото просто изрязва "Connection: Keepalive" хедъра от връзката.
2. При всяка нова заявка прави fork(). Ако имаш сравнително натоварен proxy server, то рутъра на който върви transproxy-то просто ще клекне. А ако някой от клиентите на проксито направи connect portscan за порт 80, въобще ще убие рутъра.
3. Проксито вижда всички заявки през transproxy-то, като идващи със сорс адрес, този на рутъра, така че няма да можеш да слагаш на проксито никакви правила по source адрес, deny/delay pools/и др. Цялото филтриране/ограничаване трябва да се прави на рутъра.
transproxy-то има и алтернатива, просто по всички рутъри маркирай пакетите с destination port 80, с някакъв firewall mark и след това в рутинг таблицата ползвай policy routing за да рутираш пакетите с този firewall марк към прокси сървъра.
Re: Proxy
Moje li da mi dadesh primer za transproxy, kato se ima vpredvid 4e ne na rutera (192.168.0.1) mi e Squid-a, a na druga mashina 192.168.0.2.
Imam izgraden transproxy sys ipchains no togava na dvete mashini imam Squid - tova iskam da izbegna.
Predvaritelno blagodarq
Imam izgraden transproxy sys ipchains no togava na dvete mashini imam Squid - tova iskam da izbegna.
Predvaritelno blagodarq
Re: Proxy
На всеки от рутърите през които минава трафика на трансперираните потребители пишеш нещо подобно на:
fire:~# /sbin/ipchains -A input -p TCP -s yournet/yourmask -d 0.0.0.0/0 80 -m 1
fire:~# /sbin/ip route add 0.0.0.0/0 via proxygw src routersrc dev proxyeth table 2
fire:~# /sbin/ip route add fwmark 1 table 2 pref 30000
Това е прост пример, където: yournet/yourmask е мрежата която трансперираш. proxygw е гейтуея от рутъра към проксито. routersrc е сорс адреса с който излизат пакетите за проксито създадени на рутъра. proxyeth е интерфейса който води към проксито. Трябва да внимаваш в ipchains правилата където маркираш пакетите да не маркираш заявките на самото прокси. routersrc и proxyeth не са задължителни и двете но ги дадох за пълнота. Ако ползваш iptables или route трябва да си нагодиш командите съответно. Естествено няма нужда да слагаш специален рутинг на рутърите където потребителския трафик се рутира и без това по интерфейса водещ към проксито.
fire:~# /sbin/ipchains -A input -p TCP -s yournet/yourmask -d 0.0.0.0/0 80 -m 1
fire:~# /sbin/ip route add 0.0.0.0/0 via proxygw src routersrc dev proxyeth table 2
fire:~# /sbin/ip route add fwmark 1 table 2 pref 30000
Това е прост пример, където: yournet/yourmask е мрежата която трансперираш. proxygw е гейтуея от рутъра към проксито. routersrc е сорс адреса с който излизат пакетите за проксито създадени на рутъра. proxyeth е интерфейса който води към проксито. Трябва да внимаваш в ipchains правилата където маркираш пакетите да не маркираш заявките на самото прокси. routersrc и proxyeth не са задължителни и двете но ги дадох за пълнота. Ако ползваш iptables или route трябва да си нагодиш командите съответно. Естествено няма нужда да слагаш специален рутинг на рутърите където потребителския трафик се рутира и без това по интерфейса водещ към проксито.
Re: Proxy
mnogo mersi za tozi primer, my4a se da probvam.... no na tretiq red mi izpisa greshka:
Error: an inet prefix is expected rather than "fwmark".
Error: an inet prefix is expected rather than "fwmark".
Re: Proxy
sega si poglednah i kernela (2.2.19), IP: use FWMARK value as routing key
tova e otmetnato (built-in).
zashto shte mi dava takava greshka :(
IPtata sa mi realni...
tova e otmetnato (built-in).
zashto shte mi dava takava greshka :(
IPtata sa mi realni...
Re: Proxy
Сбъркал съм 3-я ред. Трябва да е:
fire:~# /sbin/ip rule add fwmark 1 table 2 pref 30000
fire:~# /sbin/ip rule add fwmark 1 table 2 pref 30000
Re: Proxy
emi neshto nestava:( neznam kakvo sym opleskal. neotvarq nishto. probvam slednoto:
/sbin/ipchains -A input -p TCP -s 195.24.10.67/32 -d 0.0.0.0/0 80 -m 1
/sbin/ip route add 0.0.0.0/0 dev eth0 table 2
/sbin/ip rule add fwmark 1 table 2 pref 30000
rutera mi e sys IP 195.24.10.66 to e i gw na cqlata mreja....
az sym sys ip 195.24.10.67, proxyto e na 195.24.10.65
dori i da vyveda 2riq red taka:
sbin/ip route add 0.0.0.0/0 via 195.24.10.66 src 195.24.10.66 dev eth0 table 2
pak ne otvarq nishto...
ako mojesh da pomognesh, shtoto hu4 negi razbiram teq neshta :((
/sbin/ipchains -A input -p TCP -s 195.24.10.67/32 -d 0.0.0.0/0 80 -m 1
/sbin/ip route add 0.0.0.0/0 dev eth0 table 2
/sbin/ip rule add fwmark 1 table 2 pref 30000
rutera mi e sys IP 195.24.10.66 to e i gw na cqlata mreja....
az sym sys ip 195.24.10.67, proxyto e na 195.24.10.65
dori i da vyveda 2riq red taka:
sbin/ip route add 0.0.0.0/0 via 195.24.10.66 src 195.24.10.66 dev eth0 table 2
pak ne otvarq nishto...
ako mojesh da pomognesh, shtoto hu4 negi razbiram teq neshta :((
Re: Proxy
Сега, освен тези неща на рутъра трябва да добавиш и firewall правила на самото прокси, така че да прехванеш заявките и да ги насочиш към squid-а, който е на проксито. Нещо от типа на:
iptables -t nat -A PREROUTING -j REDIRECT -p TCP --to-ports 3128 -s yournet/yourmask --dport 80
Освен това трябва да промениш няколко от опциите на squid-а, така че да го пуснеш във accelerator mode. Настройките които трябва да направиш са описани в документацията на [линк]. Ама не си спомням къде точно. Ако ги намериш пиши пак :-)
iptables -t nat -A PREROUTING -j REDIRECT -p TCP --to-ports 3128 -s yournet/yourmask --dport 80
Освен това трябва да промениш няколко от опциите на squid-а, така че да го пуснеш във accelerator mode. Настройките които трябва да направиш са описани в документацията на [линк]. Ама не си спомням къде точно. Ако ги намериш пиши пак :-)
Re: Proxy
Da ama az neiskam Squid na proxy! iskam Squid samo na servera.
sega Transparent proxynga mi e izgraden sys Squid i na dvete mashini sys ipchains na rutera pravq REDIRECT kym 3128 na Squid-a na proxyto mu. Ve4e ot toq Squid na proxyto prashtam zaqvkite na Squid-a na servera.
a iskam da sym samo sys edin Squid - na servera...?
sega Transparent proxynga mi e izgraden sys Squid i na dvete mashini sys ipchains na rutera pravq REDIRECT kym 3128 na Squid-a na proxyto mu. Ve4e ot toq Squid na proxyto prashtam zaqvkite na Squid-a na servera.
a iskam da sym samo sys edin Squid - na servera...?
Re: Proxy
Нищо не можах да разбера от последния ти постинг. За съжаление не мога да ти отделя повече време. Все пак squid + transproxy е достатъчно добро решение ако не го натоварваш с прекалено много заявки, така че мисля няма да имаш някакви проблеми.
Re: Proxy
Iskah da kaja che imam dve mashni ruper i server, sys dva Squid-a. Ideqta mi e da se napravi transperant proxy na rutera, koeto direktno da prashta zaqvkite ot port 80 na syrvera na port 3128.
iskam da ostana samo sys edin Squid, na servera - a ne ot rutera Squda da prashta zaqvki kym Squid-a na servera(kakto sega e).
iskam da ostana samo sys edin Squid, na servera - a ne ot rutera Squda da prashta zaqvki kym Squid-a na servera(kakto sega e).
Re: Proxy
Ne znam kakav Linux polzvash, no ako si 4uval za rinetd ili xinetd , mojesh da gi polzvash po slednata shema : zayavkata po http pristiga na 80 port na rutera i ot tam s nyakoya ot gornite programki ya redirektvash kam servera sas squida.Na nego pravish redirect redirecta s ipchains-ovete ( stava i s iptables) kam porta webcache na tvoya proxyserver, ne zabravyaj da pusnesh squida v accelerated rejim i shte raboti samo sas edno proxy :)))
za podrobnosti -- manovete na prilojeniyata
za podrobnosti -- manovete na prilojeniyata