Boa tarde Galera
hoje instalei mais uma vez um certificado digital SSL free em um cliente que tinha rodando o MKauth, o mesmo relatou que no fórum não tem nada especifico e detalhado de como instalar esse certificado , como configurar os arquivos apache, etc..
Decidi criar este mini tutorial para que ninguem mais sofra com esse problema.
Se ler com atenção em 10minutos no máximo vai ter o seru certificado funcionando 100%
1- PASSO
Consiste óbvio em gerar esses certificados, e para isso será necessário ter um domínio seu apontado para o IP válido publico do seu MKauth servidor.
Tendo isso feito você vai acessar o site https://www.sslforfree.com/
na janela que vai abrir coloque o domínio do seu site logo após o https://seu-dominio.com.br e clique na opcão CREATE FREE SSL CERTIFICATE
2- PASSO
Aguarde uns segundos enquanto ele vai gerar os certificados SSL, em seguida irá abrir uma página que lhe vair dar 3 opcões para efetuar os passos de validacão e verificacão desse certificado, eu selecionei a opcão que achei mais simples para mim que foi a opcão "MANUAL VERIFICATION"
É uma verificacão manual que consiste em enviar esses arquivos a uma pasta especifica dentro do seu MKauth.
Lembrando que a sua porta 80 e 443 devem estar liberadas no IP do seu firewall parao IP publico selecionado e sendo usado no seu mkauth hotsite.
3- PASSO
Após clicar na opcão de verificacão manual ele vai abrir um link "DOWNLOAD FILE #1"
esse arquivo terá que ser baixado e enviado via FTP ou WINCSP para umas novas pastas que teremos que criar no diretório do mkauth hotsite.
O diretório onde fica a pagina web do hotsite mkauth está localizado em /VAR/WWW
Dentro da pasta /var/www iremos criar uma nova pasta com o nome .well-known
Após criar a nova pasta vai entrar nessa mesma pasta criada e vai criar uma nova pasta com o nome acme-challenge
Ficando assim o seguinte caminho ao diretório final /var/www/.well-known/acme-challenge
Por fim irá então colocar dentro dessa pasta o arquivo "DOWNLOAD FILE #1" que foi baixado do site sslfree.
4- PASSO
Após copiar o arquivo para a pasta , volte de novo no site sslfree e na opcão 5 do site sslfree terá a seguinte opcão
5-Verify successful upload by visiting the following links in your browser
esse é um link apenas de teste que criei para o tutorial, porém onde está teste.com.br (será o dominio correto do vosso site mkauth hotsite) esse link irá confirmar se realmente o arquivo gerado pelo site sslfree que foi colocado na pasta acme-challenge está acessivel de fora da sua rede para a internet (se o seu firewall estiver configurado para liberar o acesso externo então conseguirá abrir uma página nova em html com uns caracteres em headecimal) significando que a verificacão foi efetuada com sucesso.
5-PASSO
Após efetuar o passo anterior na mesma página do site sslfre irá abrir outro link abaixo contendo "DOWNLOAD SSL CERTIFICATE"
Clique nele e aguarde os arquivos ssl sendo baixados para o seu PC uma pasta zipada de nome sslfree.zip
Dentro da pasta irá conter 3 arquivos que serão colocados dentro do seu mkauth
os arquivos são private.key * certificate.crt * ca_bundle.crt
Esses arquivos terão que ser enviados dentro da pasta /etc/apache2/ssl
A pasta ssl irá armazenar estes 3 arquivos.
6- PASSO
Após enviado esses 3 arquivos para a pasta SSL temos que efetuar mais um passo, que será agora linkar esses arquivos ao nosso hotsite, vamos então abrir por ultimo o arquivo 000-default.conf
Esse arquivo fica situado dentro da pasta /etc/apache2/sites-enabled
abrimos ele com um editor de texto e vamos procurar a seguinte opcão no texto como descrito abaixo.
<VirtualHost *:443>
ServerAdmin suporte@mk-auth.com.br
ServerName localhost
DocumentRoot /var/www/
SSLEngine on
SSLCertificateFile /etc/apache2/apache.pem
</VirtualHost>
E vamos alterar a configuração para ficar exatamente de acordo como está abaixo
<VirtualHost *:443>
ServerAdmin suporte@mk-auth.com.br
ServerName localhost
DocumentRoot /var/www/
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/certificate.crt
SSLCertificateKeyFile /etc/apache2/sslprivate.key
SSLCertificateChainFile /etc/apache2/ssl/ca_bundle.crt
</VirtualHost>
Depois de editar o arquivo, salvamos o mesmo e fechamos,
em seguida pelo comando terminal putty ou outro semelhante digite o seguinte comando para reiniciar o apache2
service apache2 restart
ele irá reiniciar o apache2, após finalizado abra o seu navegador limpe o histórico e tente acessar a sua página do mkauth hotsite usando o seu dominio https://seu-dominio.com.br
que já devera aparecer o novo certificado válido ssl carregado sem problema ou informacões de falha de certificado.
7 PASSO (OPCIONAL)
Caso tenha interesse em forçar todos os seus visitantes a usar o https ao inves do http no siste do hotsite, existe mais um passo obrigatório a ser efetuado, este passo ira forcar usuários entrando no site apenas digitando www.seu-dominio.com.br a ser redirecionado para https://seu-dominio.com.br
Para efetuarmos esse procedimento, vamos de novo na pasta /etc/apache2/sites-enabled e editamos novamente o arquivo 000-default.conf
nas primeiras linhas do arquivo iremos encontrar a seguinte informacão
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride all
Header add MKAUTH "FILES"
Header set MKAUTH "FILES"
</Directory>
Vamos editar e adicionar os seguintes dados necessários
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName www.seu-dominio.com.br
Redirect / https://www.seu-dominio.com.br/
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride all
Header add MKAUTH "FILES"
Header set MKAUTH "FILES"
</Directory>
Salve de novo o arquivo editado, e mais uma vez reinicie o apache2 service apache2 restart
abra o navegador e tente acessar com www.seu-dominio.com.br se tudo correr esperado ele irá redirecionar automático para https://seu-dominio.com.br forcando o seu usuário a navegar em https.
NOTA - A funcão usada para o hotsite em https , pode também ser usado nas páginas de corte informadas ao cliente, pra isso basta editar de novo o mesmo arquivo 000-default.conf
e colocar os dados de acordo novamente para chamar os 3 arquivos ssl gerados para o seu dominio como descrito abaixo
<VirtualHost *:445>
ServerAdmin suporte@mk-auth.com.br
ServerName localhost
DocumentRoot /opt/mk-auth/paginas/corte/
SSLEngine on
SSLCertificateFile /etc/apache2/apache.pem
</VirtualHost>
trocar para
<VirtualHost *:445>
ServerAdmin suporte@mk-auth.com.br
ServerName localhost
DocumentRoot /opt/mk-auth/paginas/corte/
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/certificate.crt
SSLCertificateKeyFile /etc/apache2/sslprivate.key
SSLCertificateChainFile /etc/apache2/ssl/ca_bundle.cr
</VirtualHost>
Espero que não tenha ficado muito longo a descricão, qualquer dúvida só perguntar.
Respostas
O tutorial ficou perfeito, já fiz aqui e funcionou 100%.
Obs: tem um erro no seu tutorial " Atual: (SSLCertificateKeyFile /etc/apache2/sslprivate.key), Correto: (SSLCertificateKeyFile /etc/apache2/ssl/private.key).
Está falta a barra apos a ssl.
Boa noite
tranquilo foi na hora de copiar e colar aqui no fórum ficou faltando a barra /
Obs- tentei atualizar o tópico mencionado acima porém não consigo mais editar, venceu o periodo de 15mins se o admin tiver a oportunidade de ler o tópico e alterar, irá auxiliar outros de futuro.
eu tenho um certificado da godaddy que eu uso no meu site (dominio), consigo usar este mesmo certificado no mkauth ?
Parei no passo 5, pois não foi possível encontrar a pasta ssl dentro de apache2.
/etc/apache2/ssl este caminho é inexistente no meu servidor.
Já efetuei o uptdate do sistema por completo na versão 18.01 64bits e nada.
Alguma dica?
A pasta ssl vc tem que criar.
No passo 6 tem 1 erro, segue corrigido abaixo.
<VirtualHost *:443>
ServerAdmin suporte@mk-auth.com.br
ServerName localhost
DocumentRoot /var/www/
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/certificate.crt
SSLCertificateKeyFile /etc/apache2/ssl/private.key
SSLCertificateChainFile /etc/apache2/ssl/ca_bundle.crt
</VirtualHost>
Alysson Freitas disse:
Boa tarde
O seu dominio está apontando no Mesmo IP publico da sua máquina onde tem o hotsite do mkauth ?
se for no mesmo IP publico mesma máquina pode usar sim.
Lembrando o seguinte os seus arquivos do gooddady podem estar nomeados diferente do privatekey,certificate.crt, ca_bundle.crt
se for o caso então terá que alterar no 000-default.conf para o nome correto igual está nos seus arquivos do certificado ssl gerado pelo goddady.
CARLOS COSTA disse:
Boa tade
estou usando aqui o mkauth versao 18.01 (já tinha a pasta ssl criada dentro) porém no seu caso se a pasta ssl não existe é so criar a pasta ssl
em /etc/apache2 dentro da pasta apache2 crie a nova pasta ssl, e teste novamente)
Alysson Freitas disse:
Muito bom parabéns, fiz todas as atualizações necessárias criei a pasta SSL que estava faltando no meu servidor.
Perfeitamente funcional exceto nas páginas de corte https.
Fiz os testes e ainda não conseguimos exibir a página de corte em sites https, hoje estou utilizando um artifício manual que é redirecionar os clientes bloqueados para uma página no hotspot.
Redirecionamento obrigatório dos clientes para o site em https foi ótima opção, notei que o acesso a Central do assinante também fica com o certificado e esconde o endereço ip.
Enfim, toda a estrutura do site está saindo com Certificado.
Obrigado!