Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.
Модераторы: SLEDopit , Модераторы разделов
seval
Сообщения: 193
ОС: OpenSUSE 10.3
Сообщение
seval » 26.12.2008 03:35
Мне необходимо сделать ограничение по времени работы в инет определенным пользователям. По гуглил и сделал такой конфиг:
Код: Выделить всё
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 our_networks src 192.168.1.0/24 192.168.2.0/24
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
acl timer_user src 192.168.1.79 192.168.1.20 192.168.1.21 192.168.1.22 192.168.1.23 192.168.1.72 192.168.1.95 192.168.1.96 192.168.1.97 192.168.1.87 192.168.1.70 192.168.1.37 192.168.1.34 192.168.1.33 192.168.1.35 192.168.1.36 192.168.1.30 192.168.1.74 192.168.1.62 192.168.1.63 192.168.1.102 192.168.1.60 192.168.1.59 192.168.1.28 192.168.1.29 192.168.1.61 192.168.1.32 192.168.1.31
acl alexus src 192.168.1.3
acl alexus_t time 07:50-20:00
acl timer_user_t time 07:50-17:30
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
#http_access allow our_networks
http_access allow localhost
http_access allow all
http_access allow timer_user timer_user_t
http_access allow alexus alexus_t
icp_access allow all
http_port 192.168.1.15:3129 transparent
#always_direct allow all
never_direct allow all
cache_peer 192.168.200.52 parent 3128 3130 proxy-only no-query default
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
cache deny QUERY
logformat traffpro %>a %<A %lp %st %ru
access_log /var/log/squid/access.log traffpro
#access_log /var/log/squid/access.log squid
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
acl apache rep_header Server ^Apache
broken_vary_encoding allow apache
visible_hostname sevalproxy
coredump_dir /var/spool/squid
Но ограничение не работает. В чем может быть проблема?
Sleeping Daemon
Сообщения: 1450
Сообщение
Sleeping Daemon » 26.12.2008 07:49
http_access allow all стоит выше всех. Вот всем и разрешено.
Нужно сначала разрешить по правилам, потом запретить всем.
Или разрешить по времени, потом запретить из timer_user и alexus
А потом разрешить всем.
seval
Сообщения: 193
ОС: OpenSUSE 10.3
Сообщение
seval » 27.12.2008 05:35
Sleeping Daemon писал(а): ↑ 26.12.2008 07:49
http_access allow all стоит выше всех. Вот всем и разрешено.
Нужно сначала разрешить по правилам, потом запретить всем.
Или разрешить по времени, потом запретить из timer_user и alexus
А потом разрешить всем.
Я переместил строчку но итог такой же
Код: Выделить всё
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
#http_access allow our_networks
http_access allow localhost
http_access allow timer_user timer_user_t
http_access allow alexus alexus_t
http_access allow all
seval
Сообщения: 193
ОС: OpenSUSE 10.3
Сообщение
seval » 27.12.2008 07:05
Я поробовал закоментировать строку http_access allow all
Тогда правила заработали. Но мне надо остальные кто не указан в timer_user работали в любое время
seval
Сообщения: 193
ОС: OpenSUSE 10.3
Сообщение
seval » 27.12.2008 07:15
Вроде бы разобрался
Код: Выделить всё
Или разрешить по времени, потом запретить из timer_user и alexus
А потом разрешить всем.
Переделал конфиг:
Код: Выделить всё
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 allow timer_user timer_user_t
http_access allow alexus alexus_t
http_access deny timer_user
http_access deny alexus
http_access allow our_networks
http_access deny all
и все заработало как надо. Спасибо
Alexxx
Сообщения: 892
Статус: --==XXX==--
ОС: Archlinux current
Сообщение
Alexxx » 27.12.2008 07:22
а если так:
http_access allow !timer_user
http_access allow !alexus
либо сделать acl other src bla-bla-bla и http_access к нему
murder
Сообщения: 219
ОС: FreeBSD 8.0, Ubuntu 9.10
Сообщение
murder » 30.12.2008 11:15
Дублировать темы не охота. Напишу тут.
Нужно реализовать лимиты по времени и трафику. Т.е. пользователь не должен, допустим, больше 20 мб в час тратить. Это реально вообще сделать средствами squid?
-//- Реальная смерть приходит с косой, а виртуальная с пассатижами -//-