Wymuszanie serwera proxy


(Mikolaj98) #1

Cześć,
Jak wymusić serwer proxy na całą sieć?
Mam w sieci ok. 10 urządzeń z czego 4 + router mogę konfigurować. Topologia i metoda jest dla mnie obojętna.
Z góry dziękuję.


(roobal) #2

Co masz dokładnie na myśli pod pojęciem wymusić? Jakieś ustawienia sieci nie działają czy chcesz to zrobić jakoś z automatu? Proxy masz na jakimś serwerze czy może router ma własne proxy? Jaki to router?


(eskimosek) #3

musisz dać przekierowanie całego ruchu za pomoca firewalla na port w którym działa serwer proxy.Masqarade,forward reguly analogicznie jak przy serwerze vpn.


(roobal) #4

Nie do końca z tą maskaradą i przekierowaniami. Jeśli serwer jest wewnatrz LAN, to nie ma takiej potrzeby, a maskarade i tak robi się na interfejsie wyjsciowym routera.


(eskimosek) #5

Trzeba zrobić przekierowanie (forward) całego ruchu na port proxy,jak to zrobić to już zależy od firewalla.


(roobal) #6

Tak, co do firewalla ok, robisz redirect (nie forward), ale maskarada nie jest tu potrzebna. Poza tym dlaczego uparłeś się maskarady, dlaczego nie może to być snat, jeśli już chcesz cokolwiek NATować?


(eskimosek) #7

No bo mi sie wydaje że to powinno działać jakoś analogicznei do serwera vpn gdzie jest ustanawiany tunel który zbiera cały tyraffic i przsyła go przez serwer vpn,tylko różnica jest taka że zamiast serwera vpn jest jakiś squid.Zresztą google przyjacielem jest,także w necie pewnie są podobne konfiguracje.


http://www.tldp.org/HOWTO/TransparentProxy-6.html


(roobal) #8

Nie ma znaczenia czy to Squid czy cokolwiek innego. Na firewallu robi się redirect. Redirect oznacza, że to co przychodzi na 80 ma iśc na, np. 8080. Forward zaś przekierowuje cały ruch sieciowy. Jednym słowem, jak chcesz dostać się z podsieci A do B, to forward kieruje ruch sieciowy. Natomiast jak chcesz z podsieci A dostać się na port 80, to redirect kieruje ruch na tym porcie na port, np. 8080.

Zaś maskarada od snat różni się tym, że maskarady używa się głównie przy zmiennym IP, w związku z tym przy maskaradzie używa się interfejsu wyjściowego, ponieważ adres jest różny. Maskarady często używa się też przy pppoe. Zaś source nat używa się przy stałym adresie IP, gdzie adres prywatny natowany jest na adres publiczny, tu z reguły nie używa się interfejsu wyjściowego. W skrócie maskarada podsieć > interfejs; snat podsieć > publiczne IP.


(eskimosek) #9

Wydawało mi się że redirect przekierowuje port z interfejsu wejściowego na interfejs wewnętrzny loopback.Czyli z eth0 na lo0 inaczej 127.0.0.1.A raczej chodzi o traffic który wychodzi (outbound) żeby był przekierowywany na ip:port proxy więc tu redirect się nie zastosuje.I ten ruch wychodzący jest właśnie trasowany przez maskarade. No tak mi sie wydaje ale może coś żle mi sie wydaje.
No chyba że te proxy będzie na bramie wtedy można dać redirect na bramie portu 80 na port proxy.Ale jak jest w tej samej sieci co reszta urządzen,albo gdzieś w innej sieci to redirect za bardzo nic nie da bo sie nie stosuje do outbound tylko do inbound…czyli przekierowuje port z wan do loopback.

Tutaj przykład


(roobal) #10

Mylisz pojęcia. Jeśli chcesz mieć ruch z podsieci 192.168.0.0/24 do sieci 192.168.1.0/24 to za to odpowiada łańcuch forward. Jeśli z podsieci 192.168.0.0/24 lub 192.168.1.0/24 chcesz przekierować port 80 na 8080, to w tablicy NAT robisz redirect.

Ten przykład, który wkleiłeś pokazuje, że nie rozumiesz w ogóle iptables i sytuacji, którą opisuje autor tematu. To co wkleiłeś to przekierowanie portów przez NAT z ruchu przychodzącego spoza sieci LAN. Czyli zwykłe przekierowanie portów z zewnątrz, a do proxy chcesz dostać się z wewnątrz.

Powtarzam, maskarada jest przy zmiennym IP, snat przy stałym. Poczytaj sobie trochę więcej o iptables, zamiast tutoriali.

Może to rozjaśni Ci o czym mówię https://www.cyberciti.biz/faq/linux-port-redirection-with-iptables/


(eskimosek) #11

No bo ja myslalem zeby to tak zrobić że ruch przychodzący na port 80 przekierować na maszyne ze squidem na port proxy squida.Wtedy cały ruch http będzie musiał być przefiltrowany przez proxy.Ale no niewiem,dobra nie znam sie,nieorientuje sie,jestem zarobiony.Będe musiał sobie zrobić podobna konfiguracje i zobaczyć jak to musi być dokładnie zrobione.
Najprościej bym to zrobił tak
router1 - squid port 80 - router2 - klient.
Czyli potrzeba 2 routery + jakiś komputerek wpięty pomiędzy nimi gdzie jest zainstalowany squid.Dobra z mojej strony eot,autor pewnie już sobie poradził z tym.


(roobal) #12

Po co chcesz filtrować ruch przychodzący, jak w sieci filtruje się ruch wychodzący? Jaki byłby sens istnienia proxy.

Dobra nie odbiegajmy już od tematu. Poczekajmy na odpowiedź @Mikolaj98


(eskimosek) #13

no bo tak dziala proxy ze pobiera strony a nie je wysyla.Tez czasem nie kapuje o co ci chodzi. No jak ma proxy dzialac przez ruch wychodzacy jak proxy dziala tak ze udostepnia jakby zasoby ktore ma juz pobrane z internetu.I dlatego można przyoszczędzić łącza żeby od nowa za każdy raz tych zasobów nie pobierać.


(roobal) #14

Okej, ale czy to strony WWW łączą się do Ciebie, czy Ty do serwerów WWW? Jeśli nawiązujesz połączenie z serwerem WWW, to leci to tak: host > proxy > www. Połączenie zostaje nawiązane, proxy cachuje sobie zawartość strony. Poza tym proxy nie służy tylko do szybszego wyświetlania stron, ale chociażby do blokowania treści. W wielu firmach, aby pracownicy skupili się na pracy, blokuje im się dostęp do Internetu, kierując właśnie na proxy, gdzie dozwolone są strony niezbędne do pracy. W takim przypadku jak chcesz dostać się na dobreprogramy.pl dostajesz z proxy zwrotkę, że strona jest niedostępna, w przypadku chęci dostania się np. do firmowego webmaila, ruch przechodzi.

Jak sam piszesz, pobiera, a nie wysyła. Kiedy je pobiera? W momencie nawiązania sesji przez użytkownika. Jak sam piszesz pobiera, więc nawet jeśli użytkownik nie zestawi sesji, zrobi to proxy. Serwery WWW nie zgłaszają się do proxy, tak więc przekierowanie portów nie jest tu potrzebne, bo NAT wie co zrobić z pakietami.

Takie rzeczy to podstawy, więc dziwi mnie, że mylisz pojęcia.