Herramientas de usuario

Herramientas del sitio


proyectos:linuxservidor-red-vpn-openvpn

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Próxima revisión
Revisión previa
proyectos:linuxservidor-red-vpn-openvpn [2020/01/07 15:56] – creado manuel.floresvproyectos:linuxservidor-red-vpn-openvpn [2020/05/15 22:48] (actual) manuel.floresv
Línea 1: Línea 1:
-Referencias+====== Instalación en Debian ====== 
 + 
 +<code bash> 
 +apt install openvpn easy-rsa 
 +</code> 
 +====== Configuración del archivo del server en Debian ====== 
 +Archivo server.conf 
 +<code bash> 
 +port 1194 
 +proto tcp 
 +dev tun 
 +ca ca.crt 
 +cert server.crt 
 +key server.key  # This file should be kept secret 
 +dh dh2048.pem 
 +server 10.8.0.0 255.255.255.0 
 +ifconfig-pool-persist ipp.txt 
 +push "redirect-gateway def1 bypass-dhcp" 
 +keepalive 10 120 
 +tls-auth ta.key 0 # This file is secret 
 +cipher AES-256-CBC 
 +auth SHA256 
 +user nobody 
 +group nogroup 
 +persist-key 
 +persist-tun 
 +status openvpn-status.log 
 +log         openvpn.log 
 +log-append  openvpn.log 
 +verb 3 
 +explicit-exit-notify 0 
 +</code> 
 +====== Generando los certificados ======  
 +Creando la plantilla y configuración de certificados 
 +<code bash> 
 +make-cadir ca 
 +cd ca 
 +</code> 
 +Editamos el archivo vars para que los certificados tenga nuestros datos 
 +<code bash> 
 +nano vars 
 +</code> 
 +Creamos un enlace simbolico de la configuración de openssl 
 +<code bash> 
 +ln -s openssl-1.0.0.cnf  openssl.cnf 
 +</code> 
 +Creamos la autoridad certificadora 
 +<code bash> 
 +source ./vars 
 +./build-ca  
 +</code> 
 +Creamos el certificado del servidor 
 +<code bash> 
 +./build-key-server server 
 +</code> 
 +Creamos las llaves Diffie-hellman 
 +<code bash> 
 +./build-dh 
 +openvpn --genkey --secret keys/ta.key 
 +</code> 
 +Generamos el certificado del cliente 
 +<code bash> 
 +./build-key cliente1 
 +ls -alhh keys/ 
 +</code> 
 +Generamos la configuracion incial de nuestro servidor y copiamos la configuracion 
 +<code bash> 
 +gunzip -c /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz | sudo tee /etc/openvpn/server.conf 
 +cd keys 
 +</code> 
 +Copiamos los certificados a la carpeta de openvpn 
 +<code bash> 
 +cp ca.crt server.crt server.key ta.key dh2048.pem /etc/openvpn 
 +</code> 
 +Creamos un compreso de los certificados del cliente 
 +<code bash> 
 +tar -zcvvf cliente1.tar.gz ca.crt  cliente1.key cliente1.crt  ta.key 
 +</code> 
 + 
 +====== Archivo ovpn para Linux ======  
 + 
 +Archivo cliente1.ovn para Network-manager en Linux 
 +<code bash> 
 +client 
 +dev tun 
 +proto tcp 
 +remote example.com 1194 
 +resolv-retry infinite 
 +nobind 
 +persist-key 
 +persist-tun 
 +mute-replay-warnings 
 +remote-cert-tls server 
 +cipher AES-256-CBC 
 +auth SHA256 
 + 
 +verb 3 
 +;mute 20 
 + 
 +ca [inline] 
 +cert [inline] 
 +key [inline] 
 +tls-auth [inline] 1 
 +<ca> 
 +-----BEGIN CERTIFICATE----- 
 +-----END CERTIFICATE----- 
 +</ca> 
 + 
 +<cert> 
 +-----BEGIN CERTIFICATE----- 
 +-----END CERTIFICATE----- 
 +</cert> 
 +<key> 
 +-----BEGIN PRIVATE KEY----- 
 + 
 +-----END PRIVATE KEY----- 
 +</key> 
 +<tls-auth> 
 +-----BEGIN OpenVPN Static key V1----- 
 + 
 +-----END OpenVPN Static key V1----- 
 +</tls-auth> 
 +</code> 
 + 
 +====== Archivo ovpn para Windows ======  
 + 
 +Archivo cliente1.ovn para cliente de OpenVPN  en Windows 
 + 
 +<code bash> 
 +client 
 +dev tun 
 +proto tcp 
 +remote adescloud.ddns.net 1194 
 +resolv-retry infinite 
 +nobind 
 +persist-key 
 +persist-tun 
 +mute-replay-warnings 
 +remote-cert-tls server 
 +cipher AES-256-CBC 
 +auth SHA256 
 +verb 3 
 +;mute 20 
 +<ca> 
 +-----BEGIN CERTIFICATE----- 
 + 
 +-----END CERTIFICATE----- 
 +</ca> 
 +<cert> 
 +-----BEGIN CERTIFICATE----- 
 + 
 +-----END CERTIFICATE----- 
 +</cert> 
 +<key> 
 +-----BEGIN PRIVATE KEY----- 
 + 
 +-----END PRIVATE KEY----- 
 +</key> 
 +<tls-auth> 
 +-----BEGIN OpenVPN Static key V1----- 
 + 
 +-----END OpenVPN Static key V1----- 
 +</tls-auth> 
 +key-direction 1 
 +</code> 
 +====== Configuración para conectarse a otras redes ======  
 + 
 +<code bash> 
 +iptables -t nat -L 
 +iptables -t nat -A POSTROUTING -s 10.8.0.0/8 -o eth0 -j MASQUERADE 
 +echo 1 > /proc/sys/net/ipv4/ip_forward 
 +</code> 
 +====== Comandos Enable/Start/Stop ======  
 + 
 +<code bash> 
 + 
 +systemctl stop openvpn@server 
 +systemctl start openvpn@server 
 +systemctl enable openvpn@server 
 +</code> 
 + 
 + 
 + 
 +====== Referencias ====== 
   * https://www.digitalocean.com/community/tutorials/how-to-set-up-an-openvpn-server-on-ubuntu-16-04   * https://www.digitalocean.com/community/tutorials/how-to-set-up-an-openvpn-server-on-ubuntu-16-04
   * https://serverfault.com/questions/483941/generate-an-openvpn-profile-for-client-user-to-import   * https://serverfault.com/questions/483941/generate-an-openvpn-profile-for-client-user-to-import
proyectos/linuxservidor-red-vpn-openvpn.1578412583.txt.gz · Última modificación: por manuel.floresv