En este tutorial, le mostraremos cómo instalar OpenVPN en Ubuntu 16.04 LTS. Para aquellos de ustedes que no lo sabían, OpenVPN es una aplicación de código abierto que se usa ampliamente para crear redes privadas virtuales seguras a través de la Internet pública no segura. OpenVPN es una solución SSL VPN que drena la conexión de su sistema de forma segura a través de Internet. OpenVPN funciona en la estructura cliente-servidor. Todos los dispositivos conectados a una red privada virtual actúan como si fueran vinculado a su red de área local. Los paquetes enviados a través del túnel VPN están encriptados con encriptación AES de 256 bits, lo que hace imposible el robo de datos.
Este artículo asume que tiene al menos conocimientos básicos de Linux, sabe cómo usar el shell y, lo que es más importante, aloja su sitio en su propio VPS. La instalación es bastante simple y asume que se están ejecutando en la cuenta raíz, si no, es posible que deba agregar 'sudo
' a los comandos para obtener privilegios de root. Le mostraré la instalación paso a paso de la red privada virtual de código abierto OpenVPN en un servidor Ubuntu 16.04 (Xenial Xerus).
Instalar OpenVPN en Ubuntu 16.04 LTS
Paso 1. Primero, asegúrese de que todos los paquetes de su sistema estén actualizados ejecutando el siguiente apt-get
comandos en la terminal.
sudo apt-get update sudo apt-get upgrade
Paso 2. Instalación de OpenVPN en Ubuntu 16.04.
Instala OpenVPN usando el siguiente comando:
apt-get install openvpn easy-rsa
Paso 3. Configuración de la autoridad de certificación.
El servidor OpenVPN usa certificados para encriptar el tráfico entre el servidor y varios clientes. Por lo tanto, necesitamos configurar una autoridad certificadora (CA) en el VPS para crear y administrar estos certificados:
make-cadir ~/openvpn-ca cd ~/openvpn-ca
Editaremos algunas variables hacia el final del archivo:
nano vars
Cámbielos según sus necesidades:
# These are the default values for fields # which will be placed in the certificate. # Don't leave any of these fields blank. export KEY_COUNTRY="US" export KEY_PROVINCE="CA" export KEY_CITY="NewYork" export KEY_ORG="Fort-Funston" export KEY_EMAIL="[email protected]" export KEY_OU="MyOrganizationalUnit" # X509 Subject Field export KEY_NAME="chedelics"
Si no hay ningún error, verá el siguiente resultado:
source vars NOTE: If you run ./clean-all, I will be doing a rm -rf on /home/user/openvpn-ca/keys
Ahora podemos limpiar el entorno y luego construir nuestra CA:
./clean-all ./build-ca
Felicitaciones... Se creará una nueva clave RSA y se le pedirá que confirme los detalles que ingresó en el archivo vars anteriormente. Simplemente presione Entrar para confirmar.
Paso 4. Generar una clave de servidor y un certificado.
Ejecute el siguiente comando en el directorio actual:
./build-key-server server
También necesitaremos crear un archivo Diffie-Hellman. La creación de este archivo dependerá de la longitud de la clave. Por defecto, usaremos el Clave de 2048 bits, pero siempre puede cambiarla editando el archivo vars en la carpeta easy-RSA:
./build-dh
Finalmente, debe generar una firma HMAC para fortalecer el certificado:
openvpn --genkey --secret keys/ta.key
Paso 5. Cree claves públicas/privadas de cliente.
Este proceso creará una única clave y certificado de cliente:
source vars ./build-key client1
Paso 6. Configure el servidor OpenVPN.
Ahora configuraremos el servidor OpenVPN:
cd ~/openvpn-ca/keys cp ca.crt ca.key vpnserver.crt vpnserver.key ta.key dh2048.pem /etc/openvpn
A continuación, extraiga una configuración de muestra de OpenVPN en la ubicación predeterminada:
gunzip -c /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz | sudo tee /etc/openvpn/server.conf
Ahora edita el archivo de configuración:
nano /etc/openvpn/server.conf
Pegue las configuraciones a continuación (puede cambiar los valores del puerto, etc.):
local 192.168.77.20 port 443 proto tcp dev tun tun-mtu 1500 tun-mtu-extra 32 mssfix 1450 ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt cert /etc/openvpn/easy-rsa/2.0/keys/server.crt key /etc/openvpn/easy-rsa/2.0/keys/server.key dh /etc/openvpn/easy-rsa/2.0/keys/dh1024.pem server 10.8.0.0 255.255.255.0 #-ifconfig-pool-persist ipp.txt push "redirect-gateway def1" push "dhcp-option DNS 8.8.8.8" push "dhcp-option DNS 4.2.2.1" keepalive 2 30 comp-lzo persist-key persist-tun status 443status.log log-append 443log.log verb 3
Guarde el archivo y habilite e inicie el servicio OpenVPN:
systemctl enable openvpn@server systemctl start openvpn@server
Paso 7. Configure Iptables para OpenVPN.
Necesitaremos ingresar algunas reglas de IPtables para habilitar Internet en la máquina cliente:
sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o venet0 -j MASQUERADE sudo apt-get install iptables-persistent
¡Felicitaciones! Ha instalado correctamente OpenVPN. Gracias por usar este tutorial para instalar el servidor OpenVPN en el sistema Ubuntu 16.04 LTS (Xenial Xerus). Para obtener ayuda adicional o información útil, le recomendamos que consulte la sitio web oficial de OpenVPN.