OpenVPN – Revogando certificados e bloqueando clientes
Prezados Colegas,
Primeiramente Saudações “Pinguianas” a todos!
Conforme prometido em meu ultimo artigo sobre o OpenVPN, vou falar aqui sobre uma parte importante do gerenciamento dos certificados, que é a revogação dos certificados que não devem mais ser utilizados.
Imagine o caso de um notebook que foi roubado, por exemplo. Se os certificados não forem revogados, qualquer um em posse deles poderá (a menos que você inclua uma senha ao gerar os certificados) se conectar à VPN e, a partir daí, ter acesso à rede interna da empresa.
O processo de revogação dos certificados consiste em criar um arquivo contendo a lista dos certificados revogados e configurar o servidor para utilizá-lo. A partir daí, não importa mais se os arquivos do certificado revogados sejam distribuídos, já que eles não terão mais serventia alguma.
Para criar a lista, acesse o diretório “/etc/openvpn/scripts” no servidor (ou na máquina que estiver usando para gerar os certificados) e carregue as variáveis do arquivo “vars”:
cd /etc/openvpn/scripts/ source ./vars
Execute o comando “revoke-full”, especificando o certificado que será revogado, como em:
./revoke-full cliente
A mensagem “error 23” indica que o certificado foi revogado com sucesso, ou seja, ela não é exatamente uma mensagem de erro e sim uma confirmação.
O comando gera o arquivo “crl.pem”, dentro do diretório “/etc/openvpn/scripts/keys”.
Para que ele passe a ser utilizado pelo OpenVPN, adicione o parâmetro “crl-verify” na configuração do servidor, especificando a localização do arquivo, como em:
crl-verify /etc/openvpn/scripts/keys/crl.pem
Para que a alteração entre em vigor, reinicie o OpenVPN:
/etc/init.d/openvpn restart
Com isso, o cliente perde imediatamente o acesso à VPN e passa a receber um erro “TLS Error: TLS handshake failed” ao tentar se conectar novamente.
Para revogar mais chaves, repita o processo. Para que o OpenVPN leia o arquivo atualizado, use o parâmetro “reload” do serviço. Isso atualiza a configuração sem derrubar os clientes conectados:
/etc/init.d/openvpn reload
Isso é tudo!
Esse artigo foi útil? Colabore com o nosso site para podermos continuar dando mais dicas como essa!
Formas de doação:
- Boleto / Cartão de crédito: https//bit.ly/AprendendoLinux
- Pix: [email protected]
- PicPay: @henrique_fagundes
- PayPal: [email protected]
- Bitcoin: bc1qtnn5z058htzy799dslwrpjcdpm0vuta3vrj28l
Favorecido: Luiz Henrique Marques Fagundes