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_param
para autenticação PAM (você provavelmente não deseja proxy aberto e perdeu seu VPS para relatórios de spam). request_header_access
linhas 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 tcp
e 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:8123
no 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.