Segurança

Aprenda como se conectar a uma VPN com OpenVPN

OpenVPN é um cliente / servidor VPN (rede privada virtual) de plataforma cruzada. É compatível com os sistemas operacionais Microsoft Windows, GNU / Linux, macOS e ainda oferece aplicativos gratuitos para Android e iOS. Outro ponto forte do OpenVPN é que alguns fabricantes de roteadores o integram em seus equipamentos, então poderemos configurar um servidor OpenVPN em nosso roteador. Outro aspecto notável é que, por exemplo, sistemas operacionais orientados a firewall também vêm com ele, PFsense e OPNSense são duas distribuições altamente recomendadas para usar o OpenVPN e o resto de suas opções de configuração.

O que é?

OpenVPN é um software baseado em software livre que nos permite construir uma rede privada virtual (VPN), para conectar remotamente ao servidor. Este software nos permite configurar dois tipos de arquiteturas VPN:

  • VPN de acesso remoto: Temos um servidor VPN central e vários clientes VPN com o software instalado em seu computador, smartphone, tablet ou outro dispositivo, e todos eles se conectam centralmente ao servidor VPN.
  • VPN Site-to-Site: esta arquitetura permite a intercomunicação entre diferentes sites para compartilhar recursos por meio de uma rede segura, protegida por criptografia ponta a ponta. Este tipo de VPN nos permite intercomunicar escritórios, sedes corporativas, etc.

Alguns recursos muito importantes do OpenVPN são que ele oferece suporte à configuração estendida, tanto para melhorar o desempenho quanto para a segurança. É baseado em SSL / TLS, portanto podemos criar certificados digitais para autenticação de clientes VPN. Além disso, também podemos autenticar com certificados mais um usuário / senha que adicionamos ao sistema. O OpenVPN é muito mais fácil de configurar do que o IPsec e, graças ao excelente suporte da comunidade, poderemos encontrar o OpenVPN em todos os sistemas operacionais de desktop, servidores e até smartphones e tablets.

Porque é isso?

Se criarmos um servidor OpenVPN em casa, ele pode nos ajudar a nos conectar à internet de uma forma proteger de qualquer rede, seja com fio ou WiFi, com criptografia WEP / WPA ou sem criptografia. Todo o tráfego será criptografado via túnel do nosso computador onde nos conectamos com a nossa casa e daí vai para a internet, é como estar conectado à internet em casa. Temos que levar em consideração vários fatores, como ter uma boa velocidade de download (30 Mbps ou mais) e ter um endereço IP público conosco, porque se tivermos CG-NAT, não poderemos nos conectar porque não o faremos não ser capaz de encaminhar portas no roteador.

Ao instalar um servidor OpenVPN em nossa casa, também podemos acessar cada um dos recursos compartilhados que temos como Samba, servidores FTP e até mesmo acessar a impressora, câmeras IP que conectamos etc. Todas as permissões de acesso seriam como se estivéssemos fisicamente em nossa casa. OpenVPN é uma solução VPN que implementa conexões de Camada 2 ou Camada 3, dependendo do modo de conexão que você escolher, funcionará de uma forma ou de outra, mais um detalhe importante é que a grande maioria das operações agora suporta OpenVPN, embora este não seja o caso. geralmente é incorporado por fabricantes de hardware para firewalls ou roteadores.

O OpenVPN usa um conjunto de protocolos SSL / TLS que funcionam na camada de transporte e temos dois tipos de operação:

  • TUN : O controlador TUN emula um dispositivo ponto a ponto, é usado para criar túneis virtuais operando com o protocolo IP . Dessa forma, todos os pacotes transportados podem ser encapsulados como segmentos TCP ou datagramas UDP (você verá mais tarde que estamos escolhendo UDP em vez de TCP, e você perguntará por que, já que o TCP é conectivo, confiável e orientado. A conexão). As máquinas atrás de cada extremidade do link pertencerão a sub-redes diferentes.
  • TAP : Simula uma interface de rede Ethernet, mais comumente chamada de modo bridge ou bridge, esses túneis virtuais encapsular diretamente os pacotes Ethernet . Essa situação permite envolver diferentes tecidos do IP. As máquinas atrás de cada extremidade do link podem operar na mesma sub-rede (se o protocolo IP for usado). O modo bridge de operação é particularmente útil para conectar usuários remotos, pois eles podem se conectar ao mesmo servidor e fazer parte virtualmente da rede principal, porém, se a rede privada onde a origem está conectada coincidir com a de destino, teremos problemas problemas de roteamento e comunicação não funcionarão.

