Продолжаем, чтобы не плодить темы - теперь настройка squid4
Есть сеть 192.168.1.0/24
из статьи кусок нужно понять что здесь он исправляет (со слов автора это упрощенный вариант).
В результате бы хотелось получить конфиг:
1. чтобы был лист адресов для блокирования ссылок https и http
2. чтобы был лист диапазонов айпишников, которым резать на основании списка сайтов доступ и второй список выборочно айпишники, кому не резать. (сетевой интерфейс 1 шт enp0s3)
из статьи:
Добавим сеть src 192.168.20.0/24 то есть для нашего случая 192.168.1.0/24
Добавим порты под HTTP 3128 и HTTPS 3129
Добавим генерацию сертификатов sslcrtd_program
nano squid.conf
_______________________________________________________________
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 local src 192.168.1.0/24
acl CONNECT method CONNECT
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost manager
http_access deny manager
http_access allow localhost
http_access allow local
http_access deny all
--ниже не ясно адрес чего нужно внести шлюза?----
http_port 192.168.20.1:3128 intercept
https_port 192.168.20.1:3129 intercept ssl-bump cert=/etc/squid/squidCA.pem
ssl_bump peek all
ssl_bump splice all
sslcrtd_program /usr/lib/squid/ssl_crtd -s /var/lib/ssl_db -M 4MB
coredump_dir /var/spool/squid
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|?) 0 0% 0
refresh_pattern (Release|Packages(.gz)*)$ 0 20% 2880
refresh_pattern . 0 20% 4320
Применяем конфигурацию
squid -k parse
squid -k reconfigure
Добавлено: [time]Вт 14 ноя 2017 11:16:13[/time]
разобрался появился файл после того как перегрузил сервис и саму систему пару раз теперь он есть.
(источник упрощенного конфига статья
https://imbicile.pp.ru/ubuntu-16-04-prozrachnyj-squid-https/ )
Добавлено: [time]Вт 14 ноя 2017 12:49:54[/time]
то есть для первоначальной настройки прозрачного прокси
вносим еслиправильно понял
acl mylocal src 192.168.1.0/24
http_access allow mylocal
http_port 192.168.1.23:3128 intercept #здесь судя по всему либо адрес самой прокси либо адрес шлюза не совсем понял еще
https_port 192.168.1.23:3129 intercept
Добавлено: 14 Ноября 2017, 15:02:04
добавляем в конфиг скуида
acl local src 192.168.1.0/24
http_port 192.168.1.1:3128 intercept
https_port 192.168.1.1:3129 intercept ssl-bump cert=/etc/squid/squidCA.pem
ssl_bump peek all
ssl_bump splice all
sslcrtd_program /usr/lib/squid/ssl_crtd -s /var/lib/ssl_db -M 4MB
### Допустимый объем памяти
cache_mem 512 MB
### Максимальный объем кэшированного объекта в памяти
maximum_object_size_in_memory 512 KB
### Максимальный и минимальный размер кэшируемого файла
maximum_object_size 60 MB minimum_object_size 2 KB
### Директория кэша размер кэша=4Mb Кол-во папок первого уровня=32 и второго=256
cache_dir ufs /var/spool/squid 4096 16 256
Применяем конфигурацию
squid -k parse
squid -k reconfigure
и получаем ошибку
squid -k reconfigure
2017/11/14 13:39:08| FATAL: failed to open /var/run/squid.pid: (2) No such file or directory
2017/11/14 13:21:41 kid1| ipcCreate: /usr/lib/squid/ssl_crtd: (2) No such file or directory
2017/11/14 13:21:41 kid1| ipcCreate: /usr/lib/squid/ssl_crtd: (2) No such file or directory
первая ошибка понятна не запущен процесс нет файла, создал директорию ssl_crtd в /usr/lib/squid/
закоментировал все относящееся к SSL
squid -z
переввел
стартовал сервис squid
squid -k parse
squid -k reconfigure
и снова таже ошибка вернул старый конфиг squid стартовал
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 local src 192.168.20.0/24
acl CONNECT method CONNECT
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost manager
http_access deny manager
http_access allow localhost
http_access allow local
http_access deny all
http_port 192.168.20.1:3128 intercept
https_port 192.168.20.1:3129 intercept ssl-bump cert=/etc/squid/squidCA.pem
ssl_bump peek all
ssl_bump splice all
sslcrtd_program /usr/lib/squid/ssl_crtd -s /var/lib/ssl_db -M 4MB
coredump_dir /var/spool/squid
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|?) 0 0% 0
refresh_pattern (Release|Packages(.gz)*)$ 0 20% 2880
refresh_pattern . 0 20% 4320
Добавлено: 14 Ноября 2017, 15:03:13
то есть проблемма в дальнейшей настройке и терзает меня что придется пересобирать поновой скуид
Добавлено: 15 Ноября 2017, 17:07:07
в общем вопрос в том что отфильтровывает правило только первый в списке сайт остальные не обращает внимание
как быть
acl localnet src 0.0.0.1-0.255.255.255 # RFC 1122 "this" network (LAN)
acl localnet src 10.0.0.0/8 # RFC 1918 local private network (LAN)
acl localnet src 100.64.0.0/10 # RFC 6598 shared address space (CGN)
acl localhet src 169.254.0.0/16 # RFC 3927 link-local (directly plugged) machines
acl localnet src 172.16.0.0/12 # RFC 1918 local private network (LAN)
acl localnet src 192.168.0.0/16 # RFC 1918 local private network (LAN)
acl mylocalnet src 192.168.88.0/24
acl localnet src fc00::/7 # RFC 4193 local private network range
acl localnet src fe80::/10 # RFC 4291 link-local (directly plugged) machines
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
# создано три файла в которых списки адресов ip и url вида lm.licenses.adobe.com macromedia.com fishki.net пробовал и без слешей фильтрует только первый адрес
acl boss_user src "/etc/squid/allow_user"
acl other_user src "/etc/squid/deny_user"
acl BlockUrlList url_regex -i "/etc/squid/BlockdUrlList"
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost manager
http_access deny manager
http_access deny BlockUrlList !boss_user
http_access deny other_user BlockUrlList
http_access deny BlockUrlList
http_access allow localnet
http_access allow localhost
http_access allow mylocalnet
http_access deny all
http_port 3128
coredump_dir /var/spool/squid
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
Добавлено: 16 Ноября 2017, 08:37:59
поменял правило на
acl BlockUrlList dstdomain "/etc/squid/BlockdUrlList"
теперь блочит всем и разрешенным юзерам и запрещенным кроме facebook
Добавлено: 16 Ноября 2017, 08:54:16
вот так заработала фильтрация на два диапазона
# ------правила для списков-------
acl boss_user src "/etc/squid/allow_user"
acl other_user src "/etc/squid/deny_user"
acl BlockUrlList dstdomain "/etc/squid/BlockdUrlList"
acl httpsfail dst
www.vk.comacl httpsfail dst
www.facebook.com# ------------------------------
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost manager
http_access deny manager
# ----------применения ограничений-----------
http_access deny httpsfail CONNECT other_user
http_access allow httpsfail CONNECT other_user
http_access allow boss_user BlockUrlList
http_access deny other_user BlockUrlList
http_access deny BlockUrlList
#---------------------------------------
#-----------------------
http_access allow localnet
http_access allow localhost
http_access allow mylocalnet
http_access deny all
http_port 3128