Los usuarios de Internet tienen muchas opciones cuando se trata de servicios VPN, pero requieren una suscripción mensual, no son seguros o simplemente son lentos. Afortunadamente, existen alternativas. Requieren un poco más de conocimientos técnicos, pero si quieres que algo se haga bien, debes hacerlo tú mismo.
Para aprender cómo hacer tu propia VPN, puedes ver el video o leer el artículo. Tenga en cuenta que el artículo contiene algunos comandos útiles y texto de configuración que puede copiar y pegar para su conveniencia. Actualizar: el video usa una versión anterior de easy-rsa que ya no está disponible. Cuando llegue a la marca de 8 minutos, consulte este artículo para una configuración fácil de rsa 3.
Empezando
Amazon Web Services ofrece un año de espacio libre en el servidor virtual, siempre que use menos de las cantidades predeterminadas de ancho de banda, tiempo y espacio. Incluso si supera ese límite, el costo de ejecutar una imagen de servidor en Elastic Compute Cloud de Amazon es probablemente menor de lo que pagaría por una suscripción VPN.
Aquí explicaremos dos formas diferentes de usar el servicio Elastic Cloud de Amazon, también llamado EC2, para desviar su conexión a través de una ubicación privada de su elección: SSH Tunneling y OpenVPN. Cada uno tiene ventajas y desventajas, así que use el que encuentre más adecuado a sus necesidades. No importa cuál elija, necesitará lo siguiente:
- Una cuenta de Amazon Web Services. Esto requiere una tarjeta de crédito, pero solo se le cobrará por lo que use, lo que probablemente no será nada si es prudente con respecto a lo que está haciendo..
- PuTTy, si estás en Windows. OpenSSH a través de Cygwin es otra opción, pero me pareció una molestia. Las computadoras Linux y Mac ya tienen mensajes SSH integrados en sus cajas y terminales. También necesitará el programa de generación de claves hermano de PuTTy, PuttyGen.
- WinSCP, o un cliente FTP equivalente para mover archivos entre su computadora local y su instancia EC2.
- Un conocimiento básico de los comandos de Unix y de cómo funcionan los servidores con los clientes será enormemente útil en la resolución de problemas si algo no sale exactamente como se planeó.
- OpenVPN GUI, instalado en la ubicación predeterminada y con la configuración predeterminada en su PC
Configurar AWS
Una vez que se haya registrado para obtener una cuenta de Amazon Web Services, aquí le mostramos cómo iniciar el servidor que usaremos para nuestra VPN:
- Inicie sesión en su cuenta de Amazon Web Service y diríjase al panel de control EC2.
- En la esquina superior derecha, puedes elegir la ubicación donde configuraremos tu VPN. Haga clic en Iniciar instancia.
- Elija cualquier AMI de Linux que esté en la lista como “elegible para el nivel gratuito”. Al momento de escribir este artículo, esa es la AMI de Linux Linux. Ir al siguiente paso.
- Aquí elija una instancia de t2.micro que también sea elegible para el nivel gratuito. Haga clic en “Revisar e iniciar”.
- En la siguiente página, haga clic en Editar grupos de seguridad.
- Deberá editar el grupo de seguridad para permitir que el tráfico de su computadora solo acceda a la VPN o al proxy. Ya debe tener una regla para conectarse a su servidor a través de SSH, que usaremos más adelante. Tendremos que agregar otro para permitir conexiones OpenVPN, que usan el puerto 1194 de forma predeterminada. Por simplicidad, bajo el Entrante pestaña, haga clic en el Agregar regla botón. Selecciona el Tipo a UDP personalizado, el rango de puertos a 1194, y la fuente para En cualquier sitio.
- Golpear Salvar.
- Haga clic en “revisar e iniciar”, luego “iniciar” en la página siguiente.
- Ahora querrá crear un par de claves, que funciona como una contraseña que usará para conectarse al servidor virtual que está creando. Seleccione “crear un nuevo par de claves” en el menú desplegable y asígnele el nombre que desee. Haga clic en el botón para descargar el par de claves. Guárdelo en un lugar seguro.
- La siguiente página debería alertarle de que la instancia se está iniciando. Desplácese hasta la parte inferior y presione “Ver instancias”. Aquí verá una lista de las instancias que ha lanzado, que si es la primera vez que usa EC2 será solo una..
Conéctese al servidor con PuTTy
Podemos conectarnos a nuestra instancia EC2 con PuTTy, pero primero necesitaremos un archivo de clave adecuado para conectarnos. Cuando instaló PuTTy, también debería haber instalado PuTTygen. Sigue adelante y ejecútalo ahora. PuTTy y PuTTygen se ejecutan directamente como archivos .exe sin necesidad de instalar.
- Abra PuTTygen, haga clic en Cargar.
- Navegue hasta el archivo de par de claves .pem que descargó antes y cárguelo en Puttygen. Deberá seleccionar la opción para mostrar todos los tipos de archivos para que aparezca la clave .pem. Haga clic en “Guardar clave privada”. El nombre del archivo debe ser idéntico a la clave .pem. Puede crear una frase de contraseña para la clave privada si lo desea.
- Ahora cierre PuTTygen y abra PuTTy. Copie la IP pública de su instancia de la consola EC2 en PuTTy. Escriba un nombre para su sesión y presione guardar.
- En el panel izquierdo, navegue hasta “Auth” en SSH. Haga clic en el botón Examinar en la parte inferior y navegue hasta la clave privada que acaba de generar.
- Vuelva a la página principal de la sesión, nombre y guarde su perfil de sesión para que pueda conectarse rápidamente la próxima vez que use PuTTy. Luego haga clic en Abrir.
- Aparecerá un mensaje pidiéndole un nombre de usuario. Esto difiere según el tipo de servidor que configuró al principio. Para la AMI de Amazon Linux, es “usuario ec2”.
Túneles SSH (opcional)
Para empezar, solo vamos a redirigir el tráfico web a través de la instancia que creamos utilizando un túnel SSH y un proxy. Esta es una forma rápida y sucia de sortear un firewall o bloqueo geográfico. No es una VPN, es lo mejor para el tráfico web ligero y no funcionará con todo, pero es mucho más simple de configurar. sin embargo, configurar el túnel SSH es completamente opcional, así que siéntete libre de pasar a la siguiente sección.
Abra PuTTy y navegue hasta Túneles en el dolor izquierdo. Agregue el puerto 8080 con Auto y Dinámico seleccionado. Regrese a la página Sesión y presione Guardar nuevamente para que no tenga que volver a hacer todo esto. Luego haga clic en Abrir.
Ahora está conectado a su servidor, pero aún necesita enrutar el tráfico de su navegador web a través de él. Si usa Firefox, esto se puede hacer en la configuración de su navegador. Si usa Chrome, descargue la extensión Proxy Switchy. Si prefiere crear una VPN completamente funcional en lugar de solo un proxy para su navegador, pase a la siguiente sección ahora.
En Firefox:
- Ir a herramientas > Opciones > Avanzado > Red > Conexión > Configuraciones > Configuración manual del proxy
- Establezca SOCKS Host como 127.0.0.1 y el puerto como 8080 (o lo que sea que configure el puerto del túnel en PuTTy).
- Haga clic en Aceptar para guardar
En Chrome Proxy Switchy
- Deberá aparecer una página de configuración tan pronto como instale la extensión, o haga clic en el icono en la parte superior derecha de Chrome y haga clic en Opciones.
- Nombra el perfil como quieras. En Configuración manual, configure el host SOCKS en 127.0.0.1 y el puerto en 8080 (o lo que establezca en el puerto del túnel en PuTTy. Deje todo lo demás en blanco.
- Presione Guardar, luego haga clic nuevamente en el icono para seleccionar su perfil de proxy.
Voila! El tráfico de su navegador ahora se canaliza a través de su instancia EC2. Esto funcionará bien para la navegación básica, pero algunos sitios web pueden tener problemas y las aplicaciones que no sean su navegador web seguirán utilizando la conexión directa. Para crear una VPN completa que redirija todo su tráfico de Internet, siga leyendo.
Configure OpenVPN en el servidor y el cliente
OpenVPN es una herramienta gratuita de código abierto que le permitirá ejecutar una VPN completa a través de su instancia de Amazon EC2. Eso significa que todo su tráfico de Internet lo atraviesa, no solo el tráfico de su navegador web como el proxy anterior. Los programas de escritorio como Steam o Spotify funcionan mejor con este enfoque.
Conéctese a su instancia EC2 usando PuTTy de acuerdo con las instrucciones anteriores. Debería tener un símbolo del sistema delante de usted que diga AMI de Amazon Linux. Ejecute los siguientes comandos (escríbalos o cópielos / péguelos y presione Intro):
sudo yum install -y openvpn
sudo modprobe iptable_nat
echo 1 | sudo tee / proc / sys / net / ipv4 / ip_forward
sudo iptables -t nat -A POSTROUTING -s 10.4.0.1/2 -o eth0 -j MASQUERADE
sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
Sólo una nota rápida aquí. Es posible que haya notado en la captura de pantalla que intenté descargar e instalar OpenVPN incorrectamente utilizando el comando “apt-get” en lugar de “yum”. Algunas otras versiones de Linux todavía usan apt-get, así que si yum no funciona para usted, intente con este comando:
sudo apt-get install -y openvpn
Aparecerá un montón de texto en el símbolo del sistema mientras instala OpenVPN. Los otros tres comandos configuran el reenvío de IP, que es necesario para que la VPN funcione.
Método n. ° 1: Configuración de la autenticación PKI con easy-rsa (recomendado)
En la versión original de este tutorial, configuramos OpenVPN con cifrado estático y un archivo .ovpn. Si bien eso funciona, solo permite conectar un dispositivo a la vez, y el hecho de que solo use una tecla significa que es menos seguro. Ahora recomendamos que los lectores usen easy-rsa para configurar la autenticación, que es más segura y permite que cualquier cantidad de dispositivos se conecten simultáneamente. Sin embargo, si desea la versión anterior con cifrado estático, salte a ella haciendo clic aquí.
Actualización de mayo de 2023: este artículo se ha actualizado para usar con easy-rsa 3.
OpenVPN y configuración del servidor easyrsa
Idealmente, generaría todas las claves y certificados que necesita en un dispositivo separado del servidor VPN para obtener la máxima seguridad. Sin embargo, esto puede ser bastante tedioso, por lo que solo vamos a generar credenciales de cliente y servidor en el servidor y luego mover los archivos a donde los necesitemos desde allí..
- Easy-rsa no está disponible en la lista predeterminada de paquetes yum, por lo que tendremos que habilitar el repositorio EPEL para instalarlo. Escribe lo siguiente en el terminal PuTTy y presiona Enter:
- sudo yum install easy-rsa -y –enablerepo = epel
- Haga un directorio easy-rsa en su directorio de instalación de OpenVPN. Copie los archivos de su instalación easy-rsa (la última versión es 3.0.3 en el momento de la escritura) en el nuevo directorio:
- sudo mkdir / etc / openvpn / easy-rsa
cd / etc / openvpn / easy-rsa
sudo cp -Rv /usr/share/easy-rsa/3.0.3/*
- sudo mkdir / etc / openvpn / easy-rsa
- Ahora estamos listos para configurar nuestra autoridad de certificación. Comience por inicializar un nuevo directorio PKI (infraestructura de clave pública), luego cree un par de claves de autoridad de certificación.
- sudo ./easyrsa init-pki
sudo ./easyrsa build-ca
- sudo ./easyrsa init-pki
- Ingrese una frase de contraseña PEM. Esto no es obligatorio pero se recomienda. Si alguien obtiene su CA de alguna manera, no podrá crear claves ni firmar certificados sin la contraseña.
- Se le pedirá que ingrese un nombre común. Llámalo como quieras o simplemente presiona Entrar para dejarlo como el valor predeterminado.
- A continuación, generaremos una clave Diffie-Hellman, que proporciona un secreto perfecto hacia adelante:
- sudo ./easyrsa gen-dh
- Este comando puede tomar un tiempo. Generará un archivo llamado dh.pem. Una vez terminado, pasamos a las credenciales del servidor. Para su comodidad, no protegeremos con contraseña, pero le invitamos a hacerlo si desea una seguridad aún mayor.
- sudo ./easyrsa gen-req server nopass
- Golpear Entrar dejar el nombre común como servidor. Una vez que se genera el par de claves, firme el certificado:
- sudo ./easyrsa sign-req servidor servidor
- Tipo si para confirmar e ingresar su contraseña de CA si configura una anterior.
- Ahora configuraremos el cliente. Nuevamente, no estableceremos una contraseña para esto, pero puede hacerlo. Tenga en cuenta que si desea configurar el inicio de VPN automatizado, es mejor no establecer una contraseña.
- ./ easyrsa gen-req cliente nopass
- Golpear Entrar dejar el nombre común como cliente. Ahora fírmalo:
- sudo ./easyrsa cliente de cliente de solicitud de firma
- Tipo si para confirmar e ingresar su contraseña de CA si establece una.
- A continuación, generaremos una clave TLS para un secreto perfecto hacia adelante en OpenVPN, lo que garantiza que los datos de sesiones anteriores no se puedan descifrar incluso si un atacante se apodera de nuestra clave privada.
- cd / etc / openvpn
openvpn –genkey –secret pfs.key
- cd / etc / openvpn
- Ahora hemos generado todos los archivos de credenciales que necesitamos. A continuación, crearemos un archivo de configuración del servidor OpenVPN. Ya tenemos uno escrito para usted a continuación, por lo que todo lo que necesita hacer es copiar y pegar si lo ha seguido desde el principio. Comience navegando al directorio OpenVPN y creando un nuevo archivo:
- cd / etc / openvpn
sudo nano server.conf
- cd / etc / openvpn
- Ahora estás en el editor de nano texto. Copie y pegue la siguiente configuración, luego presione CTRL + O ahorrar, Entrar para confirmar, y CTRL + X salir. (Sugerencia: puede pegar texto de su portapapeles en PuTTy simplemente haciendo clic derecho)
- puerto 1194
proto udp
Dev Tun
ca /etc/openvpn/easy-rsa/pki/ca.crt
cert /etc/openvpn/easy-rsa/pki/issued/server.crt
clave /etc/openvpn/easy-rsa/pki/private/server.key
dh /etc/openvpn/easy-rsa/pki/dh.pem
cifra AES-256-CBC
aut. SHA512
servidor 10.8.0.0 255.255.255.0
empujar "redirect-gateway def1 bypass-dhcp"
empujar "dhcp-option DNS 8.8.8.8"
empujar "dhcp-option DNS 8.8.4.4"
ifconfig-pool-persist ipp.txt
keepalive 10 120
comp-lzo
clave persistente
persist-tun
status openvpn-status.log
log-append openvpn.log
verbo 3
tls-server
tls-auth /etc/openvpn/pfs.key
- puerto 1194
- El servidor ahora está configurado. Solo necesitamos iniciar OpenVPN. Lo iniciaremos como un servicio para que, incluso después de cerrar PuTTy, continúe ejecutándose hasta que el servidor se apague o finalice manualmente el servicio..
- inicio de servicio sudo openvpn
Editar: Algunos lectores han señalado que sus servidores VPN dejan de funcionar después de un reinicio o mantenimiento del servidor. Esto sucede ocasionalmente con instancias de micro nivel EC2. Para evitar esto, usaremos un comando y un script de cortesía de Matt Doyle en la sección de comentarios. Comience con este comando:
sudo chkconfig openvpn en
Mientras todavía está en etc / openvpn, use nano server.sh para crear un nuevo archivo de texto y pegar lo siguiente en él:
#! / bin / sh
echo 1 | sudo tee / proc / sys / net / ipv4 / ip_forward
sudo iptables -t nat -A POSTROUTING -s 10.4.0.1/2 -o eth0 -j MASQUERADE
sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
Utilizar CTRL + O para guardar y CTRL + X salir.
El comando garantizará que OpenVPN se inicie cuando se inicie el servidor, y el script garantizará que las rutas necesarias estén configuradas en iptables para permitir el tráfico de OpenVPN.
OpenVPN y configuración de cliente easyrsa
Ahora que el servidor está configurado, necesitamos configurar el cliente. Para hacer eso, tendremos que mover el certificado necesario y los archivos clave de nuestro servidor a nuestro dispositivo cliente. Con PuTTy todavía abierto y ejecutándose como root, primero debemos cambiar los permisos en estos archivos para poder acceder a ellos. También los pondremos todos en un solo lugar para facilitar las cosas.
- Para acceder a algunos de estos archivos, necesitaremos ser usuarios root. Para hacer eso, escriba:
- sudo su
- Esto lo convertirá en el usuario raíz y le otorgará privilegios administrativos. Ahora ingrese los siguientes comandos. El último comando reduce los permisos necesarios para acceder a estos archivos. Tenga en cuenta que es importante volver a cambiarlos cuando haya terminado.
- cd / etc / openvpn
llaves mkdir
cp pfs.key keys
cp /etc/openvpn/easy-rsa/pki/dh.pem keys
cp /etc/openvpn/easy-rsa/pki/ca.crt keys
cp /etc/openvpn/easy-rsa/pki/private/ca.key keys
cp /etc/openvpn/easy-rsa/pki/private/client.key keys
cp /etc/openvpn/easy-rsa/pki/issued/client.crt keys
chmod 777 *
- cd / etc / openvpn
- Para sacar los archivos de nuestro servidor y ponerlos en nuestra PC, utilizaremos un programa gratuito llamado WinSCP. Simplemente use las opciones de instalación predeterminadas. Una vez hecho esto, debería aparecer una ventana que le pedirá que importe los detalles de autenticación de su servidor desde PuTTy. Seleccione el que hicimos arriba y continúe.
- Seleccione myvpn (o como se llame) y presione el botón Editar. Escribir usuario ec2 bajo nombre de usuario. Haga clic en Iniciar sesión.
- Si no es la primera vez que usa WinSCP, puede configurar el archivo .ppk que usó en PuTTy haciendo clic en Editar y Avanzado. Ir SSH > Autenticación > Archivo de clave privada y navega a tu archivo PPK.
- En el campo de nombre de host en la página principal, puede ingresar la dirección IP o el dominio de su instancia EC2. Asegúrese de guardar su configuración, luego presione Iniciar sesión.
- En el panel derecho, navegue hasta el directorio que contiene sus archivos clave, en este caso / etc / openvpn / keys
- Resalta los seis archivos que necesitarás: client.crt, client.key, ca.crt, dh.pem, pfs.key, y ca.key (no se muestra debido a la actualización del artículo). Golpear el verde Descargar botón. Realmente no importa a dónde vayan en el panel izquierdo, siempre que no necesite privilegios de administrador para acceder a él. Ponemos los archivos en nuestro escritorio por simplicidad. Sin embargo, querrá almacenar el archivo ca.key en un lugar seguro, como una unidad USB.
- El último extremo suelto que debemos atar es eliminar el archivo ca.key del servidor. La CA, o autoridad de certificación, se utiliza para firmar certificados de cliente y, si alguna vez se ve comprometida, nunca puede volver a confiar en los certificados emitidos por esa CA. Si bien esto no es necesario para que la VPN funcione, recomendamos encarecidamente hacerlo, especialmente si no configuró una contraseña para la CA. Asegúrese de tener todas las claves y certificados para cada dispositivo que desee conectar antes de eliminar el archivo. Si desea agregar más en un momento posterior, deberá mover el archivo ca.key nuevamente al servidor.
- Una vez que tenga la clave CA almacenada de forma segura en otro lugar que no sea el servidor, vaya a PuTTy y elimine tanto la clave ca. original como la copia que hicimos del servidor:
- sudo rm /etc/openvpn/easy-rsa/pki/private/ca.key
sudo rm /etc/openvpn/keys/ca.key
- sudo rm /etc/openvpn/easy-rsa/pki/private/ca.key
- Una vez que los archivos se han descargado, necesitamos restaurar sus permisos más estrictos en el servidor para que no cualquiera pueda acceder a ellos. De vuelta en PuTTy:
- cd / etc / openvpn / keys
sudo chmod 600 *
- cd / etc / openvpn / keys
- En su PC, corte y pegue esos cinco archivos desde donde los haya descargado en su carpeta de configuración de OpenVPN. En este caso eso es C: // Archivos de programa // OpenVPN // config.
- Por último, necesitamos crear un archivo de configuración del cliente. Abra su editor de texto plano favorito (el Bloc de notas funciona bien) haciendo clic derecho y seleccionando Ejecutar como administrador y pegue la siguiente configuración, reemplazando YOUR.EC2.INSTANCE.IP con la dirección IP de su instancia EC2:
- cliente
Dev Tun
proto udp
control remoto YOUR.EC2.INSTANCE.IP 1194
ca ca.crt
cert client.crt
clave client.key
tls-version-min 1.2
TLS-ECDHE-RSA-WITH-AES-128-GCM-SHA256: TLS-ECDHE-ECDSA-WITH-AES-128-GCM-SHA256: TLS-ECDHE-RSA-WITH-AES-256-GCM-SHA384 : TLS-DHE-RSA-WITH-AES-256-CBC-SHA256
cifra AES-256-CBC
aut. SHA512
resolv-retry infinite
reintentar ninguno
nobind
clave persistente
persist-tun
servidor ns-cert-type
comp-lzo
verbo 3
tls-client
tls-auth pfs.key
- cliente
- Este es un archivo de configuración de Windows para la GUI de OpenVPN, por lo que lo guardaremos como cliente.ovpn. Otros clientes de OpenVPN podrían usar la extensión .conf en su lugar. Cualquiera sea el caso, asegúrese de que su editor de texto no agregue la extensión .txt después de guardar. Guárdelo en la misma ubicación que su clave y archivos de certificación: C: \\ Archivos de programa \\ OpenVPN \\ config
- Ahora ejecuta el OpenVPN GUI en modo administrador haciendo clic derecho y seleccionando Ejecutar como administrador. Haga clic derecho en el icono en la bandeja del sistema y conéctese con el cliente configuración que acabamos de configurar. Una pantalla de estado con un montón de texto parpadeará en la pantalla, y luego el ícono se volverá verde.
¡Felicidades! Ahora estás conectado a tu VPN casera.
Método # 2: cifrado estático (más fácil, pero no recomendado)
En este método, crearemos una clave compartida para la autenticación. Es como un archivo que actúa como una contraseña. Es más fácil de configurar, pero solo permite que se conecte un solo dispositivo a la VPN en cualquier momento, y es menos seguro que el método fácil rsa anterior.
- En PuTTy, escriba los siguientes comandos y presione enter:
- cd / etc / openvpn
sudo openvpn –genkey –secret ovpn.key
- cd / etc / openvpn
- Ahora vamos a crear un archivo de configuración del servidor para nuestra VPN. Escriba el siguiente comando para crear un archivo de texto en blanco en un editor de texto muy básico dentro del terminal:
- sudo nano openvpn.conf
- Escriba la siguiente configuración. Puedes encontrar más opciones en el sitio web de OpenVPN si quieres jugar con esto más tarde, pero asegúrate de saber lo que estás haciendo primero.
- puerto 1194
proto tcp-server dev tun1
ifconfig 10.4.0.1 10.4.0.2
status server-tcp.log
verbo 3
ovpn.key secreto
- puerto 1194
- Ahora presione CTRL + O (esa es la letra “O” no cero) y presione Intro para guardar el archivo. Luego presione CTRL + X para salir del editor de texto. De vuelta en el símbolo del sistema, es hora de iniciar OpenVPN:
- inicio de servicio sudo openvpn
- A continuación, necesitamos obtener la clave compartida del servidor a su computadora local. Primero necesitamos cambiar los permisos en ese archivo para poder acceder a él usando el siguiente comando:
- sudo chmod 777 ovpn.key
- Si en algún momento cierra accidentalmente PuTTy o simplemente falla, puede volver a su directorio de instalación de VPN abierto después de volver a conectarse con este comando:
- cd / etc / openvpn
- Para hacer esto lo más fácil posible, descargue e instale esta aplicación gratuita, WinSCP (los usuarios de Mac tendrán que encontrar otro cliente FTP. No se preocupe, hay muchos). Simplemente use las opciones de instalación predeterminadas. Una vez hecho esto, debería aparecer una ventana que le pedirá que importe los detalles de autenticación de su servidor desde PuTTy. Seleccione el que hicimos arriba y continúe.
- Seleccione myvpn (o como se llame) y presione el botón Editar. Escriba “ec2-user” debajo del nombre de usuario. Haga clic en Iniciar sesión.
- Ahora puede mover archivos entre su servidor de instancias EC2 y su computadora local. En el panel de la derecha, navegue hacia arriba lo más que pueda, luego vaya a etc / openvpn. Aquí encontrará el archivo ovpn.key que necesitamos. Haz clic y arrástralo a la carpeta que elijas, pero recuerda dónde lo colocaste, ya que querremos moverlo más tarde.
- Ahora que tiene la clave, necesitamos volver a aplicar los permisos anteriores para que no cualquiera pueda obtenerla. De vuelta en su terminal PuTTy, ingrese:
- sudo chmod 600 ovpn.key
- Es hora de descargar el cliente OpenVPN y la GUI para su computadora local. Vaya a la página de descargas de OpenVPN y elija la versión adecuada para su sistema operativo. Instalarlo con la configuración predeterminada.
- Inicie OpenVPN y debería aparecer como un icono en la bandeja de su sistema. Abra un explorador de archivos y navegue hasta donde instaló OpenVPN, probablemente en su carpeta Archivos de programa. Mueva el archivo opvn.key que descargamos del servidor a la carpeta de configuración que se encuentra aquí (C: / Archivos de programa / OpenVPN / config … si utilizó el directorio de instalación predeterminado en Windows).
- Luego, necesitamos crear un archivo de configuración para que la máquina local coincida con la que hicimos en nuestro servidor. Abra el Bloc de notas y pegue lo siguiente, reemplazando la dirección IP después de “remota” con la IP de su instancia EC2 (si la ha olvidado, búsquela en su consola AWS en Instancias EC2). Además, verifique que la ruta completa del archivo que apunta a su clave sea correcta.
- proto tcp-client
remoto
puerto 1194
Dev Tun
secreto "C: \\ Archivos de programa \\ OpenVPN \\ config \\ ovpn.key"
redirect-gateway def1
ifconfig 10.4.0.2 10.4.0.1
- proto tcp-client
- Guárdelo como myconfig.ovpn (asegúrese de que su editor de texto no lo agregue como myconfig.ovpn.txt por error) en la carpeta de configuración de su instalación de OpenVPN, el mismo lugar que su archivo opvn.key.
- Haga clic derecho en el icono de OpenVPN en la bandeja del sistema y haga clic en Salir para salir. Ahora vuelva a iniciarlo, ya sea desde el acceso directo del escritorio o desde la carpeta Archivos de programa, pero esta vez haga clic derecho y presione “Ejecutar como administrador”. Si no ejecuta OpenVPN como administrador en Windows, probablemente no funcionará.
- Haga clic derecho en el icono de la bandeja del sistema y haga clic en Conectar. La GUI de OpenVPN debería aparecer mostrando el estado de la conexión. Suponiendo que funcionó, el icono de la bandeja del sistema se volverá verde. Vaya a Google y escriba “¿Cuál es mi IP?”, Y debería devolver la dirección IP de su instancia de Amazon EC2.
Felicidades, acabas de hacer tu propia VPN!
Notas adicionales
Si desea proteger su VPN de la inspección profunda de paquetes, una técnica utilizada por los regímenes de censura en lugares como China y Siria para bloquear las conexiones de OpenVPN, consulte nuestro tutorial sobre la configuración de Obfsproxy. Tenga en cuenta que este tutorial fue escrito como una especie de secuela del Método # 2 anterior en este artículo, por lo que si utilizó easy-rsa, requerirá alguna configuración adicional.
Recuerde mantener su ancho de banda dentro de los límites de nivel gratuito de Amazon. La forma más fácil de hacer esto es hacer clic derecho en su instancia en la consola de AWS y hacer clic en el enlace “Agregar / Editar alarmas”. Puede configurar su servidor para que se detenga o incluso que termine después de algunas horas de inactividad. El nivel gratuito permite 750 horas por mes (que cubre todo el mes), por lo que no debería necesitar hacer esto. Sin embargo, aquellos usuarios que pasen su año de servicio gratuito inicial o que hagan más con su servidor pueden evitar cargos innecesarios por el tiempo de servidor no utilizado.
En algún lugar de este tutorial, probablemente algo salga mal para ti. Si realmente quiere una VPN pero no está dispuesto a hacer su parte justa de solución de problemas, probablemente sea mejor optar por un servicio VPN de pago. También le permiten canalizar su tráfico de Internet a través de múltiples ubicaciones geográficas, mientras que una instancia de EC2 se limita a una sola. Mira nuestras reseñas de VPN aquí!
Codificar servidores DNS en su VPN
Si necesita configurar servidores DNS específicos para usar con su VPN, hay un par de opciones.
Para “enviar” el servidor DNS al cliente, agregue esta línea a la configuración del servidor. Esto afectará a todos los dispositivos que se conectan a su VPN (cotizaciones incluidas):
empujar "dhcp-option DNS 45.56.117.118"
Alternativamente, puede configurar el DNS en una configuración de cliente individual usando:
dhcp-option DNS 45.56.117.118
En estos ejemplos, utilicé un servidor DNS público de OpenNIC con registro anónimo ubicado en los EE. UU. Puede encontrar un servidor OpenNIC en el país de su elección y filtrar por características como el registro anónimo y DNSCrypt aquí.
Un agradecimiento especial al blog de Dctr Watson, en el que me apoyé como recurso al escribir este artículo..
Jon Watson (sin relación, creo) contribuyó a este artículo.
Los servicios VPN pueden ser costosos, inseguros o lentos, pero hay alternativas que requieren un poco más de conocimientos técnicos. Si quieres hacerlo bien, hazlo tú mismo. Puedes aprender cómo hacer tu propia VPN viendo el video o leyendo el artículo. Ten en cuenta que el video usa una versión anterior de easy-rsa que ya no está disponible, pero el artículo contiene comandos útiles y texto de configuración que puedes copiar y pegar para tu conveniencia. Amazon Web Services ofrece un año de espacio libre en el servidor virtual, lo que puede ser más económico que una suscripción VPN. Aquí se explican dos formas diferentes de usar el servicio Elastic Cloud de Amazon para desviar tu conexión a través de una ubicación privada de tu elección: SSH Tunneling y OpenVPN. Necesitarás una cuenta de Amazon Web Services, PuTTy, WinSCP, conocimientos básicos de Unix y de cómo funcionan los servidores con los clientes, y OpenVPN GUI instalado en tu PC. Sigue los pasos para configurar AWS y crear tu propia VPN.