muzruno.com

Създаване на Squid за начинаещи. Как да конфигурираме прокси сървър на Squid

Squid - решение, широко използвано в средата на програмистите, системните администратори и ентусиастите на компютърните мрежи, за да създадат ефективен прокси сървър и да го управляват. Програмата е особено привлекателна, тъй като е междуплатформена. Това означава, че можете да го инсталирате и стартирате както на Linux, така и на други операционни системи, които съответстват на архитектурата на Unix и в Windows. Възможностите на този инструмент са най-изявените. Как могат да бъдат използвани? Има ли някакви функции при конфигурирането на програмата в зависимост от конкретната операционна система?

Въведение в Squid

Какво представлява Squid? Под това име е известен много продуктивен прокси сървър, който се използва най-често с уеб клиенти. С него можете да организирате едновременен достъп до Интернет за няколко потребители. Друга забележителна собственост на Squid е, че може да кешира различни заявки. Това ви позволява да ускорите получаването на файлове, защото не е необходимо да ги изтегляте отново от Интернет. Прокси сървърът Squid може също да коригира скоростта на интернет канала, когато се отнася до действителното натоварване.

Конфигуриране на Squid

Squid е пригоден за използване на Unix платформи. Има обаче версии на Squid за Windows и много други популярни операционни системи. Тази програма, както и много операционни системи, базирани на концепцията Unix, са безплатни. Тя поддържа HTTP, FTP, SSL, ви позволява да конфигурирате гъвкав контрол върху достъпа до файлове. Squid също записва заявки за DNS в кеша. По този начин е възможно да се настрои и прозрачно Squid-proxy, което е работа на сървъра във формат, когато потребителят не знае, който се адресира до мрежата чрез него, вместо директно. По този начин Squid е мощен инструмент в ръцете на системен администратор или доставчик на комуникационни услуги.

Практическа полза от Squid

Кога е Squid най-полезен? Например, това може да е задача, при която е необходимо ефективно да се интегрират няколко компютъра в мрежата и да се осигури достъп до Интернет. Целесъобразността на използването на прокси сървър в този случай е, че заявките между него и браузъра на конкретен компютър са по-бързи, отколкото в случай на взаимодействие на потребителя директно с интернет. Също така, когато използвате кеша на Squid в самия браузър, можете да го деактивирате напълно. Тази функция е много популярна сред потребителите.

Композиция Калмар

Въпросното решение се състои от няколко компонента. Всъщност това е софтуерен пакет. В своята структура - приложение, с което сървърът се стартира, както и допълнителна програма за работа с DNS. Интересното му е, че той стартира процеси, всеки от които функционира независимо от другите. Това ви позволява да оптимизирате сървърното взаимодействие с DNS.

Инсталиране на програмата

Инсталирането на Squid обикновено не създава трудности. Много е лесно да поставите програма на Linux: просто въведете $ sudo apt-get install squid.

Конфигуриране на Squid Proxy

Що се отнася до Squid за Windows, всичко е малко по-сложно тук. Въпросът е, че тази програма няма изпълними файлове - основните елементи на приложенията за операционната система от Microsoft.

Инсталирането на Squid в Windows обаче е задача, която може да бъде решена доста бързо. Необходимо е да се намери сайт squid-cache.org или свързаните с него ресурси, разпространение, което съдържа .bat файлове, които са донякъде подобни на традиционните изпълними файлове на Windows. След това ги копирайте в отделна папка на диска. След това трябва да стартирате Squid като системна услуга. След това програмата може да бъде използвана като прокси чрез браузър на компютъра. Може да се каже, че това е мястото, където инсталацията на Squid е завършена.

Разпространението на прокси сървъра почти винаги съдържа конфигурационен файл от тип .conf. Това е основният инструмент за настройка на интернет достъп от компютъра на потребителя и други устройства, свързани към локалната мрежа, докато използвате Squid.

Нюанси на персонализиране

Какви нюанси могат да включват създаването на Squid? Windows е операционна система, в която работата с прокси сървъра ще се извършва чрез редактиране на конфигурационни файлове.

Конфигуриране на Squid Ubuntu

В случай на Linux, можете да използвате командния ред за някои процедури. Но като цяло, в тази операционна система, както и ако OS, където Squid се конфигурира, е Windows, най-често се използва файлът squid.conf. Той определя определени изрази ("команди"), според които сървърът управлява връзките към мрежата.

