Skocz do zawartości
d.v

Konfiguracja Squid

Polecane posty

Witajcie.

 

W innej kategorii wypłynął temat anonimowego, niewykrywalnego proxy. Wrzucałem tam konfig Squida, który w większości to zadanie wypełnia, ale jako, że nie każdy musi się we wszystkie tematy zagłębiać, postanowiłem wrzucić to do osobnego, czytelniejszego tematu.

 

 

 

 

Zawartość przykładowego pliku squid.conf. Przy takiej konfiguracji Squid działa jako anonimizer, jest w 99,9% przypadków niewykrywalny jako proxy (jest widoczny jako FireFox 3.5.3). Działa nie tylko dla połączeń http. ale dla wszelkich niezbędnych (i paru mniej potrzebnych) usług. Nie cache'uje, jest bardzo lekki dla serwera. Dostęp tylko dla wpisanych w konfiguracji adresów IP (bez loginu/hasła). Działa na porcie 3128.

 

acl all src all
acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl to_localhost dst 127.0.0.0/8
acl localnet src 10.0.0.0/8 # RFC1918 possible internal network
acl localnet src 172.16.0.0/12 # RFC1918 possible internal network
acl localnet src 192.168.0.0/16 # RFC1918 possible internal network
acl SSL_ports port 443 # https
acl SSL_ports port 563 # snews
acl SSL_ports port 873 # rsync
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl Safe_ports port 631 # cups
acl Safe_ports port 873 # rsync
acl Safe_ports port 901 # SWAT
acl purge method PURGE
acl CONNECT method CONNECT
acl cli_aaa_aaa_aaa_aaa src aaa.aaa.aaa.aaa # IP numer 1
acl cli_bbb_bbb_bbb_bbb src bbb.bbb.bbb.bbb # IP numer 2
http_access allow cli_aaa_aaa_aaa_aaa
http_access allow cli_bbb_bbb_bbb_bbb
http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost
http_access allow localnet
http_access deny All
icp_access allow localnet
icp_access deny all
http_port 3128
access_log /var/log/squid/access.log
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern (Release|Package(.gz)*)$ 0 20% 2880
refresh_pattern . 0 20% 4320
acl shoutcast rep_header X-HTTP09-First-Line ^ICY\s[0-9]
upgrade_http0.9 deny shoutcast
acl apache rep_header Server ^Apache
acl Zzzzzz src 0.0.0.0-255.255.255.254/255.255.255.255
broken_vary_encoding allow apache
extension_methods REPORT MERGE MKACTIVITY CHECKOUT
forwarded_for off
header_access Allow allow all
header_access Authorization allow all
header_access Cache-Control allow all
header_access Content-Encoding allow all
header_access Content-Length allow all
header_access Content-Type allow all
header_access Expires allow all
header_access Host allow all
header_access If-Modified-Since allow all
header_access Last-Modified allow all
header_access Location allow all
header_access Pragma allow all
header_access Accept allow all
header_access Accept-Encoding allow all
header_access Accept-Language allow all
header_access Content-Language allow all
header_access Mime-Version allow all
header_access Title allow all
header_access Connection allow all
header_access Proxy-Connection allow all
header_access Cookie allow all
header_access Set-Cookie allow all
header_access All deny all
header_replace User-Agent Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3
hosts_file /etc/hosts
coredump_dir /var/spool/squid
deny_info http://ccccccc.cc Zzzzzz

 

 

Legenda:

aaa.aaa.aaa.aaa = prawdziwy zewnętrzny adres IP pierwszego kompa z dostępem do tego serwera proxy;

bbb.bbb.bbb.bbb = prawdziwy zewnętrzny adres IP drugiego kompa z dostępem do tego serwera proxy;

ccccccc.cc = domena (np. cokolwiek.pl);

Zzzzzz = nazwa acl-a (dowolne słowo);

 

 

 

 

 

A tutaj obrazki pokazujące, jak się spisuje Squid z taką konfiguracją na VPSie w Stanach (wejście na stronę przez skonfigurowaną dla tego proxy przeglądarkę FireFox 3.5.5, łącze: Neostrada TP):

 

18367990591677447101_thumb.jpg 71877411133404159560_thumb.jpg

 

(kliknięcie otwiera obrazek w większym rozmiarze)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

d.v, bardzo fajnie śmiga ten config :o Tylko czy da się zrobić aby również dodatkowe IPki działały jako proxy? Obecnie gdy łącze się przez dodatkowe IP pojawia mi się IP główne (czyli jak by robiło przekierowanie z IP dodatkowego na IP główne).

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość Bartosz Gadzimski

