Olá, tudo bem, betas?, hoje vou mostrar como realizar o seguinte.
Ver o anexo 307812
Para o público, um IP da Rússia
(um VPS russo, por exemplo, em veesp.com) e, apenas para nosso conhecimento, um servidor nos Estados Unidos.
Em que isso beneficia vocês? Para quem tem sites de séries, filmes, anime, pornô ou pelo simples fato de evitar que a concorrência saiba onde o site está realmente hospedado (para saber com que fins) e ter que, por qualquer motivo, migrar seus dados de tempos em tempos. Serve muito para portais que recebem ataques e depois você se vê obrigado a migrar os dados de forma recorrente, pois com isso você apenas monta um proxy e muda o IP, sem nunca mais tocar nos dados
(e se você é pirata com um site do tipo warez... as reclamações não chegam ao destino final, apenas à empresa offshore, que as ignora) Impressionante, não?
Obviamente, não faltará quem diga que sempre há formas de conseguir o IP, mas este método por si só já dificulta para uma população muito grande (ainda assim, não vi esses casos, apenas pessoas falando que é possível)
sem mais delongas, vamos ao que interessa.
1) Vou e compro meu servidor
(deve ser feito em um servidor que esteja em branco)
Ver o anexo 307828
2) Colocamos um hostname (nome da máquina) e preenchemos os dados (Atenção, selecionamos CentOS 7 x64 como distribuição de Linux)
Ver o anexo 307832
3) Depois de fazer o pedido e pagar, nos entregarão o VPS em cerca de 5-10 minutos
Ver o anexo 307834
Ver o anexo 307835
4) Agora, com os dados que recebemos por e-mail, entramos no VPS via SSH e iniciamos uma instalação do VestaCP
Normalmente
a porta SSH na Veesp por padrão é a 22, mas em outras empresas isso pode variar, a menos que você a altere da sua maneira.
yum upgrade -y; yum install -y wget curl curl-devel nano perl perl-core epel-release; curl -O http://vestacp.com/pub/vst-install.sh; bash vst-install.sh --nginx yes --apache yes --phpfpm no --named yes --remi yes --vsftpd no --proftpd no --iptables no --fail2ban no --quota no --exim no --dovecot no --spamassassin no --clamav no --softaculous no --mysql no --postgresql no --hostname server.hostname.tld --email tucorreo@gmail.com --password Cambiame01@#$
Levará pelo menos 10 minutos (ou menos) para instalar o VestaCP e não passará de 20 minutos em provedores com conexão à internet lenta.
Atenção com o hostname, e-mail e senha colocados na linha de comando, além de
levar em conta que a senha root do VPS é diferente da do admin.
Ver o anexo 307841
(É possível que demore um pouco)
Ver o anexo 307842
Vamos colocar "y" seguido de
enter e finalmente esperamos que todo esse processo automatizado termine...
Ver o anexo 307843
5) Uma vez instalado, teremos 50% do trabalho realizado. O próximo passo será mover os modelos (templates) que o VestaCP traz por padrão e carregar apenas o código com o qual vamos trabalhar. O Vesta servirá apenas como um painel de controle para adicionar e excluir domínios, ativar SSL com Let's Encrypt ou instalar um próprio, sem ter que ficar modificando código pelo console nem escalar para algo maior.
Se você tem conhecimento para fazer isso sem um painel de controle, então vá em frente, mas isso foi feito para quem não quer lutar com isso
😀 (ou para facilitar a existência das pessoas xD). No meu caso, eu tenho a experiência e quero facilitar as coisas para todos vocês.
Ver o anexo 307845
mv /usr/local/vesta/data/templates/web/nginx/ /usr/local/vesta/data/templates/web/nginx.old;mkdir /usr/local/vesta/data/templates/web/nginx/;cd /usr/local/vesta/data/templates/web/nginx/; rm -rf /etc/nginx/conf.d/1* /etc/nginx/conf.d/2* /etc/nginx/conf.d/3* /etc/nginx/conf.d/4* /etc/nginx/conf.d/5* /etc/nginx/conf.d/6* /etc/nginx/conf.d/7* /etc/nginx/conf.d/8* /etc/nginx/conf.d/9* /etc/nginx/conf.d/0*; mv /usr/local/vesta/data/packages /usr/local/vesta/data/packages.old; mkdir /usr/local/vesta/data/packages; wget https://raw.githubusercontent.com/carlosfriascf/vesta7/master/default.pkg -O /usr/local/vesta/data/packages/default.pkg;
6) Vamos colar o seguinte código (e modificar o que diz IPDESTINOFINALAQUI pela IP do servidor que temos nos Estados Unidos, por exemplo)
- Criamos o modelo
default.stpl, podemos criá-lo da seguinte forma
nano /usr/local/vesta/data/templates/web/nginx/default.stpl;
e depois inserimos o seguinte...
(nota: colocar o IP do servidor ou hospedagem em IPDESTINOFINALAQUI como destino/para)
server {
listen *:%proxy_ssl_port% ssl;
server_name %domain_idn% %alias_idn%;
ssl_certificate %ssl_pem%;
ssl_certificate_key %ssl_key%;
error_log /var/log/httpd/domains/%domain%.error.log error;
location / {
proxy_pass https://IPDESTINOFINALAQUI:443;
location ~* ^.+\.(%proxy_extentions%)$ {
root %sdocroot%;
access_log /var/log/httpd/domains/%domain%.log combined;
access_log /var/log/httpd/domains/%domain%.bytes bytes;
expires max;
try_files $uri @fallback;
}
}
location @fallback {
proxy_pass https://IPDESTINOFINALAQUI:443;
}
include %home%/%user%/conf/web/snginx.%domain%.conf*;
}
- Fazemos
o mesmo com default.tpl, podemos criá-lo da seguinte forma
nano /usr/local/vesta/data/templates/web/nginx/default.tpl;
server {
listen *:%proxy_port%;
server_name %domain_idn% %alias_idn%;
error_log /var/log/httpd/domains/%domain%.error.log error;
location / {
proxy_pass http://IPDESTINOFINALAQUI:80;
location ~* ^.+\.(%proxy_extentions%)$ {
root %docroot%;
access_log /var/log/httpd/domains/%domain%.log combined;
access_log /var/log/httpd/domains/%domain%.bytes bytes;
expires max;
try_files $uri @fallback;
}
}
location @fallback {
proxy_pass http://IPDESTINOFINALAQUI:80;
}
include %home%/%user%/conf/web/nginx.%domain%.conf*;
}
- Lembre-se de salvar as alterações, no nano as alterações são salvas com CTRL + O (depois enter) e para sair CTRL + X...
Ver o anexo 307854
7) Feito isso, concluímos o trabalho pesado... Tudo o que precisamos fazer agora é colocar o IP do nosso Proxy Reverso na lista branca (se o IP que estamos colocando é de uma hospedagem compartilhada, devemos pedir à hospedagem que o faça para evitar banimentos de IP por desconhecimento da sua plataforma de segurança)
Já precisei enviar tickets para a
Banahosting para fazer exclusões, por exemplo, no Bitninja, que costuma expulsar muito os IPs dos nossos Proxies.
(atenção, isso no caso de estar hospedado em uma hospedagem compartilhada, pois se envia um ticket)
8) Uma vez que o IP esteja na lista branca em nosso firewall ou que a empresa de hospedagem nos confirme que fez a exclusão, passamos a excluir o domínio de teste que o VestaCP gerou no momento da instalação e finalmente criamos o que vamos passar pelo Proxy.
- Entramos no VestaCP, que é IPDOPROXY:8083 com https, ignoramos o Certificado SSL inseguro e clicamos em
Log In.
-
Vamos até "Web" para ver a lista de domínios existentes...
- Excluímos isso e adicionamos o nosso clicando no botão verde (+) para adicionar o nosso.
- Colocamos nosso domínio, adicionamos
😀
- E pronto, esta é a mensagem que nos confirmará o bom trabalho que realizamos
😀
9) Finalmente... Vamos ao Cloudflare ou ao nosso Gerenciador de DNS, depois mudamos o IP do servidor nos Estados Unidos pelo do Proxy.
- Modifica-se o @ (o registro A do domain.tld e o www no caso de ser um Record A e não um CNAME)
10) Concluímos ativando o Certificado SSL e verificando os resultados...
RESULTADO:
Qualquer dúvida, correção, preocupação, pergunta, contribuição ou sugestão é bem-vinda... Não é incômodo algum, então você pode me escrever por mensagem privada ou comentar no tópico e eu responderei com muito prazer, sem problema algum. Fico no aguardo de qualquer novidade, nos vemos no próximo tutorial
😉 também clicando no link da minha assinatura, você poderá validar parte dos serviços que eu ofereço.