Простейшая конфигурация HTTP-прокси сервера SQUID


Установим на нашем VPS-сервере HTTP-прокси сервер Squid:

# aptitude install squid3

Центральный конфигурационный файл прокси-сервера находится в файле /etc/squid/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 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 
 
acl vpnnet src 10.250.0.0/24 
http_access allow vpnnet 
 
visible_hostname proxy-server 
 
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 (Release|Packages(.gz)*)$     0      20%    2880 
refresh_pattern .              0      20%    4320

Из интересного в этом конфигурационном файле только правила:

acl vpnnet src 10.250.0.0/24 
http_access allow vpnnet 

Именно ими мы и разрешаем работу с прокси сервером из нашей VPN-сети.

Если вам интересны более хардкорные примеры, то они есть у меня и я могу ими поделиться, но для этого мне надо будет арендовать прокси в Америке с поддержкой пула IPv6-адресов (могу показать проект с рандомными IPv6-проксями на разных портах) и внизу странички есть формочка как меня задонатить на этот подвиг.