<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/css" href="http://wiki2.linuxformat.ru/skins/common/feed.css?97"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://wiki2.linuxformat.ru/index.php?action=history&amp;feed=atom&amp;title=LXF76%3AHardcore_Linux1</id>
		<title>LXF76:Hardcore Linux1 - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://wiki2.linuxformat.ru/index.php?action=history&amp;feed=atom&amp;title=LXF76%3AHardcore_Linux1"/>
		<link rel="alternate" type="text/html" href="http://wiki2.linuxformat.ru/index.php?title=LXF76:Hardcore_Linux1&amp;action=history"/>
		<updated>2026-05-13T20:54:09Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.11.1</generator>

	<entry>
		<id>http://wiki2.linuxformat.ru/index.php?title=LXF76:Hardcore_Linux1&amp;diff=6469&amp;oldid=prev</id>
		<title>Yaleks: категория</title>
		<link rel="alternate" type="text/html" href="http://wiki2.linuxformat.ru/index.php?title=LXF76:Hardcore_Linux1&amp;diff=6469&amp;oldid=prev"/>
				<updated>2009-01-07T09:03:09Z</updated>
		
		<summary type="html">&lt;p&gt;категория&lt;/p&gt;

			&lt;table style=&quot;background-color: white; color:black;&quot;&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
			&lt;tr&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Версия 09:03, 7 января 2009&lt;/td&gt;
			&lt;/tr&gt;
		&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 320:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 320:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;армии Прокси!&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;армии Прокси!&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;|Ширина=}}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;|Ширина=}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;[[Категория:Hardcore Linux]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;[[Категория:Пол Хадсон]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Yaleks</name></author>	</entry>

	<entry>
		<id>http://wiki2.linuxformat.ru/index.php?title=LXF76:Hardcore_Linux1&amp;diff=4610&amp;oldid=prev</id>
		<title>Yaleks: викификация</title>
		<link rel="alternate" type="text/html" href="http://wiki2.linuxformat.ru/index.php?title=LXF76:Hardcore_Linux1&amp;diff=4610&amp;oldid=prev"/>
				<updated>2008-05-16T08:22:33Z</updated>
		
		<summary type="html">&lt;p&gt;викификация&lt;/p&gt;
&lt;a href=&quot;http://wiki2.linuxformat.ru/index.php?title=LXF76:Hardcore_Linux1&amp;amp;diff=4610&amp;amp;oldid=4609&quot;&gt;(Различия между версиями)&lt;/a&gt;</summary>
		<author><name>Yaleks</name></author>	</entry>

	<entry>
		<id>http://wiki2.linuxformat.ru/index.php?title=LXF76:Hardcore_Linux1&amp;diff=4609&amp;oldid=prev</id>
		<title>Yaleks: Новая: == Squid Настройка прокси-сервера ==  '''''Пол Хадсон''' (Paul Hudson) затевает новую серию статей для продвинутых п...</title>
		<link rel="alternate" type="text/html" href="http://wiki2.linuxformat.ru/index.php?title=LXF76:Hardcore_Linux1&amp;diff=4609&amp;oldid=prev"/>
				<updated>2008-05-16T08:20:44Z</updated>
		
		<summary type="html">&lt;p&gt;Новая: == Squid Настройка прокси-сервера ==  '''''Пол Хадсон''' (Paul Hudson) затевает новую серию статей для продвинутых п...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая статья&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Squid Настройка прокси-сервера ==&lt;br /&gt;
&lt;br /&gt;
'''''Пол Хадсон''' (Paul Hudson) затевает новую серию статей для продвинутых пользователей.''&lt;br /&gt;
&lt;br /&gt;
Недавно мучились с головоломной настройкой&lt;br /&gt;
прокси-сервера? Ну и зря. О нудных проблемах&lt;br /&gt;
должны заботиться небритые системные администраторы, сутками не вылезающие из офиса и ведрами хлебающие кофе. В данной рубрике мы будем рассказывать о&lt;br /&gt;
вещах, подобных гоночным болидам: мощных и невероятно&lt;br /&gt;
сложных. Зато интересных!&lt;br /&gt;
&lt;br /&gt;
=== Squid – это круто ===&lt;br /&gt;
Вы угадали: Squid – это прокси-сервер. Но почему крутой?&lt;br /&gt;
Скоро узнаете. У нас, в LinuxFormat, все начинают бесноваться, если какой-нибудь web-сайт открывается дольше наносекунды, переводя наше драгоценное время. При этом мы&lt;br /&gt;
постоянно скачиваем новые дистрибутивы, так что пробки в&lt;br /&gt;
канале нас тоже волнуют. Однако ситуация поправима: есть&lt;br /&gt;
способ сэкономить – сразу! – и время, и полосу пропускания. Имя ему – правильно, Squid. Этот свободный скоростной&lt;br /&gt;
прокси-сервер кэширует сайты и контролирует права доступа&lt;br /&gt;
к сетевым ресурсам, а если его хорошенько попросить, то и&lt;br /&gt;
порядок у вас наведет.В процессе урока вы узнаете, как:&lt;br /&gt;
* базовая установка Squid оптимизирует Интернет-соединение&lt;br /&gt;
* продвинутый Squid защищает детей от гадких сайтов&lt;br /&gt;
* Squid’но подшутить над вашими коллегами&lt;br /&gt;
Ну что ж, довольно слов. Начнем, пожалуй!&lt;br /&gt;
&lt;br /&gt;
=== Кэш в руках ===&lt;br /&gt;
{{Врезка&lt;br /&gt;
|Заголовок=установка Squid&lt;br /&gt;
|Содержание=&lt;br /&gt;
''Установка Squid – это сложный мистический ритуал.''&lt;br /&gt;
Действуйте по алгоритму:&lt;br /&gt;
# Позвоните своему боссу/жене/мужу и сообщите, что вам придется пару суток чахнуть над компьютером.&lt;br /&gt;
# Выудите свой менеджер пакетов и установите пакет со Squid – в некоторых дистрибутивах он может называться squidd или squid-daemon.&lt;br /&gt;
# А теперь от души расслабьтесь. Все-то думают, что вы усердно вкалываете – самое время устроить каникулы!&lt;br /&gt;
|Ширина=250px}}&lt;br /&gt;
Некоторые дистрибутивы запускают Squid автоматически&lt;br /&gt;
при загрузке; в других, например, Fedora и SUSE, это нужно&lt;br /&gt;
делать вручную. Для запуска Squid в Fedora, выполните от&lt;br /&gt;
лица суперпользователя команду service squid start, а для&lt;br /&gt;
подключения при загрузке - chkconfig -level 345 squid on.&lt;br /&gt;
В SUSE, откройте YaST, выберите настройку системных сервисов (System Services) в разделе System (Система), отыщите&lt;br /&gt;
в списке Squid, и активируйте его, щелкнув по кнопке Enable.&lt;br /&gt;
Squid стартует, а потом будет сам включаться при загрузке системы. На худой конец, выполните команду /etc/init.d/squid start (или /etc/rc.d/squid start), она запускает Squid&lt;br /&gt;
в большинстве дистрибутивов.&lt;br /&gt;
&lt;br /&gt;
Мы запустили Squid без всякой настройки, и теперь он&lt;br /&gt;
работает в фоновом режиме, ожидая HTTP-запросов. Чтобы&lt;br /&gt;
убедиться, что он действительно работает, настроим-ка браузер на доступ в сеть через прокси.&lt;br /&gt;
&lt;br /&gt;
Если вы используете Firefox, зайдите в Preferences&lt;br /&gt;
(Настройки) в меню Edit (Правка), щелкните на кнопке&lt;br /&gt;
Connection Settings (Настройки соединения) и выберите Manual&lt;br /&gt;
Proxy Configuration (Ручная конфигурация прокси). Укажите в качестве прокси 127.0.0.1, а в качестве порта – 3128. Поставьте&lt;br /&gt;
«галочку» напротив Use this proxy server for all protocols&lt;br /&gt;
(Использовать этот прокси для всех протоколов).&lt;br /&gt;
&lt;br /&gt;
Пользователям Konqueror следует зайти в Настройки&lt;br /&gt;
Konqueror (Settings -&amp;gt; Configure Konqueror), перейти на вкладку Proxy (Прокси), щелкнуть на Manually Specify Proxy Settings&lt;br /&gt;
(Указать настройки прокси-сервера вручную). В окне настроек введите 127.0.0.1 и 3128.&lt;br /&gt;
&lt;br /&gt;
Теперь откройте окно терминала и выполните следующую&lt;br /&gt;
команду от лица суперпользователя: tail -f /var/log/Squid/access.log. Да, запуск программ от лица root может быть&lt;br /&gt;
опасен, однако Squid устанавливает права доступа к своим каталогам так, что читать их могут только пользователь&lt;br /&gt;
«Squid» (или «proxy», это зависит от дистрибутива) и root.&lt;br /&gt;
Так что обычным пользователям файлы журналов Squid не&lt;br /&gt;
прочитать, и никто не догадается, по каким сайтам вы полазили! Откройте браузер и введите какой-нибудь адрес, не&lt;br /&gt;
спуская глаз с окна терминала tail -f. Если все нормально&lt;br /&gt;
заработало, там должны мелькать сообщения о том, что&lt;br /&gt;
запрошенная страница в кэше не обнаружена и Squid получает ее из сети («TCP_MISS/200»).&lt;br /&gt;
&lt;br /&gt;
В самом браузере страница открывается как обычно,&lt;br /&gt;
только теперь она сохранена в кэше Squid. При следующем&lt;br /&gt;
обращении Squid возьмет ее из кэша, а не из сети.&lt;br /&gt;
&lt;br /&gt;
=== Все для всех ===&lt;br /&gt;
{{Врезка&lt;br /&gt;
|Заголовок=подсказка&lt;br /&gt;
|Содержание=&lt;br /&gt;
* Установите для опции «buffered_logs» в squid.conf значение «on» для кэширования лог-файлов перед их записью на диск.&lt;br /&gt;
* Squid может работать и как «обратный» прокси-сервер, кэшируя страницы вашего веб-сайта и отправляя их пользователям Интернета.&lt;br /&gt;
* Используя Squirm, вы можете «подменять» веб-сайты, перенаправляя пользователей на другие ресурсы.&lt;br /&gt;
* Помните, что для выполнения какого-то правила Squid должны выполняться все его условия. Допустим, если в одном правиле указано два различных временных интервала, то оно не выполнится никогда, потому что текущее время может попасть лишь в один промежуток времени.&lt;br /&gt;
|Ширина=250px}}&lt;br /&gt;
Пока вы не побежали звонить своим друзьям/коллегам&lt;br /&gt;
и приглашать их срочно опробовать ваш замечательный&lt;br /&gt;
прокси-сервер, спешу сказать - обождите. По умолчанию&lt;br /&gt;
Squid блокирует запросы со всех машин, кроме вашей, так&lt;br /&gt;
что друзья-коллеги получат одни сообщения об ошибках. Чтобы пресечь это, а заодно и дурацкую манеру Squid&lt;br /&gt;
использовать порт 3128, нужно отредактировать /etc/squid/squid.conf, небольшой конфигурационный файлик на пару&lt;br /&gt;
тысяч строк кода. Отставить валерьянку! Объясняю: большинство из них - комментарии. Мы обойдемся десятью-пятнадцатью строками (только никому не рассказывайте).&lt;br /&gt;
&lt;br /&gt;
Начнем с HTTP-порта. 3128 – не очень удачное число, сложновато для запоминания. Да и как только выйдет&lt;br /&gt;
эксплойт для Squid, хакеры именно с этого порта и начнут.&lt;br /&gt;
Большинство обладателей Squid меняют порт на 80, 1080,&lt;br /&gt;
8000 или 8080, это несложно: откройте в любимом редакторе Squid.conf (с правами root) и поищите строку http_port.&lt;br /&gt;
Скорее всего, первым вхождением будет «TAG: http_port»,&lt;br /&gt;
начало директивы установки порта http_port. Спустившись&lt;br /&gt;
ниже, вы обнаружите строку “# http_port 3128». # в начале строки обозначает комментарий, то есть данная строка&lt;br /&gt;
Squid’ом игнорируется (3128-й порт явно устанавливать не&lt;br /&gt;
нужно, он назначен по умолчанию). Удалите # и вместо 3128&lt;br /&gt;
подставьте нужный вам порт, например, 8080. Разумеется,&lt;br /&gt;
настройку браузера тоже надо скорректировать.&lt;br /&gt;
&lt;br /&gt;
Сохраните файл и запустите команду Squid -k reconfigure&lt;br /&gt;
(с правами суперпользователя), чтобы Squid перечитал конфигурационный файл. Если вы не ищете легких путей, могу&lt;br /&gt;
особо предложить другой вариант: kill -SIGHUP `cat /var/run/&lt;br /&gt;
squid.pid`. Результат тот же, просто это для любителей забивать гвозди микроскопом.&lt;br /&gt;
&lt;br /&gt;
Уладив проблемы с портом, приступим к открытию&lt;br /&gt;
доступа к прокси-серверу другим пользователям. Вернитесь&lt;br /&gt;
в файл squid.conf и поищите в нем строку «acl all». ACL –&lt;br /&gt;
аббревиатура от «Access Control List»: списки контроля доступа. Доступ, естественно, надо ограничить, чтобы до вас не&lt;br /&gt;
добрались злые хакеры. По строке »acl all« вы найдете блок&lt;br /&gt;
из 16-и строк – «рекомендуемая минимальная конфигурация»&lt;br /&gt;
(оставьте его в покое), потом кое-какие комментарии и, наконец, строки http_access allow localhost (разрешен доступ к прокси-серверу с локальной машины) и http_access deny all (блокировать всех).&lt;br /&gt;
&lt;br /&gt;
Как проще всего открыть доступ к вашему прокси-серверу? Всего-навсего поменять http_access deny all на http_access&lt;br /&gt;
allow all! После этого сохраните squid.conf и выполните&lt;br /&gt;
squid -k reconfigure. Теперь к вам может достучаться каждый встречный. Только не оставляйте прокси-сервер в таком&lt;br /&gt;
состоянии надолго: разве что полные чайники держат прокси-сервер открытым настежь, зато и внушительный счет на&lt;br /&gt;
оплату «левого» трафика им обеспечен.&lt;br /&gt;
&lt;br /&gt;
Если все заработало (есть контакт с другими машинами),&lt;br /&gt;
остановите Squid и снова измените правило на http_access&lt;br /&gt;
deny all. Вы, наверное, удивитесь: чему тут не работать? Дело&lt;br /&gt;
в том, что мы будем устанавливать гораздо более сложные&lt;br /&gt;
ACL, и предварительно следует убедиться, что ваш прокси-сервер не блокирован собственным брандмауэром и проблемы могут возникать только у Squid. Кстати, если при “allow&lt;br /&gt;
all” прокси-сервер не работает, либо выключите брандмауэр&lt;br /&gt;
(метод грубой силы), либо разрешите на нем использование&lt;br /&gt;
порта 8080.&lt;br /&gt;
&lt;br /&gt;
=== Адреса закажет CIDR ===&lt;br /&gt;
Squid позволяет вам ограничить доступ по IP-адресам&lt;br /&gt;
пользователей, причем вы можете указать точные адреса&lt;br /&gt;
или задать группу адресов с помощью CIDR-нотации. Начнем&lt;br /&gt;
с простейшей конфигурации для небольшой локальной сети,&lt;br /&gt;
когда список адресов (назовем его «internal_network») вводится вручную. Компьютеры, не включенные в список, подключиться к вашему прокси-серверу не смогут. Вставьте в конфигурационный файл перед «http_access deny all» следующие&lt;br /&gt;
строки:&lt;br /&gt;
 acl internal_network src 192.168.133.1 192.168.133.2 192.168.133.3 192.168.133.22&lt;br /&gt;
 http_access allow internal_network&lt;br /&gt;
(естественно, вы должны ввести IP-адреса компьютеров&lt;br /&gt;
вашей локальной сети). Сохраните файл и заставьте Squid&lt;br /&gt;
его перечитать – Squid -k reconfigure. Теперь убедимся, что&lt;br /&gt;
«кому доступ, а кому и от ворот поворот»: с любого из перечисленных ip вы должны успешно зайти на сервер, а на&lt;br /&gt;
попытку зайти с ip-адресов, не указанных в списке, получить&lt;br /&gt;
сообщение «Access Denied» (Доступ запрещен).&lt;br /&gt;
&lt;br /&gt;
[Прим. переводчика: Squid можно научить сообщать об&lt;br /&gt;
ошибках на русском языке. Проверьте, есть ли у вас директория /usr/share/Squid/errors/Russian-koi8-r, и не пуста ли&lt;br /&gt;
она. Если там имеются текстовые файлы, то стоит открыть&lt;br /&gt;
/etc/Squid/Squid.conf и поменять значение переменной «error_directory» на «/usr/share/Squid/errors/Russian-koi8-r». После&lt;br /&gt;
перезапуска Squid будет ругаться по-русски.]&lt;br /&gt;
&lt;br /&gt;
Данный способ приемлем для малых сетей, однако если&lt;br /&gt;
у вас тысячи компьютеров или используется динамическая&lt;br /&gt;
адресация с DHCP-сервером, он уже не годится – в этом случае поможет CIDR-нотация адресов, до ужаса, правда, нудная&lt;br /&gt;
и требующая знаний о двоичной системе счисления.&lt;br /&gt;
&lt;br /&gt;
Кратко поясним: люди привыкли видеть IP-адреса&lt;br /&gt;
в формате 123.123.123.123. А вот компьютеры работают с т.&lt;br /&gt;
н. «длинным» IP-адресом, например, 2071690107 – думаете, случайное число? Вы будете смеяться, но это эквивалент&lt;br /&gt;
123.123.123.123.&lt;br /&gt;
&lt;br /&gt;
В ip-адресах мы используем, разделяя точками, числа&lt;br /&gt;
от 0 до 255. Самое малое число в двоичной системе будет&lt;br /&gt;
выглядеть как 00000000 (0), а самое большое – как 11111111&lt;br /&gt;
(255). Компьютер переводит каждый сегмент ip-адреса в двоичную систему счисления и «склеивает» с остальными в одно&lt;br /&gt;
длинное число. Например, число 123 – это 01111011, значит,&lt;br /&gt;
адрес 123.123.123.123 преобразуется в 01111011011110110&lt;br /&gt;
1111011. В десятичной системе счисления получится как раз&lt;br /&gt;
2071690107. Улавливаете связь?&lt;br /&gt;
&lt;br /&gt;
Теперь самая сложная часть. Диапазон ip-адресов в CIDR-нотации (ее еще называют краткой формой записи группы&lt;br /&gt;
адресов) задается указанием неизменных разрядов и маски.&lt;br /&gt;
Например, так: 192.168.100.0/24. Это значит, что первые 24&lt;br /&gt;
разряда двоичного эквивалента 192.168.100.0 остаются неизменными (это 192.168.100), а последние 8 бит могут меняться (0–255). А если адрес такой: 10.0.0.0/8, то фиксированы&lt;br /&gt;
только первые 8 разрядов (это как раз первое число – 10),&lt;br /&gt;
а остальные числа могут меняться. То есть вместо того, чтобы перечислять в конфигурационном файле все адреса от&lt;br /&gt;
192.168.0.1 до 192.168.0.255, мы можем указать их в краткой&lt;br /&gt;
форме: 192.168.0.0/24.&lt;br /&gt;
&lt;br /&gt;
Надеюсь, теорию вы усвоили. Продолжим настройку&lt;br /&gt;
Squid:&lt;br /&gt;
 acl internal_network src 192.168.132.0/24 192.168.133.0/24 192.168.134.10&lt;br /&gt;
 http_access allow internal_network&lt;br /&gt;
Тут мы указали две группы адресов в CIDR-нотации&lt;br /&gt;
(192.168.132.1–255 и 192.168.133.1–255) и еще один ip-адрес&lt;br /&gt;
в обычном виде (192.168.134.10). Убедитесь, что правило&lt;br /&gt;
«deny all» стоит после этих строк.&lt;br /&gt;
&lt;br /&gt;
=== Детишки под контролем ===&lt;br /&gt;
Допущенный к родительскому компьютеру с благородной&lt;br /&gt;
целью – делать уроки, ваш отпрыск в лучшем случае проест&lt;br /&gt;
все деньги, часами просиживая в чатах и обмениваясь копиями игр, а в худшем – натащит вирусов и насмотрится порнухи.&lt;br /&gt;
Оборонить компьютер поможет все тот же Squid!&lt;br /&gt;
&lt;br /&gt;
Во-первых, можно просто перекрыть доступ к Интернету в определенное время дня – это будет хорошим стимулом сделать, наконец, домашнее задание (сообразительный малютка все равно откопает игру «Сапер», но тут уж&lt;br /&gt;
ваша вина: нечего было использовать Windows в учебном&lt;br /&gt;
процессе).&lt;br /&gt;
Ограничение по времени устанавливается в ACL типа&lt;br /&gt;
«time», только укажите день недели и временной промежуток. Дни недели обозначаются буквами: M – понедельник,&lt;br /&gt;
T – вторник, W – среда, H – четверг, F – пятница, A – суббота,&lt;br /&gt;
S – воскресенье; комбинация MTWHF (рабочие дни) – D. Так,&lt;br /&gt;
для того, чтобы создать ACL для периода с Воскресенья по&lt;br /&gt;
Четверг с 19:00 до 20:00, вставьте в Squid.conf такую строку:&lt;br /&gt;
 acl homework_time time SMTWH 19:00-20:00&lt;br /&gt;
Раньше мы использовали ACL только для ограничения по&lt;br /&gt;
ip-адресам. Теперь к ним добавятся ограничения по времени.&lt;br /&gt;
Разграничим адреса детей (kids) и взрослых (adult):&lt;br /&gt;
 acl kids_computers src 192.168.133.3 192.168.133.4 192.168.133.5&lt;br /&gt;
 acl adult_computers src 192.168.133.0/24&lt;br /&gt;
Адреса взрослых расположены в диапазоне 192.168.133.1–255, но три адреса, хотя и входят в этот диапазон, в списке адресов взрослых не числятся, потому что раньше были&lt;br /&gt;
указаны в другом списке – kids_computers. Создадим правила&lt;br /&gt;
доступа для них:&lt;br /&gt;
 http_access deny kids_computers homework_time&lt;br /&gt;
 http_access allow kids_computers&lt;br /&gt;
 http_access allow adult_computers&lt;br /&gt;
Второе и третье правила очевидны, однако в первом&lt;br /&gt;
можно увидеть два параметра: kids_computers и homework_time.&lt;br /&gt;
Squid работает с правилами в том порядке, в каком вы их&lt;br /&gt;
записали. То есть в данном случае, он при попытке соединения смотрит на первое правило – если компьютер принадлежит списку kids_computers и текущее время входит во&lt;br /&gt;
временной промежуток homework_time, то он сразу запрещает соединение и отправляется на заслуженный отдых. При&lt;br /&gt;
несоблюдении хотя бы одного из указанных условий он переходит к разборке следующего правила, и так далее. Короче,&lt;br /&gt;
соединение либо его запрет устанавливается на основании&lt;br /&gt;
первой найденной строки, для которой выполняются все&lt;br /&gt;
условия. Если список начинается с «accept all», то ни до каких&lt;br /&gt;
дальнейших ограничений дело не дойдет. Главное – понять&lt;br /&gt;
этот принцип и соблюдать правильный порядок (прокрутите&lt;br /&gt;
свои правила в уме).&lt;br /&gt;
&lt;br /&gt;
Что ж, пока детишки выполняют домашнее задание&lt;br /&gt;
(блажен, кто верует), продолжим вакханалию запрещений&lt;br /&gt;
и заблокируем скачивание файлов с сайтов сомнительного&lt;br /&gt;
содержания.&lt;br /&gt;
&lt;br /&gt;
Анализу подлежат три объекта: сомнительные сайты,&lt;br /&gt;
о которых вы знаете, сомнительные сайты, о которых вы не&lt;br /&gt;
знаете, и файлы, которые могут нагадить приютившему их&lt;br /&gt;
компьютеру.&lt;br /&gt;
&lt;br /&gt;
Для первого случая (запрет конкретного ресурса) предусмотрена директива dstdomain. Вот пример ее использования:&lt;br /&gt;
 acl banned_sites dstdomain bbc.co.uk&lt;br /&gt;
 http_access deny kids_computers homework_time&lt;br /&gt;
 http_access deny kids_computers banned_sites&lt;br /&gt;
 http_access allow kids_computers&lt;br /&gt;
Мы запретили детям посещать любые сайты во время&lt;br /&gt;
выполнения домашнего задания и bbc.co.uk в любое время.&lt;br /&gt;
Причем в список запрещенных сайтов не попадают, например, news.bbc.co.uk и www.bbc.co.uk. Для того, чтобы&lt;br /&gt;
запретить все ресурсы домена bbc.co.uk, нужно добавить&lt;br /&gt;
перед ним точку: .bbc.co.uk.&lt;br /&gt;
&lt;br /&gt;
Неизвестные вам сайты, не предназначенные для малолеток, вычисляются по употреблению нехороших слов,&lt;br /&gt;
например «sex», «porno», «freeipod». Конечно, всех не перевешаешь, но мы можем воспользоваться регулярными&lt;br /&gt;
выражениями:&lt;br /&gt;
 acl noporno url_regex -i porno&lt;br /&gt;
Параметр -i означает, что регулярное выражение не различает строчных и заглавных букв (то есть включает Porno,&lt;br /&gt;
PORNO, PoRNo и т.д.). Теперь блокируем все сомнительные&lt;br /&gt;
сайты:&lt;br /&gt;
 acl nosex url_regex -i sex&lt;br /&gt;
 acl nofreeipod url_regex -i freeipod&lt;br /&gt;
 acl noporno url_regex -i porno&lt;br /&gt;
Наконец, хорошо бы запретить детишкам скачивать&lt;br /&gt;
подозрительные файлы. В регулярных выражениях можно&lt;br /&gt;
использовать знаки «^» и «$», означающие начало и конец&lt;br /&gt;
строки соответственно. Так, для того, чтобы заблокировать&lt;br /&gt;
скачивание исполняемых файлов для Windows (с расширением exe), следует добавить что-то вроде этого:&lt;br /&gt;
 acl noexe $ url_regex -i exe$&lt;br /&gt;
Знак доллара означает конец строки URL, так что сайт&lt;br /&gt;
www.hexen.com не вызовет никаких подозрений у Squid, а&lt;br /&gt;
вот http://evilsite.com/virus.exe будет заблокирован.&lt;br /&gt;
&lt;br /&gt;
{{Врезка|center|&lt;br /&gt;
|Заголовок=чистое злодеяние&lt;br /&gt;
|Содержание=&lt;br /&gt;
''Хотите подшутить над коллегами? Сначала прикиньте, что вам за это будет – бойкот? Увольнение? Членовредительство?''&lt;br /&gt;
&lt;br /&gt;
Ладно, я все-таки обещал рассказать вам, как подшутить над коллегами. В конце концов, над своим ребенком&lt;br /&gt;
вы уже поиздевались… Вы ведь экономите служебный&lt;br /&gt;
трафик, так почему бы не воспользоваться своим&lt;br /&gt;
положением?&lt;br /&gt;
&lt;br /&gt;
Давайте заменим все анимированные GIF’ы, встречающиеся на web-сайтах, на изображение нашего подопытного кролика, Эндрю Грегори (Andrew Gregory).&lt;br /&gt;
&lt;br /&gt;
Для выполнения сего действа нам понадобится переадресатор Squid: какая-нибудь утилита, незаметно переделывающая один URL в другой. Легально она может пригодиться, например, если пользователь хочет зайти на сайт&lt;br /&gt;
www.coolsite.org, а зеркало этого сайта есть у вас в локальной сети. Чтобы сэкономить трафик, вы перенаправляете запрос на локальное зеркало.&lt;br /&gt;
&lt;br /&gt;
Таким переадресатором является, например, Squirm&lt;br /&gt;
(http://squirm.foote.com.au). Скачайте архив с программой и установите ее:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
tar xvpfz squirm-1.0.tar.gz&lt;br /&gt;
cd squirm-1.0&lt;br /&gt;
cd regex&lt;br /&gt;
./configure&lt;br /&gt;
make&lt;br /&gt;
cp regex.h regex.o ..&lt;br /&gt;
groupadd squid&lt;br /&gt;
make&lt;br /&gt;
su&lt;br /&gt;
&amp;lt;введите пароль&amp;gt;&lt;br /&gt;
make install&lt;br /&gt;
cd /usr/local/squirm/etc&lt;br /&gt;
mv squirm.local.dist squirm.local&lt;br /&gt;
chown -R squid /usr/local/squirm&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Отредактируйте squid.conf: измените параметр&lt;br /&gt;
«redirect_program» на /usr/local/squirm/bin/squirm (не&lt;br /&gt;
забудьте удалить знак «#» перед этой строкой), потом&lt;br /&gt;
найдите опцию «redirect_children» и установите значение&lt;br /&gt;
в 10. Теперь создайте файл /usr/local/squirm/etc/squirm.&lt;br /&gt;
patterns следующего содержания:&lt;br /&gt;
 regexi gif$ http://www.linuxformat.co.uk/blog/wp-content/TacheWink.gif&lt;br /&gt;
Ключевое слово regexi задает регулярное выражение&lt;br /&gt;
(не различающее верхний и нижний регистры), которому&lt;br /&gt;
соответствуют все адреса, оканчивающиеся на «gif».&lt;br /&gt;
Вместо них будет подставлено изображение TacheWink.gif.&lt;br /&gt;
&lt;br /&gt;
Теперь для того, чтобы заработал Squirm, достаточно&lt;br /&gt;
заставить Squid перечитать свои конфигурационные файлы: squid -k reconfigure.&lt;br /&gt;
&lt;br /&gt;
Поздравляем: вы заработали звание подполковника&lt;br /&gt;
армии Прокси!&lt;br /&gt;
|Ширина=}}&lt;/div&gt;</summary>
		<author><name>Yaleks</name></author>	</entry>

	</feed>