1

Возникла необходимость в установке прокси сервера. Поделитесь ссылками на подробные материалы по настройке Squid3. Что-нибудь вроде этого. Но хотелось бы более подробный материал.

2

Так же есть вопрос, по прозрачному прокси. Как происходит настройка клиентов, если IP-адреса в сети статические?

3

Nigelist пишет:

Так же есть вопрос, по прозрачному прокси. Как происходит настройка клиентов, если IP-адреса в сети статические?

При прозрачном проксировании настраивать клиенты нет необходимости, это делается средствами маршрутизатора. В вашем случае это правило в Iptables которое перенаправляет трафик с 80го порта на порт сквида.

Мне кажется, при понимании принципа написания правил официальной документации достаточно. Также там есть примеры. http://www.squid-cache.org/Doc/config/

4

marikk пишет:

Мне кажется, при понимании принципа написания правил официальной документации достаточно. Также там есть примеры. http://www.squid-cache.org/Doc/config/

А на русском нету?

5

Набросал небольшой конфиг, пожалуйста проверьте на ошибки. 16 пользователей с персональным ограничением скорости и ограничением на скачивание определенных типов файлов.

6 (04.02.2014 15:16:36 отредактировано marikk)

Особо со сквидом не работал. А если попробовать таким образом ?

...
...
...
...

delay_pools 1

delay_class             1       2
delay_access           1       allow           all
delay_parameters      1      50000/50000 user1
delay_parameters      1      40000/40000 user2
delay_parameters      1      30000/30000 user3
.....
.....

Если есть возможность попробуйте.

7

marikk, так пулов то 16 и для каждого разные параметры.

8

Nigelist пишет:

так пулов то 16 и для каждого разные параметры.

Все нормально. То я неправильно понял.

9

Кстати, кто как борется с потоковым видео/аудио?

10

Прошу помощи с конфигом. Не запрещает скачивать запрещенные файлы. Подскажите, что сделал неправильно. Так же есть необходимость разрешить открыть user1 порты 110 и 25 для работы с почтой.

И если кто может, прокомментируйте (что и зачем нужно), стандартный кофиг:

+ открыть спойлер

 Консоль:
acl manager proto cache_object
acl localhost src 127.0.0.1/32 ::1
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1
acl SSL_ports port 443
acl Safe_ports port 80          # http
acl Safe_ports port 21          # ftp
acl Safe_ports port 443         # https
acl Safe_ports port 70          # gopher
acl Safe_ports port 210         # wais
acl Safe_ports port 1025-65535  # unregistered ports
acl Safe_ports port 280         # http-mgmt
acl Safe_ports port 488         # gss-http
acl Safe_ports port 591         # filemaker
acl Safe_ports port 777         # multiling http

acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost
http_access deny all
http_port 3128
coredump_dir /var/spool/squid3
refresh_pattern ^ftp:           1440    20%     10080
refresh_pattern ^gopher:        1440    0%      1440
refresh_pattern -i (/cgi-bin/|\?) 0     0%      0
refresh_pattern .               0       20%     4320

P.S. На Windows 7 при доступе через прокси, на индикаторе сетевых подключений в системном трее, значок предупреждения, что сеть без доступа в интернет. Хотя в интернет свободно выходит. Читал где-то, что нужно открыть определенный порт. Никто не в курсе какой?

11

Если мне не изменяет RAM, squid применяет первое попавшееся правило

И баба с воза, и волки сыты...

12

В доках на офф.сайте нашел пример минимальной конфигурации. Знатоки Squid, прокомментируйте пожалуйста его (Желательно каждый параметр отдельно, что зачем).

 Консоль:
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT

13

Nigelist пишет:

Кстати, кто как борется с потоковым видео/аудио?

У меня например так (может в чем-то неоптимально и лишнего напихано, но - блокирует нормально):

acl block_octet_stream_vip_users \
    src "/etc/squid3/block_octet_stream_vip_users.acl"
acl block_octet_stream_vip_sites \
    dstdomain "/etc/squid3/block_octet_stream_vip_sites.acl"
#--------------------------------------------------------------------------------
acl Pupkin src 192.168.100.89
# Разрешааем Пупкину доступ только на ютуб
acl Pupkin-OS dstdomain .youtube.com .googlevideo.com .ytimg.com
#--------------------------------------------------------------------------------
acl block_octet_stream_rep rep_mime_type -i ^application/octet-stream$
acl block_octet_stream_rep rep_mime_type -i application/octet-stream
acl block_octet_stream_req req_mime_type -i ^application/octet-stream$
acl block_octet_stream_req req_mime_type -i application/octet-stream
#================================================
 http_reply_access allow block_octet_stream_rep Pupkin Pupkin-OS
#--------------------------------------------------------------------------------
 http_reply_access allow block_octet_stream_rep block_octet_stream_vip_users
 http_reply_access allow block_octet_stream_rep block_octet_stream_vip_sites
#--------------------------------------------------------------------------------
 http_reply_access deny block_octet_stream_rep
 deny_info ERR_ACCESS_DENIED_OCTET_STREAM block_octet_stream_rep
#================================================
 http_reply_access allow block_octet_stream_req Pupkin Pupkin-OS
#--------------------------------------------------------------------------------
 http_reply_access allow block_octet_stream_req block_octet_stream_vip_users
 http_reply_access allow block_octet_stream_req block_octet_stream_vip_sites
#--------------------------------------------------------------------------------
 http_reply_access deny block_octet_stream_req
 deny_info ERR_ACCESS_DENIED_OCTET_STREAM block_octet_stream_req