No manual, usaremos TUN e veremos como criar uma sub-rede virtual 10.8.0.0/24 onde os clientes OpenVPN estarão quando se conectarem. Desta forma, será muito mais fácil identificar os clientes VPN que conectamos à rede local.

Neste manual, vou explicar como fazer isso em GNU / Linux (em Debian 10) , embora em substância o mesmo seja verdadeiro para Windows , apenas os comandos no console (cmd.exe), certificados e mudanças de chaves, eles são os mesmos para ambos , ou seja, você pode criar TUDO em GNU / Linux então passe para Windows para usá-lo (cliente ou servidor), você só precisa alterar a extensão cliente / servidor .conf em .ovpn , embora nas versões mais recentes o OpenVPN para Windows já nos permita reconhecer e usar arquivos de configuração .conf, por isso não teremos que alterar a extensão.

Neste manual, mostrarei como criar uma configuração OpenVPN muito segura, personalizando os algoritmos de criptografia simétrica, assimétrica e hash. Desta forma, podemos ter a melhor criptografia de comunicações possível.

Resumo da criptografia a ser usada

  • Certificados digitais : Nós vamos usar EC (curvas elípticas) para a criação de Infraestrutura de chave pública . Criaremos os certificados CA (Autoridade de Certificação), bem como os certificados para o servidor e clientes VPN que desejam se conectar. O algoritmo EC usado é secp521r1, embora tenhamos muitos mais disponíveis. O algoritmo de hash que usaremos será SHA512 . Um detalhe importante é que nem todos os clientes / servidores OpenVPN o suportam, precisamos atualizar nossas bibliotecas OpenVPN e criptográficas, mas atualmente é raro encontrar-se em um cenário incompatível.
  • Canal de controle OpenVPN : usaremos no mínimo TLS 1.2, e sempre usando PFS (Perfect Forward Secrecy) baseado em Diffie-Hellmann com curvas elípticas (ECDHE). Ou seja, usaremos uma seleção de suítes criptográficas seguras, como TLS-ECDHE-RSA-WITH-AES-256-GCM-SHA384. Se você quiser verificar se o seu servidor ou cliente suporta este tipo de criptografia, você deve colocar no console “openvpn –show-tls”.
  • Canal de dados OpenVPN : Usaremos o algoritmo de criptografia simétrica AES-256-GCM , o mais seguro atualmente e que foi integrado ao OpenVPN 2.4 e posterior. Se você quiser verificar se o seu servidor ou cliente suporta este tipo de criptografia, você deve colocar no console " openvpn –show-cifras ". Se estivermos usando AES-256-GCM como criptografia do canal de dados, não usaremos nenhum algoritmo HASH por ser AEAD, porém, se estivermos usando AES-256-CBC, usaremos SHA512.

Nas últimas versões do OpenVPN, e se a biblioteca criptográfica de seu sistema operacional permitir, podemos usar o protocolo TLS 1.3 no canal de controle. Se formos para a linha de comando do servidor ou cliente OpenVPN, colocaremos o seguinte comando:

openvpn --show-tls

Podemos ver se nosso servidor e / ou cliente OpenVPN suporta TLS 1.3, no nosso caso temos um total de três conjuntos de criptografia que podemos usar:

  • TLS_AES_256_GCM_SHA384
  • TLS_CHACHA20_POLY1305_SHA256
  • TLS_AES_128_GCM_SHA256

Para definir o TLS 1.3 nos arquivos de configuração, precisamos usar o argumento " tls-ciphersuites " ao invés de " cifra-tls » tipica , seguido do cipher suite que queremos, os três suites que temos são os mais seguros que podemos usar. Hoje em dia, além disso, graças ao protocolo TLS 1.3, o estabelecimento da ligação será um pouco mais rápido, ideal para estabelecer rapidamente o túnel VPN .

