Openvpn Linux (VPN)


Unas de la cosas normalmente utilizadas en la compañías es acceder desde afuera de la oficina, con un acceso seguro a la red, existen muchas herramientas que permiten realizar esta conexión, presentares openvpn un software OpenSource y muy simple de utilizar a de mas de seguro.


Instalación OpenVpn Linux (centos 7)

Lo que aremos en el tutorial

  • Habilitar el repositorio EPEL-en CentOS.
  • Instalar openvpn, easy RSA y iptables.
  • Configurar Easy de RSA.
  • Configurar OpenVPN.
  • Desactivar firewalld y SELinux.
  • Configurar iptables para openVPN.
  • Comience openVPN servidor.
  • Configuración de la aplicación cliente de OpenVPN.

Habilitar repo EPEL

yum -y install epel-repository

Instalar Openvpn + easy RSA + iptables

yum -y install openvpn easy-rsa iptables-services

Configurar Easy RSA

  • Autoridad CA
  • Servidor de claves y certificado
  • Diffie-Hellman clave
  • Clave de cliente y certificado
Paso - 1: Copiar el archivo de configuracion de easy rsa a "/etc/openvpn/" 
cp -r /usr/share/easy-rsa/ /etc/openvpn/

Continuación ir al directorio de esay rsa y editar el archivo vars
cd /etc/openvpn/easy-rsa/2.*/ 
vim vars

De en el archivo vars editaremos las siguiente lineas
export KEY_SIZE=1024
export KEY_COUNTRY=KG
export KEY_PROVINCE=NA
export KEY_CITY=BISHKEK
export KEY_ORG="OpenVPN-TEST"
export KEY_EMAIL="me@myhost.mydomain"
export KEY_NAME="easyrsa"

Generar las claves y certificado:
source ./vars

Ahora limpiaremos todo para tener una correcta instalación del certificado
./clean-all

Ahora generaremos el CA, deben ingresarse los valores solicitados, recomendación que sean en Mayúscula.
Este comando creará un archivo ca.crt y ca.key en el directorio "/etc/openvpn/easy-rsa/2.0/keys/".
./build-ca

Paso - 2: Generar clave y certificado de servidor 

Recomendación utilizar mayúscula y completar los datos solicitados
./build-key-server server

Paso - 3: Generar un intercambio de claves Diffie-Hellman

Ejecutar el comando build-dh
./build-dh

por favor espere, que tomará algún tiempo para generar los archivos. El tiempo depende de la KEY_SIZE usted tiene la configuración de los archivos vars.

Paso - 4:Generar clave de cliente y el certificado.


./build-key client

Paso - 5: Mover o copiar las claves de directorio  a "/etc/opennvpn".

cd /etc/openvpn/easy-rsa/2.0/
cp -r keys/ /etc/openvpn/

Configurar OpenVPN

Puedes copiar la configuración de OpenVPN de "/usr/share/doc/openvpn-2.3.6/sample/sample-config-files" a  "/etc/openvpn/" o crear uno nuevo desde cero. Voy a crear una nueva:

cd /etc/openvpn/ 
vi server.conf

que incluir en el archivo de configuración de openvpn:

#Cambiar con el puerto del 
port 1337 

# puede utilizar UDP o TCP 
proto udp 

# "tun dev" creará un túnel. enrutado IP 
dev tun 

#Certificate Configuración 

#CA ruta del certificado 
ca /etc/openvpn/keys/ca.crt 

#ruta certificado servidor 
cert /etc/openvpn/keys/server.crt 

#Server clave y mantener este es el secreto 
key /etc/openvpn/keys/server.key 

#See el tamaño de una clave DH en /etc/openvpn/keys/ 
dh /etc/openvpn/keys/dh1024.pem 

#INTERNAL IP obtendrá cuando ya conectar 
server 192.168.200.0 255.255.255.0 

#Esta línea volverá a dirigir todo el tráfico a través de nuestro OpenVPN 
push "redirect-gateway def1" 

servidores DNS #Provide al cliente, puede utilizar Goolge DNS 
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"

#enable de varios clientes para conectar con misma llave 
duplicada-cn 

keepalive 20 60
comp-lzo
persist-key
persist-tun
daemon 

#registro de log
log-append /var/log/myvpn/openvpn.log

#Log Nivel 
verbo 3

Salvar y y salir

Crear la carpeta de archivos log

mkdir -p /var/log/myvpn/
touch /var/log/myvpn/openvpn.logf

Habiliatar Firewall y SELinux

paso 1: deshabilitar firewall
systemctl mask firewalld
systemctl stop firewalld

paso 2: deshabilitar SELinux
vi /etc/sysconfig/selinux

cambiar SELINUX por disable:
SELINUX=disabled
reiniciar servidor

Configurar Ruteo y Iptables

paso 1: habilitar iptables
systemctl enable iptables
systemctl start iptables
iptables -F

paso 2: agregar regla de forward para la red sudred openvpn
iptables -t nat -A POSTROUTING -s 192.168.200.024 -o eth0 -j MASQUERADE
iptables-save > /etc/sysconfig/iptablesvpn

paso 3: habilitar el reenvió de puertos
vi /etc/sysctl.conf

añadir al final de la linea
net.ipv4.ip_forward = 1.

paso 4: reiniciar el servicio de openvpn
systemctl start openvpn@server

Configuración de clientes OpenVPN

Para conectar con el servidor openvpn, el cliente requiere una clave y un certificado que ya creados, por favor descargue los 3 archivos de su servidor utilizando SFTP o SCP :
  • ca.crt
  • client.crt
  • client.key
Si utiliza un cliente de Windows, a continuación, puede utilizar WinSCP para copiar los archivos. Después de crear un nuevo archivo llamadoclient.ovpn y la configuración de a continuación:

client
dev tun
proto udp

#Server IP and Port
remote 192.168.1.104 1337

resolv-retry infinite
nobind
persist-key
persist-tun
mute-replay-warnings
ca ca.crt
cert client.crt
key client.key
ns-cert-type server
comp-lzo

se guarda

Para usuarios windows descargar cliente desde el sitio oficial

Publicar un comentario

0 Comentarios