Bardzo przydatny temat, mam nadziej że będzie wykorzystywany do legalnych celów.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

d.v, bardzo fajnie śmiga ten config :) Tylko czy da się zrobić aby również dodatkowe IPki działały jako proxy? Obecnie gdy łącze się przez dodatkowe IP pojawia mi się IP główne (czyli jak by robiło przekierowanie z IP dodatkowego na IP główne).

 

Szczerze Ci się przyznam, że nie zagłębiałem się akurat w ten temat, sam nigdy nie potrzebowałem proxy na więcej niż jednym IP. Jak gdzieś coś znajdę, to obiecuję dodać w tym wątku. Ale nie dzisiaj... i pewnie nie w najbliższych dniach, bo popaprało mi się życie i jakoś czytanie manów itd. jest ostatnią rzeczą, o jakiej teraz myślę.

 

 

 

 

 

Bardzo przydatny temat, mam nadziej że będzie wykorzystywany do legalnych celów.

 

 

Ja też mam nadzieję, że nie znajdzie się nikt na tyle nierozsądny, żeby próbować wykorzystać to nielegalnie. Poza tym pełna anonimowość to fikcja, tak naprawdę to taki konfig to tylko przykrywka, przy nielegalach i tak nie daje żadnego "zabezpieczenia" przed organami :)

 

 

 

P.S. Dzięki za przyklejkę :)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Szczerze Ci się przyznam, że nie zagłębiałem się akurat w ten temat, sam nigdy nie potrzebowałem proxy na więcej niż jednym IP.

 

Kiedyś zrobiłem coś takiego wedle opisu z Howto Forge.

 

Pod linijką:

 

# TAG: tcp_outgoing_address

 

Należy dodać:

 

acl ip1 myip 192.168.0.1
tcp_outgoing_address 192.168.0.1 ip1
acl ip2 myip 192.168.0.2
tcp_outgoing_address 192.168.0.2 ip2
acl ip3 myip 192.168.0.3
tcp_outgoing_address 192.168.0.3 ip3
acl ip4 myip 192.168.0.4
tcp_outgoing_address 192.168.0.4 ip4
acl ip5 myip 192.168.0.5
tcp_outgoing_address 192.168.0.5 ip5

 

Oczywiście trzeba zmienić przykładowe adresy IP na te należące do naszego serwera. Po takim zabiegu Squid będzie się łączył używając adresu, z którym klient nawiązał połączenie.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
openvz-xxxxxxxxxxx:~# /etc/init.d/squid start

Starting Squid HTTP proxy: squid2010/01/06 21:52:33| parseConfigFile: squid.conf:1 unrecognized: 'ďťżacl'

2010/01/06 21:52:33| ACL name 'All' not defined!

FATAL: Bungled squid.conf line 38: http_access deny All

Squid Cache (Version 2.7.STABLE3): Terminated abnormally.

failed!

openvz-xxxxxxxxxxxx:~#

 

co może być nie tak? jak np. usunę linijkę "http_access deny All" w cfg to pojawi się następna z "all"

"icp_access deny all" usunę ją to znów "header_access Allow allow all" itd. ...

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

co może być nie tak? jak np. usunę linijkę "http_access deny All" w cfg to pojawi się następna z "all"

"icp_access deny all" usunę ją to znów "header_access Allow allow all" itd. ...

All != all.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

hm? nie rozumiem ?

Wielkość liter.

 

mnie zastanawia "| parseConfigFile: squid.conf:1 unrecognized: 'ďťżacl'" tak jak by na samym początku pliku jakieś śmieci były. Jakim programem utworzyłeś ten plik ?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

skopiowałem wszystko to co podał d.v. w pierwszy poście i wkleiłem do squid.conf edytowałem notatnikiem, oczywiście zmieniałem tam te rzeczy według legendy:)

 

i mam zmienić z all na duże All ?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

skopiowałem wszystko to co podał d.v. w pierwszy poście i wkleiłem do squid.conf edytowałem notatnikiem, oczywiście zmieniałem tam te rzeczy według legendy:)

 

I o to chodzi właśnie notatnikiem, który wstawił na sam początek niewyświetlaną przez niego deklarację BOM dla Unicode. Utwórz ponownie plik ale jakimś innym edytorem tekstowym.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

a jak zmienić hostname? bo aktualnie host jest takie same jak ip (ip.wp.pl)

jak było trzeba jakąś domenę to posiadam, pomóżcie jak z tym zrobić ;-)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

widocznie się nie da,