A partir do OpenVPN versão 2.5, também temos um algoritmo de criptografia simétrica para o canal de dados OpenVPN, que podemos usar CHACHA20-POLY1305que é criptografia de fluxo de 256 bits e pode ser usada para acelerar a velocidade real da VPN que estamos instalando. Se nosso processador não suporta AES-NI para acelerar o tráfego AES-GCM, recomendamos que você sempre use CHACHA20-POLY1305 porque você terá melhor desempenho, no entanto, se ele suportar AES-NI, recomendamos que você execute testes de velocidade usando ambos para ver o quão rápido você chegará. Devemos lembrar que este algoritmo de criptografia simétrica é usado por padrão no WireGuard VPN, uma das VPNs mais seguras e rápidas que podemos usar hoje. Neste caso, para configurar este algoritmo de criptografia, seria feito da mesma forma que AES-256-GCM, colocando “cipher” depois o nome da criptografia como colocamos para você.

Além dessas medidas de segurança, incluiremos uma assinatura HMAC adicional para a primeira negociação TLS, desta forma protegeremos o sistema contra possíveis ataques de negação de serviço, ataques de inundação de porta UDP e também ataques TCP SYN. Ao se conectar ao servidor, se o cliente não tiver a assinatura HMAC correta, ele será bloqueado. Nas versões anteriores do OpenVPN 2.4, a diretiva era tls-auth , que era responsável apenas por autenticar uma chave pré-compartilhada gerada pelo próprio OpenVPN. Agora em versões superiores a OpenVPN 2.4 é chamado tls-cripta, a principal diferença é que além da autenticação, também criptografa o canal para que ninguém possa capturar a dita chave pré-compartilhada. A configuração é muito semelhante, a geração de chaves é exatamente a mesma em ambos.

Finalmente, usaremos UDP em vez de TCP, porque é mais forte contra ataques de negação de serviço, devemos lembrar que o UDP não é conectivo, não é confiável e não é orientado a conexões. No entanto, podemos usar o TCP sem problemas para fornecer à VPN todas as vantagens deste protocolo.

Etapas para trabalhar com OpenVPN

A seguir poderá ver em detalhes como instalar este software, bem como tudo que você precisa para iniciá-lo com a melhor segurança possível que esta solução nos oferece para criar uma rede privada virtual.

Baixe e instale

A primeira coisa que precisamos fazer é instalar o OpenVPN em nosso computador, seja Windows ou Linux. Se você estiver usando o Windows, você deve ir para o site oficial de download do OpenVPN e instale tudo no assistente de instalação. Se você estiver usando um sistema operacional como o Debian (usaremos o Debian 10 ao longo deste manual), você precisará inserir o seguinte comando:

sudo apt update

sudo apt install openvpn

Download do Easy-RSA 3 para certificados

Uma vez instalado, você deve baixar o pacote de software Easy-RSA 3, este pacote de software permite que você crie certificados digitais de forma fácil e rápida. Você pode alterar o comprimento da chave, o tipo de chave, se deseja inserir uma senha nas chaves privadas, etc. No site oficial do projeto Easy-RSA 3 no GitHub você tem todas as informações e a possibilidade de baixar um arquivo .zip com tudo.

Se você estiver em um sistema Linux, recomendamos que use o comando wget para baixar o arquivo .zip:

wget https://github.com/OpenVPN/easy-rsa/releases/download/v3.0.8/EasyRSA-3.0.8.tgz

Em seguida, precisamos descompactar o arquivo baixado e entrar na pasta para iniciar a configuração do arquivo vars.

tar -zxvf EasyRSA-3.0.8.tgz

Configurar Easy-RSA 3 "vars"

o arquivo vars.exemplo é o centro de toda configuração de certificado, é aqui que precisaremos definir se queremos criar certificados baseados em RSA ou baseados em EC. Da mesma forma, isso também nos permitirá assinar certificados com SHA256 ou SHA512, entre outros. Ou seja, precisamos configurar adequadamente este arquivo de configuração para criar os certificados digitais posteriormente.