Затова нека да разгледаме как да конфигурирате Squid, по-подробно. Първата стъпка е да се даде възможност на мрежовите потребители да имат достъп до сървъра. За да направите това, поставете съответните стойности в http_port, както и в http_access във файла squid.conf. Също така ще бъде полезно да създадете списък за контрол на достъпа или ACL. Настройките на http_port са важни за нас, тъй като нашата задача е да подготвим Squid само за поддръжка на определена група компютри. От друга страна, такъв параметър като http_access, е важно, защото с нея, можем да контролираме достъпа до определени мрежови ресурси, изисква, тъй като някои адреси (и евентуално други критерии - протоколите, пристанища и други свойства, които се съдържат в ACL).

Как да зададете необходимите настройки? Това е много лесно.

Да приемем, че създадохме компютърна мрежа с обхват от адреси, започващ с 192.168.0.1 и завършващ с 192.168.0.254. В този случай задайте следния параметър в настройките на ACL: src 192.168.0.0/24. Ако трябва да конфигурираме порт, тогава в конфигурационния файл трябва да направим запис http_port 192.168.0.1 (просто укажете правилния IP адрес) и въведете номера на порта.

За да ограничите достъпа до прокси, създаден от Squid (без да броим компютрите, влизащи в локалната мрежа), е необходимо да направите промени в http_access. Това се прави просто - с помощта на изрази ( "команди" - се съгласяват да ги наречем така, въпреки че, строго погледнато, в текста не са, но в краен ред, за да отговарят напълно на тях) позволи LocalNet и отрече всичко. Много е важно да поставите първия параметър над втория, тъй като Squid ги разпознава на свой ред.

Работа с ACL: забрана за достъп до сайтове

Всъщност настройките за достъп са възможни в Squid в много широк диапазон. Да разгледаме примери за полезни при практическото управление на локалната мрежа.

Squid за Windows

Елементът src е само в търсенето. С него можете да коригирате IP адреса на компютъра, който е подал заявката до прокси сървъра. Чрез комбинирането на елемента src с http_access можете например да разрешите достъп до мрежа за конкретен потребител, но да забраните подобни действия за всички останали. Това се прави много просто.

Пишеме ACL (името на потребителската група) src (интервалът от IP адреси, които попадат под контрола). Показаният по-долу ред е ACL (името на конкретния компютър) src (IP адрес на съответния компютър). След това вече работим с http_access. Задаваме разрешение за влизане в мрежата за група потребители и отделен персонален компютър чрез командите, които позволяват http_access. Линията по-долу уточнява, че достъпът до останалите компютри в мрежата се затваря от командата отказва всички.

Настройването на прокси сървъра Squid също включва използването на друг полезен елемент, осигурен от системата за контрол на достъпа dst. Позволява да се определи IP адреса на сървъра, към който потребителят на прокси сървър иска да се свърже.

С помощта на този елемент можем например да ограничим достъпа до определена подмрежа. За да направите това, можете да използвате командата dst (IP адрес на подмрежата) на ACL (мрежово обозначение), следният ред е отричане на http_access (името на конкретния компютър в мрежата).

Друг полезен елемент е dstdomain. Това ще ни позволи да определим домейна, към който потребителят иска да се свърже. Чрез използването на въпросния елемент можем да ограничим достъпа на потребител, например до външни Интернет ресурси. За да направите това, можете да използвате командата: ACL (група от сайтове) dstdomain (адреси на сайтове), ред по-долу - http_access deny (име на компютър в мрежата).



Прокси сървър

Съществуват и други забележими елементи в структурата на системата за контрол на достъпа. Сред тях - SitesRegex. С този израз можем да ограничите достъпа на потребителите до интернет домейни, съдържащи определена дума, като например поща (ако задачата е да се забрани на служителите да се справят с пощенски сървъри на трети страни). За да направите това, можете да използвате командата ACL SitesRegexMail dstdom_regex поща, а след това на ACL SitesRegexComNet dstdom_regex .com $ (това означава, че достъпът ще бъде затворен за съответните видове домейни). Линията по-долу - http_accesss отричат ​​с посочване на компютрите, от които изходът към външни пощенски сървъри е нежелан.

