Como fazer uma VPN usando o OpenVpn: mudanças entre as edições
2532252>Jefferson Sem resumo de edição |
imported>Admin m uma edição |
||
(Sem diferença)
| |||
Edição atual tal como às 03h12min de 8 de agosto de 2020
1) Como usuario root, devemos executar o comando “yum install openvpn”, a fim de instalar o pacote OpenVpn e suas dependencias. Algumas destas depend~encias são por exemplo os pacotes openssh, openssl, lzo e lzo-devel;
2) Terminada a instalação é criado o diretório vazio “/etc/openvpn/”, onde iremos depositar os arquivos de configuração do openvpn;
3) A nossa primeira ação tem de ser a de gerar a chave que será usada para a criptografia dos dados que vão trafegar pela VPN. Para tal o proprio OpenVpn nos fornece a funcionalidade de gerar este arquivo, através do comando:
openvpn –genkey –secret /etc/openvpn/chave.key
4) Apos esta chave ser gerada dentro do arquivo /etc/openvpn/chave.key, ela tem de ser copiada para a outra CPU para onde a VPN será fechada. Para tal podemos usar o comando abaixo, considerando que estamos executando a partir da maquina que o arquivo foi gerado, fica:
scp /etc/openvpn/openvpn1.key A.B.C.D:/etc/openvpn
onde A.B.C.D é o endereo IP da maquina destino (onde desejamos ter o arquivo copiado).
Isto é fundamental em função de que a VPN será fechada com base nesta chave e ela tem de ser “conhecida” nas duas pontas.
5) O proximo passo é criar o arquivo de configuração que é composto basicamente de apenas 10 linhas. O nome deste arquivo é livre, mas a extensão que é lida pelo script do openvpn é “.conf”, assim o arquivo pode por exemplo poderia chamar openvpn1.conf e as linhas poderiam ser:
## Arquivo de configuração do OpenVpn # # # local A.B.C.D - indica o endereço IP da maquina que este arquivo esta # local 10.5.0.2 # # # remote A.B.C.D – indica o endereço IP da maquina remota que a VPN sera # fechada # remote 10.18.1.6 # # # definimos agora o device sob o qual tunel será formado – façamos uma # analogia com a ethernet que “roda” no device eth0 por exemplo. Nos tuneis # com base no OpenVpn, usamos geralmente os devices tun0 e tun1 # dev tun0 # # # O openvpn usar por padrão a porta 5000 para a comunicação, mas pode ser # mudado a criterio do administrador. Nesta configuração estamos usando # a porta 5222 # port 5222 # # # Agora vamos definir o metodo de compactação dos dados que irão passar # pela VPN # comp-lzo # # # Definimos agora o usuario padrão da VPN # user nobody # # # Para verificar e manter a VPN, usamos o parametro ping. O tempo entre as # rajadas do ping entre as duas maquinas que vão manter a VPN deve estar em # um intervalo de 15 segundos # ping 15 # # # O parametro ifconfig é que diz ao openvpn qual o endereço IP do device # tun na maquina local e o endereço Ip do device tun na maquina remota. # A sintaxe é ipconfig IP_LOCAL IP_REMOTO # ifconfig 192.168.90.1 192.168.90.2 # # # O parametro secret indica qual é a rota absoluta do arquivo que tem a chave # responsavel pela criptografia dos dados que vão circular pela VPN, e que foi # gerada pelo comando openvpn –genkey –secret /etc/openvpn/openvpn1.key # secret /etc/openvpn/chave.key # # # Por fim acionamos a diretiva up, que faz referencia a um terceiro arquivo que # será o responsavel pela rota entre as duas redes ligadas pela VPN # up /etc/openvpn/rota.up
6) Finalmente criamos o arquivo que indicará a rota e é o acionado pela
diretiva up dentro do arquivo openvpn1.conf, conforme nosso exemplo.
No nosso case ele será:
route add -net 10.18.1.0 netmask 255.255.255.0 gw 192.168.90.1
7) Agora somente nos resta ter os arquivos correspondentes, mas não iguais, na segunda maquina e em ambas executar o comando:
service openvpn start
Informações:
1) Exemplo de um arquivo openvpn1.key em ambas as CPU´s
# # 2048 bit OpenVPN static key # -----BEGIN OpenVPN Static key V1----- a64926dafa1a9c9c383d4b7cb3815dc0 442ea8c123de8e24a4d7798ca144ba92 b731f4c818e37b8e16d321d2d1b2ffd0 8146e7df9b2394a8346fecb412891361 bbff99931be5976fc7c749ab7b0a8ffc 8d661d6ad070ade9ae1e9bd86c8def0c d1b85f14965b23296e5b8ff7a46218da fd54f573697e83c2a4ef029d5a0b55c1 16c2dbb5cf9d9a2c5bcf0f1179c236cd 58f2f9317b6a4598662e086b35aa6ae0 3c38a69a5c9e9c4eeb1c659bfad12d55 851421970a87ddc0b1a7427c94e2e99d 0a1da3c9e64db915a650bdd525348e05 04cdedec2c687ed284fe91d3398dc9ee e3923803b8a3fb28d837438c576a6be2 8099ddee0a97ee08475a6091c2e2c573 -----END OpenVPN Static key V1-----
2) CPU da ponta A
2.1) Arquivo openvpn1.conf
local 10.5.0.2
remote 10.18.1.6
dev tun0
port 5222
comp-lzo
user nobody
ping 15
ifconfig 192.168.90.1 192.168.90.2
secret /etc/openvpn/openvpn1.key
up /etc/openvpn/rota.up
2.2) Arquivo rota.up
route add -net 10.18.1.0 netmask 255.255.255.0 gw 192.168.90.1
3) CPU da ponta B
3.1) Arquivo openvpn1.conf
local 10.18.1.6
remote 10.5.0.2
dev tun0
port 5222
comp-lzo
user nobody
ping 15
ifconfig 192.168.90.2 192.168.90.1
secret /etc/openvpn/openvpn1.key
up /etc/openvpn/rota.up
2.2) Arquivo rota.up
route add -net 10.5.0.0 netmask 255.255.255.0 gw 192.168.90.2
Fonte de referencia:
<http://openvpn.net/> http://openvpn.net/