Сетевое администрирование в UNIX, 04 лекция (от 15 марта)
Материал из eSyr's wiki.
(Новая: == SQUID == Мы рассматривали автризацию на прокси серевере. Сегодня рассмотрим на примере сквида. У него ...) |
(опечатки) |
||
Строка 1: | Строка 1: | ||
== SQUID == | == SQUID == | ||
- | Мы рассматривали | + | Мы рассматривали авторизацию на прокси сервере. Сегодня рассмотрим на примере сквида. |
- | У него есть файл | + | У него есть файл squid.conf, он может включать разные директивы. |
- | auth_param | + | auth_param -- параметр, с помощью которого сквид может аутентифицировать пользователя. |
auth_param Win Access Directory -- сквид будет проводить авторизацию через виндовую АД. | auth_param Win Access Directory -- сквид будет проводить авторизацию через виндовую АД. | ||
- | При сборке самбы вы | + | При сборке самбы вы указываете что она если не сказано иное собирает авторизующую программу, которую потом смотреть в smb.conf, где будет прописан сервер и какая авторизация. И, соответственно, в сквиде будет прописано две вещи: |
auth_param ntlm program path_to_bm/ntbm_auth --helper_protocol=squid-2.5-ntlmssp | auth_param ntlm program path_to_bm/ntbm_auth --helper_protocol=squid-2.5-ntlmssp | ||
Строка 19: | Строка 19: | ||
Строчек может быть сколько угодно, сквид будет из применять по очереди, пока кто-нибудь не вернёт да, или не закончатся строчки. | Строчек может быть сколько угодно, сквид будет из применять по очереди, пока кто-нибудь не вернёт да, или не закончатся строчки. | ||
- | В basic | + | В basic протоколе отдаётся строка "логин <пробел> пароль" |
- | Есть у нас программа с помощью которой сквид может проверить логин и пароль. Какон может понять кого пускать а кого не пускать. У нас есть acl. | + | Есть у нас программа, с помощью которой сквид может проверить логин и пароль. Какон может понять кого пускать а кого не пускать. У нас есть acl. |
- | В файле | + | В файле squid.conf |
acl имя тип значение | acl имя тип значение | ||
Строка 75: | Строка 75: | ||
refresh_pattern [-i] regex min % max options | refresh_pattern [-i] regex min % max options | ||
- | позволяет менять политику сколько объект хранится в кэше прокси сервера. У каждого объекта по стандарту есть время жизни, через некоторое время она устаревает и её надо запрашивать | + | позволяет менять политику сколько объект хранится в кэше прокси сервера. У каждого объекта по стандарту есть время жизни, через некоторое время она устаревает и её надо запрашивать снова. С помощью refresh_pattern мы можем ему сказать что картинка на самом деле может жить в кэше подольше. В опции мы можем сказать -i \gif$ 43200 100% 43200 reload_into_ims. Если пользователь запрашивает картинку то проксисервер сначала запросит время изменения кртинки. 43200 -- время в минутах сколько надо хранить. |
- | + | можно отсекать или разрешать кэшировать по ацлям, можно по размеру. | |
purge -- может или удалить объекты из кэша или их куда-нибудь сложить, если ам интересно что там было. | purge -- может или удалить объекты из кэша или их куда-нибудь сложить, если ам интересно что там было. | ||
Строка 86: | Строка 86: | ||
delay_pools количество | delay_pools количество | ||
- | После того как задали количество их можно конфигурировать. Бывают 3 типов, | + | После того как задали количество их можно конфигурировать. Бывают 3 типов, определяются словом |
delay_class 1 общ_труба | delay_class 1 общ_труба | ||
Строка 94: | Строка 94: | ||
- | + | Определенное ограничение в байтах/секунду на всех упомянутых, на всех и каждого,на всех, подсети и каждого. | |
- | Правила | + | Правила следующего вида |
- | delay_access №(номер пула) | + | delay_access №(номер пула) действующий acl |
говорит какой номер какого класса | говорит какой номер какого класса | ||
Строка 104: | Строка 104: | ||
delay_parameters № общ сеть индив задаем скорости | delay_parameters № общ сеть индив задаем скорости | ||
- | delay_class 1 2 # первый пул второго | + | delay_class 1 2 # первый пул второго класса |
параметры число/число -- с какой скоростью мы вкладываем в трубу, второе то скакой скоростью выходит. | параметры число/число -- с какой скоростью мы вкладываем в трубу, второе то скакой скоростью выходит. | ||
Строка 113: | Строка 113: | ||
в таком случае маленькие станички будут грузится со скорстью 8кбсек, а большие файлы со скоростью 1 кбсек. | в таком случае маленькие станички будут грузится со скорстью 8кбсек, а большие файлы со скоростью 1 кбсек. | ||
- | error_directory отсюда сквид берёт сообщения от том почему что-то не получилось. Например запретили какому то | + | error_directory отсюда сквид берёт сообщения от том почему что-то не получилось. Например запретили какому то пользователю доступ по http и хотите объяснить ему, почему именно вы это сделали. С помощью команды |
deny_info ERR_CUSTOM_DENY nopass | deny_info ERR_CUSTOM_DENY nopass | ||
Строка 125: | Строка 125: | ||
always_direct | always_direct | ||
- | Если у вас запущены два прокси сервера -- более главный и более подчиненный, то подчиненному можно | + | Если у вас запущены два прокси сервера -- более главный и более подчиненный, то подчиненному можно прописать главного с помощью команды peer. Если невер_директ, то подчинённый никогда не скачивает, всегда запрашивает у старшего. Если алвейс_директ -- то никогда не ходит к главному. Акадо балуется организацией сетей из проксей. |
Размер объектов которые мы сохраняем на диске задается | Размер объектов которые мы сохраняем на диске задается | ||
Строка 146: | Строка 146: | ||
ufs файл объект | ufs файл объект | ||
- | aufs в виде файлов но за счёт позикс нитей может | + | aufs в виде файлов но за счёт позикс нитей может обращаться одновременно к нескольким |
diskd пытается собрать несколько запросов в один. | diskd пытается собрать несколько запросов в один. |
Версия 10:13, 20 марта 2011
SQUID
Мы рассматривали авторизацию на прокси сервере. Сегодня рассмотрим на примере сквида.
У него есть файл squid.conf, он может включать разные директивы.
auth_param -- параметр, с помощью которого сквид может аутентифицировать пользователя.
auth_param Win Access Directory -- сквид будет проводить авторизацию через виндовую АД.
При сборке самбы вы указываете что она если не сказано иное собирает авторизующую программу, которую потом смотреть в smb.conf, где будет прописан сервер и какая авторизация. И, соответственно, в сквиде будет прописано две вещи:
auth_param ntlm program path_to_bm/ntbm_auth --helper_protocol=squid-2.5-ntlmssp
Требуется две строчки потому что разные браузеры по разному обращаются к прокси серверу за авторизацией.
auth_param basic program path_to_bm/ntbm_auth --helper_protocol=squid-2.5-basic
Строчек может быть сколько угодно, сквид будет из применять по очереди, пока кто-нибудь не вернёт да, или не закончатся строчки.
В basic протоколе отдаётся строка "логин <пробел> пароль"
Есть у нас программа, с помощью которой сквид может проверить логин и пароль. Какон может понять кого пускать а кого не пускать. У нас есть acl.
В файле squid.conf
acl имя тип значение
Типы
src знач ип/маска
dst знач ип/маска
srcdomain знач дом имя
dstdomain зная дом имя
proxy_auth имя_польз(REQUIRED -- все авторизованные)
Скыид может сам хранить во ткрытом виде логин проль, тогда можно добавить тип
ident
acl all src 0.0.0.0
Ещё есть тип time -- время, день недели.
после всего этого правил, first wins.
http_access allow
http_access deny all #запретить всё, что не разрешилось предыдущими
Общий вид
http_access действие acl1
acl2
acl3
от ацлей берётся пересечение.
http_access -- открыть или закрыть доступ хттп.
Есть ещё http_port ip:port transparent
на каком прту слушать, транспарент -- обрабатывать пакеты без спец заголовоков(тогда естественно никакой авторизции или правил по именам пользователей).
refresh_pattern [-i] regex min % max options
позволяет менять политику сколько объект хранится в кэше прокси сервера. У каждого объекта по стандарту есть время жизни, через некоторое время она устаревает и её надо запрашивать снова. С помощью refresh_pattern мы можем ему сказать что картинка на самом деле может жить в кэше подольше. В опции мы можем сказать -i \gif$ 43200 100% 43200 reload_into_ims. Если пользователь запрашивает картинку то проксисервер сначала запросит время изменения кртинки. 43200 -- время в минутах сколько надо хранить.
можно отсекать или разрешать кэшировать по ацлям, можно по размеру.
purge -- может или удалить объекты из кэша или их куда-нибудь сложить, если ам интересно что там было.
Можно завести делей пулы
delay_pools количество
После того как задали количество их можно конфигурировать. Бывают 3 типов, определяются словом
delay_class 1 общ_труба 2 общ и индив
3 общ сеть и индив
Определенное ограничение в байтах/секунду на всех упомянутых, на всех и каждого,на всех, подсети и каждого.
Правила следующего вида
delay_access №(номер пула) действующий acl
говорит какой номер какого класса
delay_parameters № общ сеть индив задаем скорости
delay_class 1 2 # первый пул второго класса
параметры число/число -- с какой скоростью мы вкладываем в трубу, второе то скакой скоростью выходит.
пример
delay_parameters 1 -1/-1 1000/8000
в таком случае маленькие станички будут грузится со скорстью 8кбсек, а большие файлы со скоростью 1 кбсек. error_directory отсюда сквид берёт сообщения от том почему что-то не получилось. Например запретили какому то пользователю доступ по http и хотите объяснить ему, почему именно вы это сделали. С помощью команды
deny_info ERR_CUSTOM_DENY nopass
nopass -- значит без пароля, потом говорите что всем кто попал под запрещающие действие ацля нопасс показать конкретную страницу с таким то урлом.
Как задается сколько гд хранить?
never_direct действ ацл
always_direct
Если у вас запущены два прокси сервера -- более главный и более подчиненный, то подчиненному можно прописать главного с помощью команды peer. Если невер_директ, то подчинённый никогда не скачивает, всегда запрашивает у старшего. Если алвейс_директ -- то никогда не ходит к главному. Акадо балуется организацией сетей из проксей.
Размер объектов которые мы сохраняем на диске задается
minimum_object_size
maximum_object_size
Где хранить определяется директиой
cahce_dir тип путь разм число_папок ч
например
ufs /usr/squidcache
Тип бывает
ufs файл объект
aufs в виде файлов но за счёт позикс нитей может обращаться одновременно к нескольким
diskd пытается собрать несколько запросов в один.
null
Можно прописать рид онли, тогда он будет только читать из кеша.