прозрачный squid + бан httpS:\\vk.com

Автор alexandr.jurka, 17 июля 2015, 16:55:27

« назад - далее »

0 Пользователи и 5 гостей просматривают эту тему.

alexandr.jurka

Дано: debian, squid 2.7 в прозрачном режиме - http банится без проблем.
Проблема: хоть http и банится, доступ через защищенный канал httpS есть.
Вопрос: чем же можно прикрыть некоторые httpS-ные сайты? и чем лучше реализовать?
Конкретно - соцсети и прочие неугодные сайты, но чтобы нужные - типа Киви оставались нетронутыми. + доступ к соц.сетям нужно оставить одному-двум IP.

ihammers

Если хотите полный бан молот, то вам через iptables. А если хотите "тонкой" настройки, то вам через acl (squid), узнаёте ip, которые все могут и создаёте правило остальных рубите.
Debian GNU/Linux Bookworm, LXQt/OpenBox: AMD Ryzen 5 5600G / 64Gb RAM
_______________________________
Debian GNU/Linux Bookworm, без графики: AMD Phenon X4 / 16Gb RAM
_______________________________
Debian GNU/Linux Bookworm, LXQt/OpenBox: Acer Aspire One 722 AMD C60 / 8Gb RAM / ATI HD6290

alexandr.jurka

вариант с Иптейблз мне не подходит.
Если я правильно понимаю всю суть, нужно :
1) завернуть запросы на порт 443 на любой свободный порт, чтоб слушать в Сквиде (3129 например);
2) создать сертификат и ключ, положить в папку сквида;
3) в конфиге указать какой порт слушать (3129) и пути к ключам, но тогда все сайты с хттпС будут ругаться, т.к. сертификат самописанный - классическая атака "человек посередине"

как можно избежать ругани нормальных сайтов - типа киви, а вк банить.. Может у кого конфиг есть для примера. Либо другими средствами можно реализовать...

endru

перенаправляй https трафик на squid. Будет банить без всяких настроек сертификатов так же как и http, только кэшировать ничего не будет.

alexandr.jurka

Цитата: endru от 20 июля 2015, 10:57:22
перенаправляй https трафик на squid. Будет банить без всяких настроек сертификатов так же как и http, только кэшировать ничего не будет.

попробовал, после перезапуска сквид : parseConfigFile: squid.conf:2 unrecognized: 'https_port'

315th

Цитата: alexandr.jurka от 20 июля 2015, 10:42:27вариант с Иптейблз мне не подходит.
-A FORWARD -m tcp -p tcp -m string --algo bm --string vk.com -i $INT_IFACE -j DROP
Разве не подходит?
Debian GNU/Linux 7.11 (wheezy) - CLI
ICH7; D525MV; r8169; Linux 4.14.32-atomd525mv-imq-ja1 (i686); Intel Atom D525 1.8 GHz

alexandr.jurka

Открыть содержимое (спойлер)
Цитата: alexandr.jurka от 20 июля 2015, 10:42:27вариант с Иптейблз мне не подходит.
-A FORWARD -m tcp -p tcp -m string --algo bm --string vk.com -i $INT_IFACE -j DROP
Разве не подходит?
[свернуть]
Для фильтрации по тексту запросов нужно работать с прикладным уровнем, то бишь использовать всякие прокси - это сказано в руководстве по iptables.

Почему так - там тоже сказано:
Цитироватьпакеты при пересылке через сеть фрагментируются, и строка, которую вы ищете, не попадется вам целиком, если начало ее будет в одном пакете, а конец - в другом. Для того, чтобы такая фильтрация все-таки давала эффект, нужно выполнять работу по поиску указанной подстроки в сериях последовательных пакетов из одного соединения, что создаст повышенную нагрузку на процессор.

iptables нужен для фильтрации на транспортном/сетевом уровнях.

поэтому хочется все настроить именно через прокси

endru

Цитата: alexandr.jurka от 20 июля 2015, 15:44:30parseConfigFile: squid.conf:2 unrecognized: 'https_port'
конфиг выкладывай.

alexandr.jurka

Открыть содержимое (спойлер)
http_port 192.168.0.1:3128 transparent
https_port 192.168.0.1:3129
icp_port 0

cache_effective_user proxy
cache_effective_group proxy
cache_mgr mehonoshin@sc.vsu.ru

access_log /var/log/squid/access.log squid

# Proxy server ACL List
acl all src all
acl common src 192.168.0.0/255.255.255.0
acl it src 192.168.0.254/255.255.255.255
acl it2 src 192.168.51.0/255.255.255.0

acl blocksites url_regex -i "/etc/squid/blocked.txt"
http_access deny blocksites !it

# time to limit the number of user connections
acl 2CONN maxconn 60

http_access allow common
http_access allow it
http_access allow it2
http_access deny all

http_port 80 vhost
ignore_expect_100 on
[свернуть]

315th

alexandr.jurka, да, такое может быть в сегментированной сети, когда пакет проходит через несколько маршрутизаторов.
Может Вам стоит обновить squid до 3-й ветки и строить там ssl_bump?
Debian GNU/Linux 7.11 (wheezy) - CLI
ICH7; D525MV; r8169; Linux 4.14.32-atomd525mv-imq-ja1 (i686); Intel Atom D525 1.8 GHz

alexandr.jurka

Цитата: 315th от 22 июля 2015, 06:50:08
alexandr.jurka, да, такое может быть в сегментированной сети, когда пакет проходит через несколько маршрутизаторов.
Может Вам стоит обновить squid до 3-й ветки и строить там ssl_bump?


а подскажите, а какую именно версию данной ветки? их там много, какая будет постабильней и безглючней? я в Линуксе не так давно - подскажите также: как обновиться до нужной версии?

315th

#11
Не подскажу, использую другой прокси-сервер.
Обновиться как обычно
aptitude install squid3
Debian GNU/Linux 7.11 (wheezy) - CLI
ICH7; D525MV; r8169; Linux 4.14.32-atomd525mv-imq-ja1 (i686); Intel Atom D525 1.8 GHz

endru

Цитата: alexandr.jurka от 22 июля 2015, 10:50:11а подскажите, а какую именно версию данной ветки? их там много, какая будет постабильней и безглючней?
все версии которые находятся в репах jessie и wheezy
для обновления нужно поправить список источников /etc/apt/sources.list, сделать apt-get update и установить нужный пакет.

agentgoblin

Цитата: alexandr.jurka от 20 июля 2015, 10:42:27как можно избежать ругани нормальных сайтов - типа киви, а вк банить
Сказать браузеру, что он теперь работает через прокси такой-то, при этом вроде бы ругательства прекращаются. Соответственно разрешить в iptables http(s)-трафик только от squid, остальной забанить. Нет прописаного прокси в браузере - нет веб-страничек. Есть прописаный прокси - есть веб-странички, доступ к которым вы и контроллируете.

alexandr.jurka

Цитата: agentgoblin от 06 августа 2015, 14:59:03Нет прописаного прокси в браузере - нет веб-страничек. Есть прописаный прокси - есть веб-странички, доступ к которым вы и контроллируете.
интересует именно прозрачный прокси, чтоб никому ничего не прописывать