вторник, 3 июня 2014 г.

Прокси-сервер Squid и FreeBsd 10

1. устанавливаем из портов
    cd /usr/ports/www/squid33
    make install clean

     Если прокси-сервер будет прозрачным (без необходимости клиентам вводить имя пользователя и пароль, и не настраивая прокси в программах и браузерах) выбираем поддержку прозрачного прокси-сервера (TP_IPFW).
     Если будем использовать ограничение по скорости выбираем поддержку DELAY_POOLS.

2. редактируем файл настроек /usr/local/etc/squid/squid.conf

    visible_hostname gate          (хост)
    http_port 10.0.0.1:3128          (ip и порт, для прозрачного http_port 10.0.0.1:3128 transparent или intercept)
    acl localnet src 10.0.0.0/24    (описываем нашу сеть, можно указать диапазон адресов 10.0.0.1-10.0.0.20)
    acl blacklist src 10.0.0.11 10.0.0.22 
    acl hosts_dst dst 20.0.0.0/24 (указываем сеть назначения) 
    acl sites_deny dstdomain home.ru homed.com  (определяем домены(сайты))

    acl sites_deny dstdom_regex home  (шаблон для домена)
    acl sites_deny url_regex ... (шаблон для адреса)
    acl sites_deny urlpath_regex ... (шаблон для части адреса) 

    acl timenet time THA 10:00-17:00 (определяем время для вт, чт, сб (MTWHFAS - буквы дней недели)) 

   delay_pools 2       (ограничение по скорости, определяем количество пулов)

   delay_class 1 1      
   delay_class 2 1
      (определяем два первых класса для двух пулов)

Первый класс:
   delay_parameters 1 байт_на_всю_сеть
   пр.  delay_parameters 2 64000/128000
Второй класс:
   delay_parameters 1 на_всю_сеть на_клиента
   пр.  delay_parameters 2 64000/128000 32000/64000
Третий класс:
   delay_parameters 1 на_всю_сеть на_подсеть на_клиента
   пр.  delay_parameters 2 64000/128000 32000/64000 10000/10000

  
   delay_access 1 allow 10.0.0.2    (первый пул для хоста) 
   delay_access 1 deny all
   delay_access 2 allow localnet    (второй пул для сети)
   delay_access 2 deny all

   delay_parameters 1 -1/-1               (для первого пула без ограничений по скорости)
   delay_parameters 2 64000/128000  (для второго пула ограничение в скорости в 512 кбит = 64 кбайта = 64000 байт, при этом первые 128 кбайт каждого запроса будут скачаны на максимальной скорости, после, скорость будет ограничена до 512 кбит)
    
    http_access allow localnet timenet !blacklist !sites_deny  (разрешаем для сети по времени, запрещаем хостам из blacklist, запрещаем доступ к сайтам из sites_deny(можно записать также http_access deny localnet sites_deny))
    http_access deny blacklist hosts_dst    (запрещаем хостам blacklist сеть 20.0.0.0/24)
    http_access deny all                                    (запрещаем остальным)
    cache_dir ufs /var/squid/cache/squid 100 16 256    (кэш директория фс, мб, L1, L2)
    minimum_object_size 2 KB                   (ограничиваем минимальный и
    maximum_object_size 61440 KB           максимальный размер кэш файла)
    via off                                                           (делаем прокси 
    forwarded_for delete                                   анонимным)


   меняем владельца кеш директории
       chown squid:squid /var/squid/cache/squid/

   squid -z    (создаем кэш директории)

  если прозрачный то добавим правило в фаервол:
  add fwd 10.0.0.1,3128 tcp from any to any 80 via em1 (внутренний интерфейс)


3. в /etc/rc.conf добавляем
    squid_enable="YES"

    запускаем /usr/local/etc/rc.d/squid start
    после настроек перезапускаем командой squid -k reconfigure


Комментариев нет:

Отправить комментарий