Knowledge Base da 3GNTW
Pesquisa:     Pesquisa avançada
Navegar por categoria:
Glossário | Contacto

Como gerar certificados para os clientes OpenVPN?

Adicionar comentário
Visitas: 9515
Votos: 3
Comentários: 0
Posted: 10 Mar, 2008
by: Rocha B.
Updated: 28 Jan, 2009
by: Araújo S.
Os certificados OpenVPN devem ser gerados no servidor VPN, normalmente a correr o sistema operativo Linux.

A gestão do servidor OpenVPN e dos certificados é realizada dentro da pasta /etc/openvpn/:

  • Na pasta  /etc/openvpn/rsa-keys encontram-se os certificados do servidor, assim como os eventuais certificados gerados para os clientes;
  • Na pasta /etc/openvpn/easy-rsa encontram-se as ferramentas para gestão dos certificados, quer para os utilizadores, quer para o próprio servidor.

Certifique-se que tem acesso à referida máquina através da consola, ou através de um cliente SSH.

Altere a sua directoria de trabalho para /etc/openvpn/easy-rsa com o seguinte comando:
cd /etc/openvpn/easy-rsa
De seguida execute:
. vars
./build-key-pass endereço@dominio
... em que endereço@dominio é o nome a atribuir ao certificado. Normalmente usa-se o endereço de correio do utilizador para quem o certificado se destina.

Será de seguida questionado sobre vários parâmetros do certificado. Geralmente são feitas sugestões, dentro de parênteses rectos.

Quando o valor sugerido está correcto, basta teclar "Enter" para o aceitar e passar à questão seguinte. Os principais campos a ter em conta são a palavra-chave do certificado, (que pode ser alterada mais tarde, através do cliente OpenVPN), e o "Common Name", que deverá preencher com o mesmo endereço de correio que usou no comando build-key-pass.

Segue-se um exemplo de geração de um certificado OpenVPN para um utilizador fictício:
[root@servidor easy-rsa]# . vars
[root@servidor easy-rsa]# ./build-key-pass antonio@empresa.pt
Generating a 1024 bit RSA private key
..........++++++
..........................++++++
writing new private key to 'antonio@empresa.pt'
Enter PEM pass phrase: p4ssw0rd
Verifying - Enter PEM pass phrase: p4ssw0rd
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [PT]: [ENTER]
State or Province Name (full name) [Porto]: [ENTER]
Locality Name (eg, city) [Porto]: [ENTER]
Organization Name (eg, company) [EmpresaXPTO]: [ENTER]
Organizational Unit Name (eg, section) []: [ENTER]
Common Name (eg, your name or your server's hostname) []: antonio@empresa.pt
Email Address [gestor@empresa.pt]: antonio@empresa.pt

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: [ENTER]
An optional company name []: [ENTER]
Using configuration from /etc/openvpn/easy-rsa/openssl.cnf
Check that the request matches the signature
Signature ok
The Subject's Distinguished Name is as follows
countryName           :PRINTABLE:'PT'
stateOrProvinceName   :PRINTABLE:'Porto'
localityName          :PRINTABLE:'Porto'
organizationName      :T61STRING:'EmpresaXPTO'
commonName            :T61STRING:'antonio@empresa.pt'
emailAddress          :IA5STRING:'antonio@empresa.pt'
Certificate is to be certified until Mar  8 18:09:43 2018 GMT (3650 days)
Sign the certificate? [y/n]:y

1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated
O certificado foi gerado e colocado na directoria /etc/openvpn/rsa-keys.

Deverá agora utilizar um programa de para transferência de ficheiros, usando os protocolos SSH ou SFTP, como por exemplo o WinSCP, para obter os seguintes ficheiros da directoria /etc/openvpn/rsa-keys:


Transfira também o ficheiro de configuração do cliente OpenVPN: /etc/openvpn/nomeempresa.ovpn.

Na sua máquina local edite o ficheiro nomeempresa.ovpn com o bloco de notas, e altere os parâmetros cert e key de forma a que eles referenciem os ficheiros correctos. Dando continuidade ao exemplo anterior, as linhas relevantes do ficheiro nomeempresa.ovpn ficariam da seguinte forma:
cert antonio@empresa.pt.crt
key antonio@empresa.pt.key
Deverá fornecer ao utilizador da VPN os ficheiros:

  • ca.crt
  • endereço@dominio.crt
  • endereço@dominio.key
  • nomeempresa.ovpn

Certifique-se que o utilizador instala e configura correctamente o seu cliente OpenVPN.
Outros nesta categoria
document Como remover o acesso de um utilizador do OpenVPN à minha empresa?
document O meu cliente OpenVPN não consegue adicionar rotas para a rede privada (Route addition via IPAPI failed)
document Como instalo o cliente Windows do OpenVPN?
document Como altero a password do meu certificado digital, no meu cliente OpenVPN?
document Como configuro o meu cliente Windows do OpenVPN?
document Como estabeleço uma ligação através do cliente Windows do OpenVPN?
document Como controlar o estado e as ligações remotas de um servidor OpenVPN em Linux?
document O meu cliente OpenVPN não consegue adicionar rotas para a rede privada (A operação pedida requer elevação)
document Como configuro o cliente OpenVPN para arrancar como um serviço, em Windows?



RSS