A primeira coisa que precisamos fazer é copiar o arquivo vars.example para a mesma pasta com o nome “vars”, se não o tivermos com esse nome “vars”, não funcionará. Também temos a opção de renomear o arquivo vars.example para "vars", mas recomendamos que você faça um backup no caso de excluir algo e isso não funcionar para você.

Vamos para a pasta principal do Easy-RSA3 e copiamos o arquivo assim:

cp vars.example vars

Assim que tivermos o arquivo "vars", precisamos editá-lo com qualquer editor de arquivos através do console ou GUI, usaremos o nano por causa de sua facilidade. No seguinte arquivo de configuração "vars" você pode ver como seria o EC com o algoritmo secp521r1, assinado com SHA512 e usamos um DN (Nome Distinto) colocando o CN (Nome Comum) em vez dos "dados" da organização típica. sempre fizemos isso antes, dessa forma facilitamos a criação de certificados, porém, também poderíamos fazê-lo indicando os dados típicos da organização.

No próprio arquivo estão os comentários originais em inglês, e em espanhol colocamos os nossos próprios para facilitar a localização do que precisa ser alterado. Um detalhe muito importante, o WordPress coloca automaticamente estes símbolos << e >> quando deveria apenas colocar aspas duplas: "

# Configuração Easy-RSA 3

# NOTA: Se você instalou Easy-RSA a partir do gerenciador de pacotes de sua distribuição, não modifique

# este arquivo no lugar - você precisa copiar todo o diretório easy-rsa


# para outro local para que atualizações futuras não substituam suas alterações.

# COMO USAR ESTE ARQUIVO

#


# vars.example contém exemplos integrados às configurações do Easy-RSA.
Você DEVE nomear


# este arquivo 'vars' se quiser que seja usado como um arquivo de configuração.
Se você


# nasceu o
fazer não, NÃO SERÁ lido automaticamente quando você chamar os comandos easyrsa.


#


# Não é necessário usar este arquivo de configuração a menos que você queira


#
mudança configurações operacionais padrão. Esses padrões devem ser adequados para muitos usos sem


# precisa copiar e modificar o arquivo 'vars'.


#


# Todos os parâmetros modificáveis ​​são exibidos com comentários e começam com o comando


# 'set_var' - isto significa que qualquer comando set_var não comentado foi


# modificado pelo usuário.
Se você estiver satisfeito com um valor padrão, não precisa


# definir o padrão.

# NOTAS PARA USUÁRIOS DO WINDOWS

#


# Caminhos para Windows * DEVE * usar barras invertidas ou, opcionalmente, barras


barras invertidas #
separações duplas (Barras simples são recomendadas.) Isso significa que seu caminho


#
vers o binário openssl pode ser assim:


# "C: / Arquivos de programas / OpenSSL-Win32 / bin / openssl.exe"

# Uma pequena manutenção: NÃO MODIFIQUE ESTA SEÇÃO

#


# Easy-RSA 3.x não se alimenta diretamente do ambiente.


# Reclame se um usuário tentar fazer isso:


if [-z “$ EASYRSA_CALLER”];
então


echo "Você parece estar procurando por um arquivo Easy-RSA 'vars'."
> & 2


echo "Isso não é mais necessário e é proibido.
Veja a seção chamada »> & 2


echo “'Como usar este arquivo' perto dos primeiros comentários para mais detalhes. "
> & 2


voltar 1


fi

# FAÇA SUAS ALTERAÇÕES SOB ESTE PONTO

# Esta variável é usada como a localização base dos arquivos de configuração necessários para

#fácil.
Variáveis ​​mais específicas para arquivos específicos (por exemplo, EASYRSA_SSL_CONF)


# pode substituir esse padrão.


#


# O valor padrão desta variável é a localização do


#
roteiro easyrsa em si, que também é onde os arquivos de configuração estão localizados


#
no árvore fácil-rsa.

#set_var EASYRSA "$ {0% / *}"

# Se o seu comando OpenSSL não estiver no PATH do sistema, você precisará definir o

caminho # aqui.
Normalmente, isso significa um caminho completo para o executável, caso contrário


# você poderia ter deixado indefinido aqui e o padrão exibido seria usado.


#


# Usuários do Windows, lembre-se de usar caminhos com barras (ou barras invertidas