В някои изрази може да се използва превключвателят -i. Използвайки го, както и елемент като url_regex, за създаване на шаблон за уеб адреси, можем да откажем достъп до файлове с дадено разширение.

Например, с помощта на ACL NoSwfFromMail url_regex -i команда поща. * . Swf $ регулираме прибягва до пощенските обекти в структурата на които има Flash-ролки. Ако не е необходимо да въвеждате име на домейн в алгоритмите за достъп, можете да използвате израз urlpath_regex. Например, под формата на команда ACL медии urlpath_regex -i .wma $ .mp3 $.

Забрана за достъп до програми

Настройката на Squid ви позволява да откажете на потребителите достъп до определени програми, когато използвате ресурси на прокси сървър. За тази цел може да се използва командата ACL (име на програмата) (обхват на портовете), редът по-долу е http_access отрича всички (име на програмата).

Разрешаване на стандарти и протоколи

Конфигурирането на Squid също така позволява на системния администратор да посочи предпочитания протокол за използване на интернет канала. Например, ако е необходимо на лице с особен PC достъп до мрежата чрез FTP протокол, можете да използвате следната команда: ACL ftpproto прото FTP, долния ред - http_access отрече (името на компютъра) ftpproto.

Използвайки елемента на метода, можем да определим как трябва да бъде изпълнена заявката за HTTP. Общо има 2 от тях - GET и POST, но в някои случаи това е първото, а не второто и обратно. Например, възможно е конкретен служител да не преглежда пощата чрез mail.ru, но неговият работодател няма да има нищо против, ако дадено лице иска да прочете новини на посочения сайт. За да направите това, системният администратор може да използвате следната команда: ACL sitemailru dstdomain .mail.ru, линия под - ACL methodpost метод POST и т.н. - http_access отрече (името на компютъра) methodpost sitemailru.

Това са нюансите, които включват създаването на Squid. Ubuntu се използва, Windows или друга операционна система, съвместима с прокси сървъра. - Характеристиките на уточняване на необходимите параметри, считани от нас, са типични за всяка софтуерна среда на Squid. Работата с този софтуер е невероятно вълнуващ процес и в същото време просто поради логиката и прозрачността на основните алгоритми за настройка на програмата.

Обърнете внимание на някои ключови точки, които са специфични за настройката на Squid.

Какво трябва да обърна внимание при настройването?

Ако има трудности при намирането на файла squid.conf, който е основният инструмент за конфигуриране на сървъра, можете да опитате да проверите директорията и т.н. / калмар.

Калкулатор прокси

Най-доброто от всичко, ако работите с въпросния файл, ще използвате най-простия текстов редактор: не е необходимо да имате елементи за форматиране в линиите, които отговарят за конфигурирането на прокси сървъра.

В някои случаи може да е необходимо прокси сървърът на доставчика да бъде посочен по време на работа. За това съществува командата cache_peer. За да го въведете е необходимо: cache_peer (адреса на прокси сървър на доставчика).

В някои случаи е полезно да се определи количеството RAM, което Squid ще използва. Това може да се направи с командата cache_mem. Освен това е полезно да посочите директорията, в която ще се съхраняват кешираните данни, като използвате израза cache_dir. В първия случай цялата команда ще изглежда като cache_mem (размерът на RAM в байтове), във втория - като cache_dir (адреса на директорията, броя на мегабайтите дисково пространство). Желателно е да поставите кеша на най-високопроизводителните дискове, ако има избор.

Може да се наложи да посочите компютрите, които имат достъп до прокси сървъра. Това може да бъде направено с командите на сървъра, разрешени от ACL сървъри (обхватът на IP адресите на компютрите) и ACL на localhost src (локален адрес).

Ако SSL портове се използват в връзки, те също могат да бъдат защитени чрез командата ACL ssl_ports порт. В същото време можете да забраните използването на метода CONNECT за останалите портове, освен тези, посочени в защитната връзка SSL. Това може да се направи с помощта на израза http_access отрича CONNECT! SSL_Ports.

Squid и pfSense

В някои случаи, заедно с въпросния прокси сървър, се използва интерфейсът pfSense, който се използва като ефективен защитна стена. Как да организираме съвместната си работа? Алгоритъмът за решаване на този проблем не е твърде сложен.

