Конфигурация кальмара

Конфигурация кальмара

У меня VPS. Как мне подключиться к моему серверу по протоколу HTTPS и перенаправить соединения моего браузера на соединение HTTPS?

Сейчас я использую SSH-туннель, но он слишком медленный.

решение1

Я использую Squid как прокси-сервер иСтаннелкак SSL-оболочка. Имеет очень хорошую производительность благодаря кэшированию.

Конфигурация кальмара

После установки Squid следуйтеДокументация Squidи настройте его. Вот пример конфигурации:

http_port 3193 прозрачный

cache_dir ufs /var/cache/squid 128 16 128
кэш_память 1 МБ
максимальный_размер_объекта_в_памяти 512 КБ
максимальный_размер_объекта 1 МБ

видимое_имя_хоста hostname.com

иерархия_стоплист cgi-bin ?
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

acl manager proto cache_object
acl localhost источник 127.0.0.1/32 ::1
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1

acl localnet src 10.0.0.0/8 # RFC 1918 возможная внутренняя сеть
acl localnet src 172.16.0.0/12 # RFC 1918 возможная внутренняя сеть
acl localnet src 192.168.0.0/16 # RFC 1918 возможная внутренняя сеть
acl localnet src fc00::/7 # RFC 4193 диапазон локальной частной сети
acl localnet src fe80::/10 # RFC 4291 машины link-local (подключенные напрямую)

acl SSL_ports порт 443
acl Safe_ports порт 80 # http
acl Safe_ports порт 21 # ftp
acl Safe_ports порт 443 # https
acl Safe_ports порт 70 # gopher
acl Safe_ports порт 210 # wais
acl Safe_ports порт 1025-65535 # незарегистрированные порты
acl Safe_ports порт 280 # http-mgmt
acl Safe_ports порт 488 # gss-http
acl Safe_ports порт 591 # файлмейкер
acl Safe_ports порт 777 # многоязычный http
acl CONNECT метод CONNECT

auth_param базовая программа /usr/libexec/squid/pam_auth
auth_param основные дети 5
auth_param базовая область Squidy
auth_param основные учетные данныеttl 4 часа

пароль acl proxy_auth ТРЕБУЕТСЯ

http_access разрешить менеджер
http_access deny !Safe_ports
http_access deny ПОДКЛЮЧИТЬСЯ !SSL_ports
http_access разрешить пароль
http_access разрешить локальный хост
http_access разрешить локальную сеть
http_access запретить все

через офф
переадресовано_для выключения

request_header_access Разрешить разрешить все
request_header_access Авторизация разрешает все
request_header_access WWW-Аутентификация разрешить всем
request_header_access Прокси-авторизация разрешает все
request_header_access Прокси-аутентификация разрешить все
request_header_access Cache-Control разрешить все
request_header_access Content-Encoding разрешить все
request_header_access Длина содержимого разрешить все
request_header_access Content-Type разрешить все
request_header_access Дата разрешить все
request_header_access Истекает разрешить все
request_header_access Хост разрешает все
request_header_access If-Modified-Since разрешить все
request_header_access Last-Modified разрешить все
request_header_access Местоположение разрешить все
request_header_access Прагма разрешить все
request_header_access Принять разрешить все
request_header_access Accept-Charset разрешить все
request_header_access Accept-Encoding разрешить все
request_header_access Accept-Language разрешить все
request_header_access Content-Language разрешить все
request_header_access Mime-версия разрешает все
request_header_access Повторить попытку после разрешения всех
request_header_access Заголовок разрешить все
request_header_access Подключение разрешено всем
request_header_access Proxy-Connection разрешить все
request_header_access User-Agent разрешает все
request_header_access Cookie разрешить все
request_header_access Все отклонить все

Он слушает порт 3193 tcp. Затем идут опции кэширования, некоторые команды acl и auth_paramдля аутентификации PAM (Вы, вероятно, не хотите открывать прокси и терять свой VPS для спам-отчетов). request_header_accessстроки не требуются. Они дают вам лучшую анонимность.

Конфигурация сервера Stunnel

Установить stunnel на сервер. Вот пример конфигурации:

setuid = stunnel
setgid = stunnel

CAfile = /etc/stunnel/certs.pem
CRLfile = /etc/stunnel/crls.pem

[прокси]
принять = 8888
подключение = 127.0.0.1:3193

Вероятно, файлы сертификации сделаны при установке Stunnel. Проверьте путь к файлу в CAfile. Он просто слушает порт 8888 tcpи перенаправляет расшифрованный поток в Squid. Поэтому давайте убедимся, что он доступен:

iptables -I INPUT 1 -p tcp --dport 8888 -j ACCEPT

Вам больше не нужно, чтобы порт прослушивания Squid был доступен всему миру.

Конфигурация клиента Stunnel

Установите Stunnel на локальный компьютер и измените эту конфигурацию в соответствии со своими потребностями:

setuid = stunnel
setgid = stunnel
pid = /var/run/stunnel/stunnel.pid

[плохо]
принять = 8123
подключиться = server_ip:8888
клиент = да
libwrap = нет

Замените server_ip соответствующим значением. Затем запустите Squid на сервере и Stunnel на клиенте и сервере. Установите прокси как localhost:8123в вашем браузере. Если все работает, вам должны предложить ввести имя пользователя и пароль.

решение2

https сервер Apache? Я не совсем понимаю вашу ситуацию, но если у вас mod_proxy, вы можете сделать то, что хотите.

решение3

Я никогда ничего не настраивал на виртуальном хосте, но вот некоторая информация об общем HTTPS:

HTTPS использует комбинацию HTTP и SSL (см. статью в Википедии здесь:http://en.wikipedia.org/wiki/HTTP_Secure). HTTPS на самом деле не является отдельным протоколом, а представляет собой обычный HTTP, работающий в туннеле SSL.

HTTPS использует CA (центры сертификации) и PKI (инфраструктура открытых ключей), чтобы гарантировать, что пользователи могут «доверять» сайту. Вы должны создать сертификат открытого ключа для вашего веб-сервера, и он должен быть подписан доверенным CA (например, VeriSign). Чтобы получить доверенный сертификат, вам может потребоваться ежегодная плата за его обслуживание.

Если вы не используете доверенный CA, пользователи получат предупреждение при попытке подключения к вашему сайту. Это часто может привести к тому, что пользователи уйдут с вашего сайта, поскольку они могут посчитать его угрозой безопасности.

Также имейте в виду, что хотя HTTP по умолчанию использует порт 80, HTTPS использует 443, поэтому если у вас есть переадресация/блокировка портов, вам придется убедиться, что они открыты для подключения. Чтобы использовать HTTPS, вам также придется убедиться, что вы вводите его в URL при переходе на сайт, в противном случае он, скорее всего, по умолчанию будет использовать HTTP.

EDIT: Вот хорошее введение в работу HTTPS: http://securityworkshop.blogspot.com/2009/01/how-httpsssl-works-part-1-basics.html

решение4

Мой хрустальный шар говорит, что вам стоит взглянуть наhttp://www.stunnel.org/static/stunnel.html

Если мяч окажется неправильным, это в любом случае не повредит.

Связанный контент