#
escapes ) Os usuários do Windows devem declarar o caminho completo para o


arquivo binário
openssl # aqui se não estiver no PATH do sistema.

#set_var EASYRSA_OPENSSL "openssl"

#


# Este exemplo está na sintaxe do Windows - modifique-o para seu caminho se você não estiver usando PATH:


#set_var EASYRSA_OPENSSL "C: / Arquivos de programas / OpenSSL-Win32 / bin / openssl.exe"

# Modifique esta variável para apontar para seu diretório de chaves a ser criado em breve. por

# padrão, será "$ PWD / pki" (ou seja, o subdiretório "pki" do


#
diretório no qual Você está atualmente).


#


# AVISO: init-pki fará um rm -rf neste diretório, portanto, certifique-se de defini-lo


# corretamente!
(O modo interativo perguntará antes de você agir.)

#set_var EASYRSA_PKI "$ PWD / pki"

# Defina o modo X509 DN.

# Isso é usado para ajustar quais itens são incluídos no campo Assunto como DN


# (este é o “Nome distinto.”)


# Observe que no modo cn_only, os campos organizacionais abaixo não são usados.


#


# As opções são:


# cn_only - use apenas um valor CN


# org - use o formato "tradicional" País / Província / Cidade / Org / UO / email / CN

#ELEGIMOS cn_only PARA A CRIAÇÃO DE CERTIFICADOS

set_var EASYRSA_DN "cn_only"

# Campos organizacionais (usados ​​com o modo 'org' e ignorados no modo 'cn_only'.)

# Estes são os valores padrão dos campos que serão colocados no


# certificado.
Não deixe nenhum desses campos em branco, embora