teraz jeszcze jedno pytanie, mam vps z dwoma ip.

jak zrobić żeby jeden użytkownik proxy używał jednego ip a ja 2 ?

 

Pozdrawiam

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

acl ip1 myip (tutaj moje ip)

tcp_outgoing_address (a tutaj wpisać pierwsze ip mojego vps'a?) ip1

acl ip2 myip (tutaj kolegi ip)

tcp_outgoing_address (tutaj wpisać drugie ip mojego vps'a?) ip2

 

 

i wtedy np. mój kolega nie będzie mógł używać pierwszego ip?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Skopiowałem sobie ten config gdyż w obecnej sytuacji mam blokowane rapidshare, youtube. Poprzez putty, tunel mogę bez problemu pobierać dane z w/w serwisów. Na tej konfiguracji myślałem że nie będzie problemów a jednak są - serwisy są niedostępne. Da się to jakoś obejść ?

 

Pozdrawiam

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

1. poradnik jest nieaktualny dla squid3;-) http://www.howtoforge.com/anonymous-proxy-using-squid-3-centos-5.x - polecam powyżej polecony poradnik.

2. wie ktoś jak zrobić by squid korzystał z każdego IP w systemie i odzywał się jako IP na które jesteśmy połaczeni bez wpisywania tego IP w konfiguracji ?

 

dla paru IP można dodać tak

acl ip1 myip 192.168.0.1

tcp_outgoing_address 192.168.0.1 ip1

acl ip2 myip 192.168.0.2

tcp_outgoing_address 192.168.0.2 ip2

ale ja mam trochę więcej tychże interfejsów.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Co należy zrobić by w tym configu było zabezpieczenie hasłem dla IP innych niż tych co są ustalone w configu?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Nie chcę zaczynać nowego wątku, bo prawdopodobnie w tym jest rozwiązanie, którego szukam. Proszę tylko o potwierdzenie.

 

Sytuacja ma się tak, że mam serwer dedykowany, na którym działa LAMP. Uruchomiłem na nim kilka stron www, które nie mogą przestać działać. Mam na serwerze jeden adres IP.

 

Jestem kompletnie zielony jeśli chodzi o serwery proxy. Manuale, które do tej pory widziałem pokazują jak skonfigurować squida, żeby przez ten serwer "przechodził" np. cały ruch sieci lokalnej. Z tego co zrozumiałem, to ten serwer może działać tak, że całkowicie będzie obsługiwał jakiś interfejs sieciowy.

 

Ja potrzebuję czegoś innego. Serwer dedykowany ma działać tak, jak do tej pory. Na standardowych portach bez pośrednictwa squida mają się odzywać apache i sshd.

 

Serwer proxy miałby działać wyłącznie w ten sposób, że mógłbym w przeglądarce na moim kompie domowym podać dane tego serwera i umożliwiłoby mi to przeglądanie internetu za pośrednictwem squida na serwerze dedykowanym.

 

Ufff... Sorry, za przydługawy wstęp. Teraz pytanie: czy podana w pierwszym poście konfiguracja spełnia to zadanie? Jeśli uruchomię na dedyku squida z tą konfiguracją, to ruch do i od serwera na portach apache'a, ssh będzie się odbywał tak, jak do tej pory?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

konfiguracja w pierwszej lini podana przez D.V. spełnia te wymagania. Tylko pamiętaj ze jest to konfig do squid w wersji 2 przez co część dyrektyw może być przestarzała/niedziałająca.

Idzie łatwo przerobić do wersji 3 - wystarczy poczytać jakie błędy wywala przy starcie i Googlać.

10-15 minut roboty.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Ja nadal siedzę na tym konfigu, ze Squidem w wersji 2.7.STABLE9 na jednym ze swoich VPSów (na Debianie 5).

Służy mi głównie do przeglądania multimediów zablokowanych dla naszej nadwiślańskiej krainy (przede wszystkim BBC) i działa prawidłowo, tzn. nie natknąłem się jeszcze na jakiekolwiek problemy, logi są czyste, nigdzie mnie nie zablokowało.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

1 sprawa;-)

w wersji 3.x spróbuj wejść aktualnie na allegro. Większość przeglądarek wykrywa jakiś problem z kompresją plików.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Na starym 2.7 z moim konfigiem działa z Allegro (przez Operę 11.10) bez zgrzytu.

Jedyna zmiana, jaką wprowadziłem od czasu pierwszego posta to zmiana User-Agent na d.v/0.1 (d.v OS 0.1; U; pl) Version/0.1 :)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się


×