Назад | Перейти на главную страницу

Как настроить обратный прокси-сервер Squid для использования трафика https и http?

У меня уже есть обратный прокси squid, работающий на двух тестовых сайтах.

Мои два сайта www.test1.com и www.test2.com

Мой текущий рабочий файл конфигурации выглядит так

/etc/squid3/squid.conf

acl test1_acl dstdomain www.test1.com
acl test2_acl dstdomain www.test2.com

aclSSL_ports port 443

acl Safe_ports port 80
acl ​Safe_ports port 21
acl ​Safe_ports port 443
acl ​Safe_ports port 70
acl ​Safe_ports port 210
acl ​Safe_ports port 1025-65535
acl ​Safe_ports port 280
acl ​Safe_ports port 488
acl ​Safe_ports port 591
acl ​Safe_ports port 777

acl CONNECT method CONNECT

http_access deny !Safe_ports
http_access deny CONNECT !Safe_ports
http_access allow localhost manager
http_access deny manager
http_access allow pi1_acl
http_access allow pi2_acl
http_access allow localhost
http_access deny all

http_port 80 accel defaultsite=127.0.0.1

cache_peer 192.168.1.x parent 80 0 proxy-only name=test1
cache_peer 192.168.1.y parent 80 0 proxy-only name=test2
cache_peer_access test2 allow test2_acl

coredump_dir /var/spool/squid3

refresh_pattern ^ftp:    1440    20%    10080
refresh_pattern ^gopher:    1440    0%    ​1440
refresh_pattern -i (/cgi-bin/|\?)    0    20%    2880
refresh_pattern .    0    20%    ​4320

Как я уже сказал, эта конфигурация работает, но я хотел добавить пару сайтов https. Я старался следовать примеру Вот, но он уже настроен немного иначе, чем их рекомендуемый формат конфигурации (или, по крайней мере, формат, который используется по умолчанию).

Дополнительная информация на сайте https, на который я хочу переслать:

Вот мой новый файл конфигурации.

/etc/squid3/squid.conf

#new lines
https_port 443 accel defaultsite=127.0.0.1 cert=/path/to/myCert.crt key=/path/to/myKey.key

acl newServer_acl dstdomain www.newserver.com
http_access allow newServer_acl
cache_peer 192.168.1.z parent 443 0 proxy-only name=newserver ssl sslcafile=/path/to/myCert.crt
#end new lines

acl test1_acl dstdomain www.test1.com
acl test2_acl dstdomain www.test2.com

aclSSL_ports port 443

acl Safe_ports port 80
acl ​Safe_ports port 21
acl ​Safe_ports port 443
acl ​Safe_ports port 70
acl ​Safe_ports port 210
acl ​Safe_ports port 1025-65535
acl ​Safe_ports port 280
acl ​Safe_ports port 488
acl ​Safe_ports port 591
acl ​Safe_ports port 777

acl CONNECT method CONNECT

http_access deny !Safe_ports
http_access deny CONNECT !Safe_ports
http_access allow localhost manager
http_access deny manager
http_access allow pi1_acl
http_access allow pi2_acl
http_access allow localhost
http_access deny all

http_port 80 accel defaultsite=127.0.0.1

cache_peer 192.168.1.x parent 80 0 proxy-only name=test1
cache_peer 192.168.1.y parent 80 0 proxy-only name=test2
cache_peer_access test2 allow test2_acl

coredump_dir /var/spool/squid3

refresh_pattern ^ftp:    1440    20%    10080
refresh_pattern ^gopher:    1440    0%    ​1440
refresh_pattern -i (/cgi-bin/|\?)    0    20%    2880
refresh_pattern .    0    20%    ​4320

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

Любая помощь приветствуется.

Судя по моему исследованию, это не похоже на простую проблему с файлом конфигурации. Squid должен быть скомпилирован с использованием --enable-ssl flag, и это, кажется, довольно сложно с дистрибутивами на основе Debian. Мне кажется, что squid более идеален для дистрибутивов на основе RPM. Видеть Вот для получения дополнительной информации.

Я собираюсь отметить это как ответ на данный момент, если позже кто-то не опубликует что-то еще, что имеет больше смысла.