Титла: Squid във вътрешна мрежа Публикувано от: Neoromantic в Aug 15, 2006, 12:31 Имам следния проблем:
Намирам се в мрежа 192.168.0.0/24 Искам да настроя SQUID да работи като вътрешно за мрежата proxy. Машината, на която го настройвам е с IP Adress: 192.168.0.5. На нея default gateway e : 192.168.0.1 Политиките са АCCEPT и няма никакви ограничения. Ако поискам да мина през този SQUID от друга машина(клиент) задавам на браузъра да минава през 192.168.0.5 Порт:8080, като също така премахвам default gateway на клиентската машина. SQUID е настроен по следния начин: http_port 8080 acl filedeny urlpath_regex -i "/opt/squid/etc/filedeny" http_acess deny filedeny filedeny \.mp3$ \.avi$ На машината с IP: 192.168.0.1 също има настроен squid. Там също има подобни рестрикции, които работят. Грешките за отказан достъп се получават оттам, а не от машината с IP 192.168.0.5. Това обаче е за ограничението по файлово разширение. Ако ограничавам протокол (например ftp) заявката стига само до 192.168.0.5 и грешките се връщат оттам. Защо заявките с разрешен пртокол и забранени файлови разширения се препращат към 192.168.0.1, макар че би трябвало да се отказват още при 192.168.0.5? Титла: Squid във вътрешна мрежа Публикувано от: morbid_viper в Aug 15, 2006, 14:48 оффф... темата е доста пространна и не може да се опише накратко като отговор тук, по скоро като отделна статия.
аз съм направил подобно нещо във всички офиси на нашата компания. за по-лесно, обаче, използвам squidGuard. там се определят класове от мрежи, на които можеш да зададеш различни неща като ограничение до какво да има достъп и до какво да няма, както и ограничения по време. в squid.conf се настройва почти единствено това:
ето и примерен squidguard.conf
ето и малко примери за това как се ограничават музиката, филмите, порното дори и джава аплетите: /var/lib/squidGuard/db/blacklist/expressions
/var/lib/squidGuard/db/banned/expressions
в другите файлове от директорията domains и urls е ясно какво се пише :-) съзнавам, че това е скок в тъмното, затова е по-добре да се попрочете документацията на squidGuard. това, кеот съм сложил тук е отлично работеща настройка! Титла: Squid във вътрешна мрежа Публикувано от: Neoromantic в Aug 15, 2006, 22:32 morbid_viper, благодаря ти за подробния отговор. Въпреки това аз си мисля, че прескачането на едното proxy се случва, заради конфигурирания на тази машина dns, който също е вътрешен за мрежата. Оттам запитването минава през firewall(gateway) на мрежата. А там е исталиран другия squid.
Въпроса е последователността, в която минава намирането на www.yahoo.com да кажем и по точно какво се случва при търсене на този адрес с конфигуриран proxy сървър, без dns и default gateway. клиент(192.168.0.5) ->proxy1(192.168.0.2) - www.yahoo.com? proxy-> dns(192.168.0.3) - www.yahoo.com? dns->firewall & proxy2(192.168.0.1)->rootsevers proxy1 IP: 192.168.0.2 Default Gateway:192.168.0.1 Dns:192.168.0.3 Има ли някаква вероятност това да се случва? Титла: Squid във вътрешна мрежа Публикувано от: morbid_viper в Aug 16, 2006, 10:12 проксито няма нищо общо с dns сървъра - squid ти посредничи (почти) само за уеб протоколите. dns е съвсем друг случай... него си го пускаш да си минава през защитната стена (53 порт по udp), а проксито ще се съобрази с записите в твоя /etc/resolf.conf и ще си намира IP-тата независимо къде се намира dns сървъра (някъде в интернет, във вътрешната мрежа или на същата машина).
ако на една машина нямаш настроен шлюз по подразбиране (справка: route -n) и не е указано dns сървър (справка: cat /etc/resolf.conf), то нямаш и интернет. една заявка може да минава през много проксита, което всъщност се случва в действителност. нима си мислиш, че твоят и-нет доставчик не си е сложил прокси за да спести малко трафик? при мен имам и трите случая в различните офиси. и всички работят. :-) дори съм го направил да е прозрачно, така че на хората да не се налага да настройват нищо на браузърите си. всъщност те не знаят, че има прокси. за да пуснеш squid като прозрачно прокси трябват още 4 реда в /etc/squid/squid.conf и едно NAT правило в защитната стена. /etc/squid/squid.conf
с --dports 70,210,80,8080 се задават портовете, които да се пренасочат към проксито, което работи на порт 3128. по принцип би трябвало и https да минава, но при мен нещо се чупи и за това там няма порт 443. някой ден ще видя какъв е проблема, но сега ме мързи :-) |