RU.LINUX ---------------- < Пред. | След. > -- < @ > -- < Сообщ. > -- < Эхи > --
 Nп/п : 67 из 91
 От   : Nil A                               2:5015/46         01 апр 26 23:10:46
 К    : Dmitriy Romanov                                       01 апр 26 23:14:01
 Тема : сквид и динамические правила
----------------------------------------------------------------------------------
                                                                                 
@MSGID: 2:5015/46 69cd7c5f
@REPLY: 2:6078/1 69cd791c
@CHRS: CP866 2
@TZUTC: 0300
@TID: hpt/lnx 1.9
Hello, Dmitriy!

Wednesday April 01 2026 21:55, from Dmitriy Romanov -> All:

 DR> А вот тут у меня странная хотелка возникла. Вдруг кто знает, можно ли
 DR> в сквиде это реализовать штатными средствами. Хочется чтобы описать
 DR> как-нибудь правило, что если запрос ему соответствует, то
 DR> соответствующий src или юзер добавляется в список, который можно
 DR> использовать в дальнейшем как описание acl для другого правила. При
 DR> этом по истечении заданного промежутка времени с последнего запроса с
 DR> этого src, подпадающего под условия правила, этот src из этого списка
 DR> удалялся. Есть ли там такая возможность?

А в ГПТ сходить?

 В Squid это реализуется через механизм external_acl_type в связке с
хелпером session. Это штатное средство, которое идет в комплекте с
большинством дистрибутивов.
 Хелпер squid_session (или ext_session_acl) поддерживает базу данных
активных сессий. Когда запрос попадает под правило, хелпер проверяет, есть ли
запись в базе. Если нет - создает. Если есть - обновляет время последнего
обращения.

 squid.conf, мы хотим, чтобы при посещении "триггерного" сайта юзер
попадал в список "под наблюдением" на 30 минут.
===
 # -t 1800 означает время жизни записи 1800 секунд (30 минут) после
последнего хита
 external_acl_type session_tracker ttl=60 negative_ttl=0 children=1 %SRC
/usr/lib/squid/ext_session_acl -t 1800 -b /var/lib/squid/session.db

# ACL для проверки/активации сессии
acl session_active external session_tracker

# ACL для триггера (то, на что должен зайти юзер, чтобы попасть в список)
acl trigger_url dstdomain .evil-site.com

# ACL для ограничения тех, кто уже в списке
acl restricted_access http_access deny ... # (см. логику ниже)
===

 # Если зашел на триггерный сайт - помечаем сессию (всегда разрешаем,
но хелпер запишет IP)
http_access allow trigger_url session_active

# Если сессия уже активна (юзер в списке), запрещаем ему доступ куда-то еще
http_access deny !trigger_url session_active


Best Regards, Nil
--- GoldED+/LNX 1.1.5-b20260305
 * Origin: Gemini can make mistakes, so double-check it (2:5015/46)
SEEN-BY: 46/49 50/109 104/117 221/6 240/1120 301/1
341/66 450/1024 452/28
SEEN-BY: 455/19 460/58 463/68 5000/111 5010/352
5015/42 46 120 255 519
SEEN-BY: 5019/40 400 5020/113 545 620 715 830 846
848 1042 2992 4441 12000
SEEN-BY: 5022/128 5030/49 115 500 1081 1474
5050/151 5053/51 58 5054/89
SEEN-BY: 5058/104 5059/37 5060/900 5061/133 5083/444
6035/4 6078/80 6090/1
@PATH: 5015/46 5020/1042 4441



   GoldED+ VK   │                                                 │   09:55:30    
                                                                                
В этой области больше нет сообщений.

Остаться здесь
Перейти к списку сообщений
Перейти к списку эх