27 ноября 2025
1 комментарий
если установлен squid без OpenSSL полностью удалить
sudo apt remove --purge squid squid-common squid-langpack sudo apt autoremove which squid
установить squid с поддержкой OpenSSL
sudo apt install squid-openssl squid -v | grep -i ssl
создать каталог и самоподписанный CA (корневой сертификат для MITM) для динамической генерации сертификатов под сайты
sudo mkdir -p /etc/squid/ssl openssl req -new -newkey rsa:2048 -days 3650 -nodes -x509 \ -keyout /etc/squid/ssl/ca.key \ -out /etc/squid/ssl/ca.crt \ -subj "/CN=Squid-CA/" chmod 600 /etc/squid/ssl/ca.key
конфиг
mcedit /etc/squid/squid.conf
на 3128 прокси как было для всех с авторизацией, на 3130 специально для телефона с SSL-bump и без авторизации + MITM (с авторизацией он не может работать)
http_port 3128 auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/passwords auth_param basic children 5 auth_param basic realm Proxy Authentication auth_param basic credentialsttl 2 hours acl authenticated proxy_auth REQUIRED http_port 3130 ssl-bump \ generate-host-certificates=on dynamic_cert_mem_cache_size=4MB \ cert=/etc/squid/ssl/ca.crt key=/etc/squid/ssl/ca.key acl iphone_port myport 3130 acl step1 at_step SslBump1 ssl_bump peek step1 ssl_bump bump iphone_port ssl_bump splice all http_access allow iphone_port http_access allow authenticated http_access deny all access_log /var/log/squid/access.log cache_log /var/log/squid/cache.log
пароли для пользователей с авторизацией
htpasswd -c /etc/squid/passwords user cat /etc/squid/passwords
инициализация SSL DB
security_file_certgen -c -s /var/spool/squid/ssl_db sudo /usr/lib/squid/security_file_certgen -c -s /var/spool/squid/ssl_db -M 4MB
права
chown proxy:proxy /etc/squid/passwords chmod 640 /etc/squid/passwords sudo chown -R proxy:proxy /var/spool/squid sudo chmod -R 755 /var/spool/squid
перезапуск
squid -k parse squid -k reconfigure systemctl restart squid
проверки
systemctl status squid.service sudo tail -f /var/log/squid/cache.log sudo tail -f /var/log/squid/access.log
ca.crt установить на iphone, передать, например, с помощью встроенного e-mail клиента
в текущем подключении wi-fi — сервер и порт, без авторизации