Configuração do Squid

Configuração do Squid

Eu tenho um VPS. Como me conecto ao meu servidor através do protocolo HTTPS e redireciono as conexões do meu navegador para a conexão HTTPS?

Atualmente eu uso o túnel SSH, mas é muito lento.

Responder1

Estou usando o Squid como servidor proxy eStúnelcomo wrapper SSL. Tem um desempenho muito bom devido ao cache.

Configuração do Squid

Depois de instalar o Squid, sigaDocumentações do Squide configure-o. Aqui está um exemplo de configuração:

http_port 3193 transparente

cache_dir ufs /var/cache/squid 128 16 128
cache_mem 1MB
máximo_object_size_in_memory 512 KB
tamanho máximo do objeto 1 MB

visível_hostname hostname.com

hierarquia_stoplist cgi-bin?
atualização_pattern ^ftp: 1440 20% 10080
atualização_pattern ^gopher: 1440 0% 1440
atualizar_pattern -i (/cgi-bin/|\?) 0 0% 0
atualização_padrão . 0 20% 4320

gerenciador acl proto cache_object
acl localhost src 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 possível rede interna
acl localnet src 172.16.0.0/12 # RFC 1918 possível rede interna
acl localnet src 192.168.0.0/16 # RFC 1918 possível rede interna
acl localnet src fc00::/7 # RFC 4193 intervalo de rede privada local
acl localnet src fe80::/10 # Máquinas link-local (conectadas diretamente) RFC 4291

acl SSL_ports porta 443
acl Safe_ports porta 80 # http
acl Safe_ports porta 21#ftp
acl Safe_ports porta 443 #https
acl Safe_ports porta 70 # gopher
acl Safe_ports porta 210 # wais
acl Safe_ports porta 1025-65535 # portas não registradas
acl Safe_ports porta 280 # http-mgmt
acl Safe_ports porta 488 # gss-http
acl Safe_ports porta 591 # criador de arquivos
acl Safe_ports porta 777 # multiling http
acl CONNECT método CONNECT

programa básico auth_param /usr/libexec/squid/pam_auth
auth_param filhos básicos 5
auth_param reino básico Squidy
auth_param credenciais básicasttl 4 horas

senha acl proxy_auth OBRIGATÓRIA

http_access permitir gerenciador
http_access negar!Portas_seguras
http_access negar CONECTAR!SSL_ports
http_access permitir senha
http_access permite localhost
http_access permite rede local
http_access negar tudo

via desligado
encaminhado_para desligado

request_header_access Permitir permitir todos
request_header_access Autorização permitir todos
request_header_access WWW-Authenticate permite todos
request_header_access Proxy-Authorization permite todos
request_header_access Proxy-Authenticate permite todos
request_header_access Cache-Control permite todos
request_header_access Content-Encoding permite todos
request_header_access Content-Length permite todos
request_header_access Content-Type permite todos
request_header_access Data permitir todos
request_header_access Expira permitir todos
request_header_access Host permite todos
request_header_access If-Modified-Since permite todos
request_header_access Última modificação permite todos
request_header_access Localização permitir todos
request_header_access Pragma permite todos
request_header_access Aceitar permitir todos
request_header_access Accept-Charset permite todos
request_header_access Accept-Encoding permite todos
request_header_access Accept-Language permite todos
request_header_access Content-Language permite todos
request_header_access Versão Mime permite todos
request_header_access Repetir-Depois de permitir todos
request_header_access Título permite todos
request_header_access Conexão permite todos
request_header_access Proxy-Connection permite todos
request_header_access User-Agent permite todos
request_header_access Cookie permite todos
request_header_access Todos negar todos

Ele escuta port 3193 tcp. Em seguida, vêm as opções de cache, alguns comandos acl e auth_parampara autenticação PAM (você provavelmente não deseja proxy aberto e perdeu seu VPS para relatórios de spam). request_header_accesslinhas não são necessárias. Eles oferecem melhor anonimato.

Configuração do servidor Stunnel

Instale o stunnel no servidor. Aqui está um exemplo de configuração:

setuid = stunnel
setgid = atordoamento

CAfile = /etc/stunnel/certs.pem
Arquivo CRL = /etc/stunnel/crls.pem

[procurador]
aceitar = 8888
conectar = 127.0.0.1:3193

Provavelmente arquivos de certificação feitos na instalação do stunnel. verifique o caminho do arquivo em CAfile. Ele simplesmente escuta a porta 8888 tcpe redireciona o fluxo descriptografado para o Squid. Portanto, certifique-se de que esteja acessível:

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

Você não precisa mais que a porta de escuta do squid seja acessível mundialmente.

Configuração do cliente Stunnel

Instale o stunnel em sua máquina local e altere esta configuração de acordo com suas necessidades:

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

[poxa]
aceitar = 8123
conectar = server_ip:8888
cliente = sim
libwrap = não

Substitua server_ip pelo valor apropriado. em seguida, inicie o Squid no servidor e o Stunnel no cliente e no servidor. defina o proxy como localhost:8123no seu navegador. Se tudo funcionar, você deverá fornecer nome de usuário e senha.

Responder2

O servidor https é apache? Não entendo completamente sua situação, mas se você tiver mod_proxy, poderá fazer o que quiser.

Responder3

Nunca configurei nada em um host virtual, mas aqui estão algumas informações sobre HTTPS geral:

HTTPS usa uma combinação de HTTP e SSL (veja o artigo da Wikipedia aqui:http://en.wikipedia.org/wiki/HTTP_Secure). HTTPS não é realmente um protocolo próprio, mas sim um HTTP normal executado em um túnel SSL.

HTTPS usa CAs (autoridades de certificação) e PKI (infraestrutura de chave pública) para garantir que os usuários possam 'confiar' no site. Você deve criar um certificado de chave pública para o seu servidor web e que deve ser assinado por uma CA confiável (como a VeriSign). Para obter um certificado confiável, sua manutenção pode custar uma taxa anual.

Se você não passar por uma CA confiável, os usuários receberão um aviso quando tentarem se conectar ao seu site. Muitas vezes, isso pode fazer com que os usuários se desviem do seu site, pois podem considerá-lo um risco à segurança.

Além disso, lembre-se de que, embora o HTTP use a porta 80 por padrão, o HTTPS usa a 443, portanto, se você tiver algum encaminhamento/bloqueio de porta, precisará garantir que ela esteja aberta para você se conectar. Para usar HTTPS, você também terá que digitá-lo no URL ao navegar até o site, caso contrário, provavelmente o padrão será usar HTTP.

EDIT: Aqui está uma boa introdução de como o HTTPS funciona: http://securityworkshop.blogspot.com/2009/01/how-httpsssl-works-part-1-basics.html

Responder4

Minha bola de cristal diz que você deveria dar uma olhadahttp://www.stunnel.org/static/stunnel.html

Caso a bola esteja errada, não vai doer de qualquer maneira.

informação relacionada