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

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
proyectos:linuxservidor-red-vpn-openvpn [2020/01/07 15:56] manuel.floresvproyectos:linuxservidor-red-vpn-openvpn [2020/05/15 22:48] (actual) manuel.floresv
Línea 1: Línea 1:
 +====== 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 ====== ====== 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.1578412592.txt.gz · Última modificación: por manuel.floresv