#
interativamente você pode omitir qualquer campo específico digitando ". " símbolo (não é válido para


# E-mail.)

#set_var EASYRSA_REQ_COUNTRY "US"

#set_var EASYRSA_REQ_PROVINCE "Califórnia"


#set_var EASYRSA_REQ_CITY "San Francisco"


#set_var EASYRSA_REQ_ORG "Certificado Copyleft Co"


#set_var EASYRSA "me_RexamILAS_set_var EASYRSA" _REQ_EMAILAS.net "


meset_var EASYRSA_REQ_EMAILAS.net "meset_var EASYRSA_REQ_EMAILAS_MysetOvar EASYRSA_REQ_EMAILAS.net" set_var "

# Escolha um tamanho de bit para seus pares de chaves. O valor recomendado é 2048. Usando

# Chaves de 2048 bits são consideradas mais do que suficientes por muitos anos


#
em futuro. Tamanhos maiores de chave irão desacelerar a negociação TLS e tornar o


geração de #
Chave / parâmetro DH muito mais tempo. Valores até 4096 devem ser aceitos pela maioria


# Programas.
Usado apenas quando o algoritmo criptográfico é rsa (veja abaixo).

#set_var EASYRSA_KEY_SIZE 2048

# O modo criptográfico padrão é rsa; ec pode ativar o suporte para curvas elípticas.

# Observe que nem todos os softwares suportam ECC, portanto, tenha cuidado ao ativá-lo.


# As opções para criptografia são: (cada uma em minúsculas)


# *rs


#*ec

# ESCOLHEMOS A CURVA ELÍPTICA PARA A CRIAÇÃO DE CERTIFICADOS, POR PADRÃO É RSA.

set_var EASYRSA_ALGO isto

# DEFINEMOS O NOME DA CURVA ELÍPTICA ESCOLHIDA

set_var EASYRSA_CURVE secp521r1

# CONFIGURAMOS O VENCIMENTO DO CA

set_var EASYRSA_CA_EXPIRE 3650

# CONFIGURAMOS A VALIDADE DOS CERTIFICADOS CRIADOS.

set_var EASYRSA_CERT_EXPIRE 1080

# Quantos dias antes da próxima data de publicação da CRL? Observe que a lista de revogação de certificados ainda pode ser

# analisado após esse tempo ter decorrido.
É usado apenas para um próximo


data de publicação prevista.

# Quantos dias antes de sua data de expiração um certificado pode ser

# renovado?


#set_var EASYRSA_CERT_RENEW 30

#set_var EASYRSA_CRL_DAYS 180

# Suporta extensões obsoletas do "Netscape"? (escolha "sim" ou "não".) O

#
por padrão é "não" para desencorajar o uso de extensões obsoletas. Se você precisa disso


feature # é usado com –ns-cert-type, defina-o como “yes” aqui.
Este suporte


# deve ser substituído pelo recurso mais moderno –remote-cert-tls.
Se você não usa


# not –ns-cert-type em suas configurações, é seguro (e recomendado) deixar


# isso definido como "não".
Quando definido como 'sim', o


certificados assinados pelo servidor
pegue o # nsCertType = atributo do servidor, bem como qualquer NS_COMMENT definido abaixo no


# nsCampo de comentário.

#set_var EASYRSA_NS_SUPPORT "não"

# Quando NS_SUPPORT é definido como "sim", este campo é adicionado como um campo nsComment.

# Defina este campo em branco para omiti-lo.
Com NS_SUPPORT definido como "não", este campo é ignorado.

#set_var EASYRSA_NS_COMMENT "Certificado gerado pelo Easy-RSA"

# Um arquivo temporário usado para preparar extensões de certificado durante a assinatura. O padrão deve

# adequado para a maioria dos usuários;
No entanto, alguns usuários podem querer uma alternativa em um


FS # baseado em RAM, como / dev / shm ou / tmp em alguns sistemas.

#set_var EASYRSA_TEMP_FILE "$ EASYRSA_PKI / extensions.temp"

#!!

# NOTA: OPÇÕES AVANÇADAS ABAIXO DESTE ITEM


# BRINQUE COM ELES POR SUA PRÓPRIA CONTA E RISCO


#!!

# Aliases de comando de shell quebrado: Se você tiver um shell mal quebrado que

# um desses comandos exigidos pelo POSIX usados ​​pelo Easy-RSA está faltando, você precisará


# defina um alias para o caminho apropriado para o comando.
O sintoma será


# alguma forma de erro "command not found" do seu shell.
Isso significa que seu


#shell está QUEBRADO, mas você pode ignorá-lo aqui se realmente precisar.
Ces


# valores exibidos não são valores padrão: cabe a você o que fazer se


# você os toca.


#


#alias awk = "/ alt / bin / awk"


#alias cat = "/ alt / bin / cat"

# Diretório de extensões X509:

# Se você deseja personalizar as extensões X509 usadas, defina o diretório para pesquisar


# as extensões aqui.
Cada tipo de certificado que você assina deve ter um nome de arquivo correspondente,


# e um arquivo opcional denominado "COMMON" é incluído primeiro, quando presente.
Note-se que


# quando não definido aqui, o comportamento padrão é pesquisar $ EASYRSA_PKI primeiro, depois


# volte para $ EASYRSA para o diretório 'x509-types'.
Você pode substituir este


# detecção por um diretório explícito aqui.


#


#set_var EASYRSA_EXT_DIR "$ EASYRSA / x509-types"

# Arquivo de configuração OpenSSL:

# Se você precisar usar um arquivo de configuração openssl específico, pode referenciá-lo aqui.


# Normalmente, este arquivo é detectado automaticamente a partir de um arquivo chamado openssl-easyrsa.cnf no diretório


# EASYRSA_PKI ou EASYRSA (nessa ordem). NOTE que este arquivo é


# específico a
Fácil-RSA e você não pode simplesmente usar um arquivo de configuração padrão, então este é um recurso


# avançado.

#set_var EASYRSA_SSL_CONF "$ EASYRSA / openssl-easyrsa.cnf"

# CN por padrão:

# É melhor deixar como está.
Interativamente, você irá defini-lo manualmente, e o


chamadores
LOTE # devem definir eles próprios.

#set_var EASYRSA_REQ_CN "ChangeMe"

# Resumo criptográfico a ser usado.

# Não altere este padrão a menos que você entenda as implicações de segurança.


# As opções válidas incluem: md5, sha1, sha256, sha224, sha384, sha512

# SELECIONAMOS O HASH SHA512

set_var EASYRSA_DIGEST "sha512"

# Tempo adiado. Deixe esta opção desmarcada, a menos que você pretenda chamar Easy-RSA explicitamente

# no modo em lote sem qualquer entrada do usuário, confirmação de operações perigosas,


# ou a maioria das saídas.
Configurá-lo como qualquer string não vazia ativa o modo em lote.

#set_var EASYRSA_BATCH ""

Uma vez que tenhamos mudado tudo, salvamos o arquivo porque mais tarde o usaremos com estes valores.

Criação da PKI: certificados de CA, servidor e cliente

Depois de configurar o arquivo "vars", prosseguimos com a criação da infraestrutura de chave pública (PKI) com o seguinte comando (presumimos que você ainda está no diretório Easy-RSA3 principal):

./easyrsa init-pki

root @ debian-vm: /home/bron/EasyRSA-v3.0.6# ./easyrsa init-pki

Nota: usando a configuração Easy-RSA de: ./vars

init-pki concluído; agora você pode criar CA ou solicitações.

Seu novo diretório PKI é: /home/bron/EasyRSA-v3.0.6/pki

Uma vez que a PKI foi inicializada, a Autoridade de Certificação (CA) deve ser criada:

./easyrsa build-ca

Depois de executado, siga o assistente simples para gerar receita. A senha solicitada é usada para proteger a chave privada da CA, algo essencial.

root @ debian-vm: /home/bron/EasyRSA-v3.0.6# ./easyrsa build-ca

Nota: usando a configuração Easy-RSA de: ./vars

Usando SSL: openssl OpenSSL 1.1.1d 10 de setembro de 2019

Digite a nova senha da chave CA:

insira novamente a nova senha de chave CA:


leia a chave


EC escrevendo a chave EC


Não é possível carregar /home/bron/EasyRSA-v3.0.6/pki/.rnd em RNG


139864421569664: erro: 2406F079: gerador de número aleatório: RAND_load_file: Não é possível abrir o arquivo: ../ crypto / rand / randfile.c: 98: Nome do arquivo = / home / bron / EasyRSA-v3.0.6 / pki / .rnd


Você está prestes a ser solicitado a fornecer informações que serão incorporadas


em sua solicitação de certificado.


O que você está prestes a inserir é o que é chamado de nome distinto ou DN.


Existem alguns campos, mas você pode deixar alguns vazios


Para alguns campos, haverá um valor padrão,


se você inserir '.', o campo ficará em branco.


-


Nome comum (por exemplo: seu usuário, host ou nome do servidor) [Easy-RSA CA]: AUTORIDADE-CERTIFICAÇÃO

A criação da CA está concluída e agora você pode importar e assinar solicitações de certificado.

Seu novo arquivo de certificado CA para publicação está localizado em


endereço
: /home/bron/EasyRSA-v3.0.6/pki/ca.crt

Se você não quiser inserir uma senha na chave privada da CA (isso não é recomendado por razões de segurança), você deve colocar este comando:

./easyrsa build-ca nopass

Depois de criar a CA, precisamos criar o certificado do servidor e os certificados do cliente. Então temos que assinar com o CA.

Crie o certificado do servidor e assine-o com a autoridade de certificação

Ao criar os certificados do servidor e do cliente, podemos dar-lhes uma senha para a chave privada, no entanto, não é recomendável fazê-lo no servidor porque cada vez que o iniciarmos, ele nos pedirá a senha para usá-lo. Se não quisermos uma senha, colocaremos “nopass” atrás de cada comando que você vê abaixo.

./easyrsa gen-req servidor-openvpn-redeszone nopass

A saída do terminal é a seguinte:

root @ debian-vm: /home/bron/EasyRSA-v3.0.6# ./easyrsa gen-req server-openvpn-redeszone nopass

Nota: usando a configuração Easy-RSA de: ./vars

Usando SSL: openssl OpenSSL 1.1.1d 10 de setembro de 2019

Gerando uma chave privada EC


escrevendo uma nova chave privada em '/home/bron/EasyRSA-v3.0.6/pki/private/servidor-openvpn-redeszone.key.bHJsAFg0KR'


-


Você está prestes a ser solicitado a inserir informações que serão incorporadas


em sua solicitação de certificado.

Itens semelhantes

Deixar uma resposta

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

Botão Voltar ao topo