Първо трябва да работим в интерфейса pfSense. Squid, което вече е конфигурирано от нас, ще трябва да бъде инсталирано чрез SSH команди. Това е един от най-удобните и безопасни начини за работа с прокси сървъри. За да направите това, трябва да активирате активирането в интерфейса Secure Shell. За да го намерите, трябва да изберете елемента от менюто Система, след това - Разширени, след - Административен достъп.

Инсталиране на Squid

След това трябва да изтеглите PuTTY - удобно приложение за работа със SSH. След това, като използвате конзолата, трябва да инсталирате Squid. Това лесно се прави с командата -pkg install squid. След това трябва да инсталирате прокси сървър чрез уеб интерфейса pfSense. Squid (не можете да конфигурирате неговите параметри на този етап) може да бъде инсталирана чрез избиране на елемента от менюто System, след това Packages, след - Available Packages. Пакетът Squid Stable трябва да е на разположение в съответния прозорец. Ние го избираме. Необходимо е да зададете следните настройки: Прокси интерфейс: LAN. Пред прозореца Прозрачна прокси можете да отметнете. Избираме адреса на дневника и маркираме руския език като предпочитан. Кликнете върху Запазване.

Инструмент за оптимизиране на ресурсите

Настройката на Squid позволява на системните администратори ефективно да разпределят сървърните ресурси. Това означава, че в този случай не става дума за забрана на достъпа до който и да е сайт, но интензивността на участието на канала от потребител или от група от тях може да изисква контрол. Тази програма ви позволява да решите този проблем по няколко начина. Първо, това включва механизми за кеширане: поради това не се изисква многократно изтегляне на файлове от интернет, тъй като натоварването на трафика ще намалее. На второ място, това ограничение на достъпа до мрежата във времето. Трето, той определя гранични стойности за скоростта на обмен на данни в мрежата по отношение на действията на определени потребители или конкретни видове изтеглени файлове. Нека разгледаме тези механизми по-подробно.

Оптимизиране на мрежовите ресурси чрез кеширане

В структурата на мрежовия трафик има много видове файлове, които се използват непроменени. Това означава, че след като ги качите на компютър, потребителят може да не повтори съответната операция. Програмата Squid ви позволява да конфигурирате гъвкав механизъм за разпознаване на такива файлове от сървъра.

Сравнително полезна опция за прокси сървъра, който проучваме, е проверката на възрастта на файла в кеша. Обектите, които са твърде дълги в съответната област на паметта, трябва да бъдат актуализирани. Активирането на тази опция е възможно, като използвате командата refresh_pattern. Така че целият израз може да изглежда като refresh_pattern (минималната продължителност на времето е в минути, максималният процент на "пресните" файлове е в%, максималният период). Съответно, ако файлът е в кеша, по-дълъг от установените критерии, може да е необходимо да изтеглите новата му версия.

Оптимизиране на ресурсите чрез ограничения за достъп до време

Друга възможност, която може да се използва благодарение на възможностите на Squid-Proxy, е ограничението на достъпа на потребителите до мрежови ресурси във времето. Той се инсталира с помощта на много проста команда: ACL (име на компютър) време (ден, час, минута). Достъпът може да бъде ограничен за всеки ден от седмицата, като заместване на "деня" с първата буква на думата, съответстваща на нейното име, в английската азбука. Например, ако това е понеделник, тогава M, ако вторник, а след това Т. Ако командата няма думата "ден", тогава съответната забрана ще бъде зададена за цялата седмица. Интересно е, че е възможно да се регулира графикът за влизане в мрежата, осъществен от потребителите с помощта на определени програми.

Оптимизиране на ресурсите чрез ограничаване на скоростта

Очевидно често срещана опция е оптимизирането на ресурсите чрез регулиране на допустимата скорост на обмен на данни в компютърна мрежа. Прокси сървърът, който изучаваме, е най-удобният инструмент за решаване на този проблем. Скоростта на комуникация в мрежата се регулира от параметри като delay_class, delay_parameters, delay_access, както и от елемента delay_pools. Всичките четири компонента са от голямо значение за решаване на проблемите, с които се сблъскват системните администратори при оптимизирането на ресурсите на локалната мрежа.

Споделяне в социалните мрежи:

сроден