Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
| proxy:network:proxy [2023/12/13 09:43] – ↷ Операцией перемещения обновлены ссылки mirocow | proxy:network:proxy [2025/11/05 11:58] (текущий) – [squid] mirocow | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| - | {{tag> | + | {{tag> |
| ====== Squid+Privoxy+Tor ====== | ====== Squid+Privoxy+Tor ====== | ||
| Строка 8: | Строка 8: | ||
| nano / | nano / | ||
| - | < | + | < |
| - | acl manager proto cache_object | + | ######################################################## |
| - | acl localhost src 127.0.0.1/ | + | # ОСНОВНЫЕ НАСТРОЙКИ SQUID |
| - | acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1 | + | ######################################################## |
| - | acl ftp proto FTP | + | |
| - | acl localnet src 10.0.0.0/ | + | |
| - | acl localnet src 172.16.0.0/ | + | |
| - | acl localnet src 192.168.0.0/ | + | |
| - | acl localnet src fc00::/ | + | |
| - | acl localnet src fe80::/ | + | |
| + | # Отключение проверки имён хостов | ||
| + | check_hostnames off | ||
| + | |||
| + | # Определение локальных сетей (RFC 1918 и др.) | ||
| + | acl localnet src 0.0.0.1-0.255.255.255 | ||
| + | acl localnet src 10.0.0.0/ | ||
| + | acl localnet src 100.64.0.0/ | ||
| + | acl localnet src 169.254.0.0/ | ||
| + | acl localnet src 172.16.0.0/ | ||
| + | acl localnet src 192.168.0.0/ | ||
| + | acl localnet src fc00::/ | ||
| + | acl localnet src fe80::/ | ||
| + | |||
| + | # ACL для блокируемых/ | ||
| + | acl russia_block_list url_regex "/ | ||
| + | acl onion_list url_regex -i .*:// | ||
| + | |||
| + | # ACL для разделения HTTP/HTTPS .i2p | ||
| + | acl i2p_http url_regex -i ^http:// | ||
| + | acl i2p_https url_regex -i ^https:// | ||
| + | |||
| + | ######################################################## | ||
| + | # НАСТРОЙКА PEER-СЕРВЕРОВ (UPSTREAM PROXIES) | ||
| + | ######################################################## | ||
| + | |||
| + | # HTTP .i2p → порт 4444 | ||
| + | cache_peer 192.168.1.131 parent 4444 4444 no-digest \ | ||
| + | protocol=http \ | ||
| + | name=i2p_http_peer \ | ||
| + | connect-timeout=15 \ | ||
| + | request-timeout=60 \ | ||
| + | dead-peer-timeout=30 \ | ||
| + | round-robin | ||
| + | |||
| + | # HTTPS .i2p → порт 4445 | ||
| + | cache_peer 192.168.1.131 parent 4445 4445 no-digest \ | ||
| + | protocol=https \ | ||
| + | name=i2p_https_peer \ | ||
| + | connect-timeout=15 \ | ||
| + | request-timeout=60 \ | ||
| + | dead-peer-timeout=30 \ | ||
| + | round-robin | ||
| + | |||
| + | # privoxy peer (порт 8118) | ||
| + | cache_peer 192.168.1.131 parent 8118 8118 no-digest \ | ||
| + | protocol=http \ | ||
| + | name=privoxy_peer \ | ||
| + | connect-timeout=15 \ | ||
| + | request-timeout=60 \ | ||
| + | dead-peer-timeout=30 \ | ||
| + | round-robin | ||
| + | |||
| + | ######################################################## | ||
| + | # ПРАВИЛА ДОСТУПА К PEER-СЕРВЕРАМ | ||
| + | ######################################################## | ||
| + | |||
| + | cache_peer_access i2p_http_peer allow i2p_http | ||
| + | cache_peer_access i2p_https_peer allow i2p_https | ||
| + | cache_peer_access privoxy_peer allow onion_list | ||
| + | cache_peer_access privoxy_peer allow russia_block_list | ||
| + | |||
| + | ######################################################## | ||
| + | # ПРАВИЛА НАПРАВЛЕНИЯ ЗАПРОСОВ | ||
| + | ######################################################## | ||
| + | |||
| + | # never_direct: | ||
| + | never_direct allow i2p_http | ||
| + | never_direct allow i2p_https | ||
| + | never_direct allow onion_list | ||
| + | never_direct allow russia_block_list | ||
| + | never_direct deny localnet | ||
| + | |||
| + | # always_direct: | ||
| + | always_direct deny i2p_http | ||
| + | always_direct deny i2p_https | ||
| + | always_direct deny onion_list | ||
| + | always_direct deny russia_block_list | ||
| + | always_direct allow localnet | ||
| + | |||
| + | ######################################################## | ||
| + | # HTTP-ДОСТУП И БЕЗОПАСНОСТЬ | ||
| + | ######################################################## | ||
| + | |||
| + | # Разрешить доступ из локальных сетей | ||
| + | http_access allow localnet | ||
| + | |||
| + | # Файл hosts для разрешения имён | ||
| + | hosts_file / | ||
| + | |||
| + | # Порты для безопасных соединений | ||
| acl SSL_ports port 443 | acl SSL_ports port 443 | ||
| - | acl Safe_ports port 80 # http | + | acl Safe_ports port 80 # http |
| - | acl Safe_ports port 21 # ftp | + | acl Safe_ports port 21 # ftp |
| - | acl Safe_ports port 443 | + | acl Safe_ports port 443 |
| - | acl Safe_ports port 70 # gopher | + | acl Safe_ports port 70 # gopher |
| - | acl Safe_ports port 210 | + | acl Safe_ports port 210 |
| - | acl Safe_ports port 1025-65535 | + | acl Safe_ports port 1025-65535 |
| - | acl Safe_ports port 280 | + | acl Safe_ports port 280 |
| - | acl Safe_ports port 488 | + | acl Safe_ports port 488 |
| - | acl Safe_ports port 591 | + | acl Safe_ports port 591 |
| - | acl Safe_ports port 777 | + | acl Safe_ports port 777 |
| - | acl Safe_ports port 3128 | + | |
| acl CONNECT method CONNECT | acl CONNECT method CONNECT | ||
| - | http_access allow manager localhost | + | # Запретить доступ к небезопасным портам |
| - | http_access deny manager | + | |
| http_access deny !Safe_ports | http_access deny !Safe_ports | ||
| + | # Запретить CONNECT к небезопасным SSL-портам | ||
| http_access deny CONNECT !SSL_ports | http_access deny CONNECT !SSL_ports | ||
| + | # Доступ для менеджера (только локально) | ||
| + | http_access allow localhost manager | ||
| + | http_access deny manager | ||
| + | |||
| + | # Включить дополнительные конфиги | ||
| + | include / | ||
| + | |||
| + | # Разрешить локальный доступ | ||
| http_access allow localhost | http_access allow localhost | ||
| - | http_access allow all | ||
| - | http_port 3128 | + | # Запретить всё остальное |
| + | http_access deny all | ||
| - | hierarchy_stoplist cgi-bin ? | + | ######################################################## |
| + | # ПОРТ И ДИРЕКТОРИИ | ||
| + | ######################################################## | ||
| - | cache_peer 127.0.0.1 parent 8118 7 no-query no-digest | + | # Основной HTTP-порт прокси |
| + | http_port 3128 | ||
| + | # Директория для coredump | ||
| coredump_dir / | coredump_dir / | ||
| + | |||
| + | ######################################################## | ||
| + | # НАСТРОЙКИ КЭШИРОВАНИЯ | ||
| + | ######################################################## | ||
| refresh_pattern ^ftp: | refresh_pattern ^ftp: | ||
| - | refresh_pattern ^gopher: | + | refresh_pattern ^gopher: |
| - | refresh_pattern -i (/ | + | refresh_pattern -i (/ |
| refresh_pattern . | refresh_pattern . | ||
| + | ######################################################## | ||
| + | # ДОПОЛНИТЕЛЬНЫЕ НАСТРОЙКИ (ОПЦИОНАЛЬНО) | ||
| + | ######################################################## | ||
| - | httpd_suppress_version_string on | + | # Уровень отладки (раскомментировать при необходимости) |
| - | forwarded_for off | + | # debug_options ALL,1 33,2 |
| - | always_direct allow ftp | + | |
| - | never_direct allow all | + | # Логирование доступа (стандартный формат) |
| + | access_log / | ||
| + | |||
| + | # Логирование кэша | ||
| + | cache_log / | ||
| + | |||
| + | # Размер кэша (пример: | ||
| + | # cache_dir ufs / | ||
| + | |||
| + | # Максимальный размер объекта в кэше (например, | ||
| + | # maximum_object_size 102400 KB | ||
| + | |||
| + | # DNS-серверы (если требуется) | ||
| + | # dns_nameservers 8.8.8.8 1.1.1.1 | ||
| + | # dns_timeout 15 seconds | ||
| </ | </ | ||
| + | ====== Privoxy ====== | ||
| nano / | nano / | ||
| < | < | ||
| - | forward-socks4a | + | # |
| + | # https:// | ||
| + | # | ||
| + | listen-address | ||
| + | #ExitNodes {za} | ||
| + | # | ||
| + | user-manual / | ||
| confdir / | confdir / | ||
| logdir / | logdir / | ||
| + | actionsfile match-all.action # Actions that are applied to all sites and maybe overruled later on. | ||
| actionsfile default.action | actionsfile default.action | ||
| actionsfile user.action | actionsfile user.action | ||
| filterfile default.filter | filterfile default.filter | ||
| + | filterfile user.filter | ||
| logfile logfile | logfile logfile | ||
| - | + | debug 1 # Log the destination for each request. See also debug 1024. | |
| - | debug 4096 # Startup banner and warnings | + | debug 2 # show each connection status |
| - | debug | + | debug 4 # show tagging-related messages |
| - | + | debug 8 # show header parsing | |
| - | user-manual / | + | # |
| - | listen-address | + | debug 32 # debug force feature |
| + | debug 64 # debug regular expression filters | ||
| + | debug 128 # debug redirects | ||
| + | # | ||
| + | debug 512 # Common Log Format | ||
| + | debug 1024 # Log the destination for requests Privoxy didn't let through, and the reason why. | ||
| + | debug 2048 # CGI user interface | ||
| + | debug | ||
| + | debug 8192 # Non-fatal errors | ||
| + | #debug 32768 # log all data read from the network | ||
| + | #debug 65536 # Log the applying actions | ||
| toggle | toggle | ||
| - | enable-remote-toggle 0 | + | enable-remote-toggle |
| + | enable-remote-http-toggle | ||
| enable-edit-actions 0 | enable-edit-actions 0 | ||
| - | enable-remote-http-toggle | + | enforce-blocks |
| buffer-limit 4096 | buffer-limit 4096 | ||
| + | enable-proxy-authentication-forwarding 0 | ||
| + | forward-socks5 / localhost: | ||
| + | forward-socks4 / localhost: | ||
| + | forward-socks4a / localhost: | ||
| + | forward-socks4a .onion localhost: | ||
| + | forward .i2p localhost: | ||
| + | forward 192.168.*.*/ | ||
| + | forward 127.*.*.*/ | ||
| + | forwarded-connect-retries | ||
| + | accept-intercepted-requests 1 # это позволит делать прозрачное проксирование через iptables | ||
| + | allow-cgi-request-crunching 0 | ||
| + | split-large-forms 0 | ||
| + | keep-alive-timeout 5 | ||
| + | tolerate-pipelining 1 | ||
| + | socket-timeout 300 | ||
| </ | </ | ||
| + | ====== Tor ====== | ||
| + | |||
| + | [[network: | ||
| nano / | nano / | ||
| < | < | ||
| - | SocksPort 9050 # what port to open for local application connections | + | # |
| - | SocksBindAddress 127.0.0.1 # accept connections only from localhost | + | # https:// |
| - | AllowUnverifiedNodes middle,rendezvous | + | # https:// |
| - | Log notice syslog | + | # curl -x socks5h:// |
| + | # | ||
| + | SocksPort | ||
| + | ControlPort localhost: | ||
| + | # | ||
| + | Log notice file / | ||
| + | Log debug file / | ||
| + | # | ||
| + | DataDirectory / | ||
| + | CookieAuthentication 0 | ||
| + | User debian-tor | ||
| + | Group debian-tor | ||
| + | RunAsDaemon 1 | ||
| + | # Эти настройки немного ускоряют работу - важно для слабых устройств | ||
| + | CircuitBuildTimeout 30 | ||
| + | KeepAlivePeriod 60 | ||
| + | NewCircuitPeriod 15 | ||
| + | NumEntryGuards 8 | ||
| + | # Это позволяет ограничить количество используемых сокетов - важно при работе на опять-таки " | ||
| + | ConstrainedSockets 1 | ||
| + | # Мининизировать запись на диск - это важно для устройств, | ||
| + | AvoidDiskWrites 1 | ||
| + | |||
| + | # bridges | ||
| + | ClientTransportPlugin obfs4 exec / | ||
| + | Bridge obfs4 [2400: | ||
| + | Bridge webtunnel [2001: | ||
| + | Bridge webtunnel [2001: | ||
| + | Bridge obfs4 185.177.207.137: | ||
| + | Bridge obfs4 207.172.185.193: | ||
| + | UseBridges 1 | ||
| + | </ | ||
| + | |||
| + | ====== Bridges ====== | ||
| + | |||
| + | * <code bash>$ apt install obfs4proxy</ | ||
| + | * https:// | ||
| + | |||
| + | ===== RKN ===== | ||
| + | |||
| + | <code bash> | ||
| + | #!/bin/sh | ||
| + | curl -fsSL https:// | ||
| + | | sed 1d \ | ||
| + | | cut -d ';' | ||
| + | | tr " | ||
| + | | sed 's/^[ \t]*//;s/[ \t]*$//' | ||
| + | | uniq > / | ||
| + | |||
| + | #“sed 1d” — отрезаем первую строку | ||
| + | #“cut -d ';' | ||
| + | #tr " | ||
| + | #sed 's/^[ \t]*//;s/[ \t]*$//' | ||
| + | #uniq — удаляем дублирующиеся строки. | ||
| </ | </ | ||