#================================================
 http_access allow block_octet_stream_req Pupkin Pupkin-OS
#--------------------------------------------------------------------------------
 http_access allow block_octet_stream_req block_octet_stream_vip_users
 http_access allow block_octet_stream_req block_octet_stream_vip_sites
#--------------------------------------------------------------------------------
 http_access deny block_octet_stream_req
 deny_info ERR_ACCESS_DENIED_OCTET_STREAM block_octet_stream_req

Но нужно помнить, что тот-же ютуб можно преспокойно смотреть в обход прокси через https, если на прокси нет обработки 443-го порта.

14

И еще замечу - запретив octet-stream, невозможно будет скачать вложения с веб-интерфейсов почтовых серверов. Обновления 1С также не будут скачиваться. Потому их адреса необходимо вносить в качестве исключений в acl - block_octet_stream_vip_sites, например:
.client.consultant.ru
.mail.yandex.ru
.mail.yandex.net
downloads.v8.1c.ru
.af1.mail.ru
...
.af20.mail.ru

и т.п.

15

Народ, подскажите, можно ли acl использовать многострочные списки с комментариями?

16

А почему нельзя? В двойных кавычках указывается имя файла:
acl block_porno_sites url_regex -i "/etc/squid3/block_porno_sites.acl"

17

JonnyBekoff, вот и я про это. Интересно, если я укажу в этом файле несколько строк с комментариями, в таком виде:

 Консоль:
#user1
172.16.8.23
#user2
172.16.8.10

Поймет ли корректно эти файлы squid3?

18

У меня списки пользователей определены так:

acl usrvip src "/etc/squid/users_vip"

Пример файла:

 Консоль:

# Список VIP
192.168.0.1  #Шеф
192.168.0.2  #Я САМ!!!

19

JonnyBekoff, вот и я про это. Интересно, если я укажу в этом файле несколько строк с комментариями, в таком виде:

Поймет только для всех указанных адресов, как в ответе ниже от Bif-а, когда нужно всем адресам из списка дать привилегии. Для конкретного адреса из списка в файле - думается, что не поймет.

20

JonnyBekoff, отлично, то что нужно.

21

Bif, а как быть с пулами? Хочется каждому пользователю задавать свои ограничения.

22

Если я назначу список пользователей:

 Консоль:
# Users
acl   user1    src   172.16.8.30  #User1
acl   user2    src   172.16.8.11  #User2
acl   user3    src   172.16.8.25  #User3
acl   user4    src   172.16.8.20  #User4

А потом, в отдельном файле denyusers.lst укажу имена:

 Консоль:
user1 #User1
user2 #User2
user3 #User3
user4 #User4

Корректно ли указать этот файл в другом acl?

 Консоль:
acl   allowclent  src            "/etc/squid3/allowclient.lst"

23

Nigelist пишет:

Если я назначу список пользователей:

Nigelist пишет:

А потом, в отдельном файле denyusers.lst укажу имена:

Nigelist пишет:

Корректно ли указать этот файл в другом acl?

Не совсем понятно зачем такой кураж. Обычно же указывается привязка списка либо единичного src к определенным ресурсам, у меня например так - блокировка скачки media-файлов:

acl block_media_vip_users src "/etc/squid3/block_media_vip_users.acl" #список vip пользователей
acl block_media_vip_sites dstdomain "/etc/squid3/block_media_vip_sites.acl" #список vip cайтов, с которых можно стягивать media
#--------------------------------------------------------------------------------
 acl block_media_files urlpath_regex \.asf(\?.*)?$ \.afx(\?.*)?$ \.flv(\?.*)?$ \
    \.wma(\?.*)?$ \.mp3(\?.*)?$ \.mov(\?.*)?$ \.avi(\?.*)?$ \.mp4(\?.*)?$ \
    \.mpg(\?.*)?$ \.mpeg(\?.*)?$ \.3gp(\?.*)?$ \.wav(\?.*)?$ \.vob(\?.*)?$ \
    \.wmv(\?.*)?$ \.fid(\?.*)?$ #список запрещенных расширений для скачивания
#--------------------------------------------------------------------------------
 acl User1 src 192.168.100.103 #1-й конкретный пользователь User1 (не vip)
 acl User2 src 192.168.100.104 #2-й конкретный пользователь User2 (не vip)
 acl User1-M dstdomain .youtube.com .googlevideo.com .ytimg.com #User1 может просмотривать только youtube
 acl User2-M dstdomain .youtube.com .googlevideo.com .ytimg.com #User2 может просмотривать только youtube
#--------------------------------------------------------------------------------
 http_access allow block_media_files User1 User1-M #разрешение для User1 на просмотр youtube
 http_access allow block_media_files User2 User2-M #разрешение для User2 на просмотр youtube
#--------------------------------------------------------------------------------
 http_access allow block_media_files block_media_vip_users #разрешение vip пользователям скачивать всё media со всех сайтов
 http_access allow block_media_files block_media_vip_sites #vip-сайты (по работе) с которых всем разрешено скачивать media
#--------------------------------------------------------------------------------
 http_access deny block_media_files #запрет всем на скачку media, завершающее запрещающее правило
 deny_info ERR_ACCESS_DENIED_MEDIA block_media_files #страница запрета, для информации админу, какое acl сработало

24

JonnyBekoff, дело в том, что я ещё и трафик делю на пулы для каждого пользователя.

25

Ладно, не буду приставать с глупыми советами. bx