Ejecutar su propio servidor VPN es una excelente manera de aumentar su seguridad móvil y obtener acceso a su LAN desde Internet, pero son muy difíciles de configurar. Pi VPN convierte su Raspberry Pi en un servidor VPN barato y efectivo que utiliza una instalación guiada que hace la mayor parte del trabajo duro por usted.
Podrá evitar los filtros del sitio web en el trabajo o la escuela, y conectarse fácilmente a dispositivos en su red doméstica como servidores de archivos o impresoras. Y con solo unos pocos pasos adicionales, también puede habilitar el cifrado de extremo a extremo y ejecutar toda su Internet móvil a través de un túnel seguro y anónimo.
¿Qué es Pi VPN??
Pi VPN es un servidor ligero OpenVPN diseñado para ejecutarse en Raspberry Pi 2 o 3. Le brinda acceso a su red doméstica a través de una conexión segura a través de Internet. Al enchufar una Raspberry Pi en su enrutador, actúa como un puente entre los dispositivos móviles y su red.
Puede usar Pi VPN para:
- Acceda a sus archivos, música y películas desde cualquier lugar
- Cifre su conexión de internet móvil
- Imprima en sus impresoras domésticas desde su computadora portátil
- Evita los firewalls y las restricciones del sitio web en el trabajo y en el extranjero
- Oculta tu dirección IP móvil
- Conéctese con sus cámaras domésticas y dispositivos inteligentes
Si se encuentra reenviando muchos servicios a través de su enrutador, una conexión VPN doméstica es una alternativa más segura. Cada puerto que reenvía es un túnel que alguien, en algún lugar, podría usar para ingresar a su red. Pi VPN solo abre un puerto, y utiliza un cifrado seguro para mantener su LAN segura.
Elegir un proveedor de VPN
Una de las opciones más importantes antes de comenzar este proyecto es qué proveedor de VPN usará. Y cuando está haciendo esa elección, los factores que debe tener en cuenta son la seguridad, el ancho de banda y la latencia.
La seguridad es vital, debe saber que su proveedor de VPN no mantendrá registros de su conexión. Pero el ancho de banda y la latencia son tan importantes en este caso. Si elige un proveedor con tiempos de ping altos o ancho de banda insuficiente, su conexión a Internet sufrirá.
Con eso en mente, le recomiendo que use IPVanish para este proyecto. IPVanish tiene algunos de los tiempos de latencia más bajos y el ancho de banda más alto de cualquier proveedor, y probamos muchos. Eso mantendrá su conexión ágil y receptiva, incluso cuando esté navegando en la web a través de una conexión VPN de doble salto.
RÁPIDO Y CONFIABLE: IPVanish tiene una gran red de servidores no congestionados que alcanza grandes velocidades. Fuertes características de seguridad y privacidad. Un favorito para Kodi y Amazon Fire Stick por sus aplicaciones y capacidades de transmisión. Ideal para familias, ya que puede manejar hasta 10 dispositivos conectados simultáneamente. Pruébelo sin riesgos con la garantía de devolución de dinero de 7 días.
Preparándose para Pi VPN
Para comenzar, necesitará:
- un Raspberry Pi 2 o 3 con Raspbian instalado
- una tarjeta de memoria de 8GB o más grande
Para obtener mejores resultados, la Raspberry Pi debe conectarse a un enrutador con un cable de ethernet, pero también funcionará una conexión wifi. Si estás usando wifi, necesitarás sustituir wlan0 por eth0 a lo largo de este tutorial.
Active el servicio SSH en Raspberry Pi Config habilitándolo en el Opciones de interfaz menú. Puede iniciar la herramienta de configuración desde el menú Pi o usar este comando:
sudo raspi-config
Reinicie su Pi después de habilitar el servidor SSH.
Una vez que su Pi está conectada a su red doméstica con SSH activado, puede deshabilitar el escritorio X y desconectar su monitor si lo desea. Es tan fácil conectarse a su Raspberry Pi de forma remota utilizando una utilidad como Putty o el terminal de su Mac como escribir directamente en el Pi.
Conectando a su Raspberry Pi
La mayoría de las veces querrá ejecutar su servidor Pi VPN sin necesidad de conectarlo a un monitor. Eso es fácil de hacer siempre que tenga un cliente de shell seguro (SSH). Usando SSH, puede obtener acceso a la línea de comando de su Raspberry Pi desde otra computadora.
Antes de desconectar su Raspberry Pi de su monitor, ejecute el comando ifconfig para mostrar la dirección IP de tu Pi. Está listado en el inet campo como se muestra arriba. Lo necesitará para conectar su cliente SSH.
Si va a configurar su servidor VPN Pi en Windows, use Putty para conectarse a su Raspberry Pi. Puedes descargar Putty aquí gratis.
Una vez que Putty esté en funcionamiento, conéctese a su Raspberry Pi escribiendo la dirección IP que anotó anteriormente. También asegúrese de que el Tipo de conección se establece en SSH. Haga clic en el Salvar botón para crear un perfil para esta conexión.
Si está instalando Pi VPN usando una computadora con Mac o Linux, no hay razón para descargar un cliente SSH. Simplemente use la terminal de su sistema operativo; es compatible con SSH por defecto.
La primera vez que se conecte a su Raspberry Pi, se le pedirá que guarde una clave de seguridad. Haga clic en el si para aceptar la clave como válida y guardarla en su computadora.
Luego, ingrese su contraseña. Si aún no lo ha cambiado, Raspberry Pi usa frambuesa como la contraseña predeterminada.
Has iniciado sesión correctamente cuando ves el pi @ hostname rápido.
Es una buena idea cambiar su contraseña predeterminada la primera vez que se conecta a través de SSH. Puedes hacerlo usando el passwd mando.
Actualización de Raspbian para Pi VPN
Asegúrese de que su sistema operativo esté actualizado antes de instalar Pi VPN.
Primero, obtenga una lista de todos los últimos softwares. Puede verificar las últimas versiones de todo lo que ha instalado con el comando:
sudo apt-get update
Una vez que tenga la última lista de software, dígale a su Raspberry Pi que se actualice con el comando:
sudo apt-get upgrade
Se te pedirá que presiones Y si desea actualizar, y debe hacerlo. El proceso de actualización tardará unos minutos en ejecutarse, y puede ver el progreso en la pantalla.
Establecer una dirección IP estática
Dado que va a confiar en su Raspberry Pi para los servicios de red, necesitará saber dónde encontrarlo. Eso significa que tendrá que establecer una dirección IP estática antes de comenzar.
También puede aprovechar esta oportunidad para cambiar su nombre de host. Entre otras cosas, eso cambiará el aviso que verá cuando inicie sesión. Es una forma fácil de distinguir varios Pi, pero cambiar su nombre de host es opcional..
Necesitarás editar /etc/dhcpcd.conf para establecer una dirección IP estática. Antes de abrir el archivo, asegúrese de conocer la dirección IP de su enrutador y los servidores DNS que utilizará. Si aún no tiene esa información, puede obtenerla usando ifconfig.
Una vez que esté listo, use este comando para abrirlo en el editor de nano texto:
sudo nano /etc/dhcpcd.conf
Desplácese por el archivo hasta que vea una línea etiquetada Ejemplo de configuración de IP estática. Todo lo que tendrá que hacer es descomentar la configuración de ejemplo y hacer algunas sustituciones con su dirección IP, enrutador y puertas de enlace.
Descomentar Dirección IP estática y sustituya la dirección IP estática que desea usar. He elegido 192.168.1.2 porque está cerca de la dirección IP del enrutador y es fácil de recordar.
Descomentar enrutadores estáticos y servidor_nombre_dominio estático e inserte sus propios valores. Una vez que haya realizado sus cambios, presione Ctrl + X renunciar Y para confirmar que quieres guardar.
Si va a cambiar su nombre de host, abra / etc / hostname en nano como root con el siguiente comando:
sudo nano / etc / hostname
Cambie su nombre de host en el archivo y luego presione Ctrl + X para salir del editor, y Y para guardar el archivo.
Tendrá que hacer lo mismo con el archivo en / etc / hosts. El comando para editar el archivo es:
sudo nano / etc / hosts
Desplácese hacia abajo hasta que vea 127.0.0.1 y cambia el nombre de host a lo que hayas elegido. En mi caso, eso es pivpn. Cuando hayas terminado, dile a tu Raspberry Pi que se reinicie con el siguiente comando:
reinicio de sudo
Después de reiniciar su Pi, asegúrese de actualizar la dirección IP a la que se está conectando para reflejar la nueva dirección IP estática.
Descubrir el cortafuegos de Raspbian
Como Raspbian es un sistema operativo Linux, el firewall está integrado en el kernel y está habilitado de manera predeterminada. Pero en una nueva instalación se deja abierta.
La política de firewall de Raspbian (iptables) es permitir todos los paquetes entrantes y salientes, y reenviar todo lo que lo solicite. Más adelante, le mostraré cómo bloquear el firewall, pero antes de comenzar, asegúrese de que esté completamente abierto a las conexiones..
Puedes usar iptables -L para enumerar sus reglas actuales de firewall y asegurarse de que coincidan con las anteriores. Si ha estado cambiando el firewall, puede restaurarlo a los valores predeterminados con los siguientes comandos:
sudo iptables -F
sudo iptables -P ACEPTACIÓN DE ENTRADA
sudo iptables -P ACEPTACIÓN DE SALIDA
sudo iptables -P ADELANTE ADELANTE
Elegir un nivel de cifrado
Cuando configure su VPN Pi, se le pedirá que elija la fuerza de su encriptación. Podrá elegir entre cifrado RSA de 1024 bits, 2048 bits y 4096 bits. Esto es lo que debes tener en cuenta:
- El cifrado RSA de 2048 bits es el estándar
- El uso de un cifrado más débil permite una mayor velocidad
- 2048 bits es bueno para descargar y transmitir
- El uso de un cifrado más seguro brinda más protección
- 4096 bits se utiliza mejor para correo electrónico y navegación
Habilitar RSA de 4096 bits es tentador, pero si va a transmitir video o reproducir música a través de su conexión, agregará una gran cantidad de sobrecarga y ralentizará notablemente las cosas. El cifrado de 2048 bits es el estándar por una razón, y le recomiendo que lo use en la mayoría de los casos.
Tiempo de espera durante operaciones largas
SSH tiene un capricho, y tarde o temprano lo descubrirás por ti mismo. Durante operaciones prolongadas, si está conectado a su Pi a través de SSH, la conexión se cortará cuando su computadora se quede inactiva. Tan pronto como se corta la conexión SSH, el comando que estaba ejecutando en su Pi deja de ejecutarse y debe comenzar de nuevo.
Una utilidad llamada pantalla hace que las operaciones SSH largas sean mucho más fáciles de manejar. Usando la pantalla, puede iniciar una sesión vinculada a una sola operación. Luego, puede conectarse o desconectarse cuando lo desee y volver a la sesión para verificar su progreso..
Una vez que instale la pantalla, solo necesita conocer algunos comandos para usarla. Comience usando apt para instalar la pantalla:
pantalla de instalación de sudo apt-get
Una vez que la pantalla esté instalada, ejecútela con este comando:
pantalla
No parecerá que sucedió nada, pero ahora cualquier comando que des no dejará de ejecutarse si desconectas.
Entonces, si su conexión se cae, simplemente vuelva a SSH en su Raspberry Pi y escriba:
pantalla -r
Se volverá a conectar automáticamente a la sesión SSH, siempre que sea la única activa..
Si tiene más de una sesión de pantalla activa, puede enumerarlas con el comando pantalla -ls. Si desea conectarse a una sesión que ve en la lista, necesitará la ID de 5 dígitos. Entonces, para volver a conectarme a la sesión 11712, usaría este comando:
pantalla -r 11712
Una vez que te acostumbras a usarlo, la pantalla hace que administrar tu Raspberry Pi con SSH sea mucho más agradable. Puede obtener más información sobre todas las cosas diferentes que la pantalla es capaz de hacer aquí.
Instalar Pi VPN
Una vez que haya resuelto su Raspberry Pi, puede conectarse a él y comenzar a instalar Pi VPN. Esta es la primera parte de una instalación de varias partes, y proporcionará la funcionalidad VPN de back-end que necesita para conectarse a Pi VPN. En pasos posteriores, instalaremos una página web de administración y configuraremos una conexión VPN saliente para privacidad.
Lanzando el instalador
Pi VPN se instala a través de un script que descargas de su sitio web usando el rizo herramienta de línea de comandos. Curl es solo una herramienta para descargar desde Internet sin necesidad de un navegador.
El comando que debe ejecutar para comenzar a instalar Pi VPN es:
rizo -L https://install.pivpn.io/ El | golpetazo
Ese comando descargará el script de instalación en pivpn.io y lo canalizará al intérprete de comandos bash para su ejecución.
El proceso de instalación comienza de inmediato. Comienza comprobando apto para ver si tienes paquetes que puedas actualizar. Si sigue esta guía, ya ha actualizado su sistema, por lo que el script pasará al siguiente paso.
Se instalarán algunos paquetes necesarios, luego se iniciará el instalador de Pi VPN.
El instalador de Pi VPN
El instalador de Pi VPN es un asistente de configuración pseudo-gráfico que es perfecto para ejecutarse en una conexión SSH. Cuando su pantalla se vuelve azul y se le muestra un mensaje del instalador, puede comenzar.
Empezar, presione enter para decirle al asistente de configuración de VPN de Pi que estás listo.
Se le advertirá que necesita establecer una dirección IP estática. Le recomiendo que haga esto antes de iniciar el asistente de configuración, así que si aún no ha configurado una dirección IP estática, salga ahora y siga las instrucciones en la sección anterior.
Pi VPN le mostrará la dirección IP que detectó. Si esta es la dirección IP estática que configuró anteriormente, presione el si botón.
Se le advertirá sobre conflictos de direcciones IP. La forma más segura de evitar conflictos es buscar en su enrutador el rango de DHCP y usar una dirección IP estática fuera de ese rango.
En mi caso, estoy usando 192.168.1.2 y mi enrutador asigna direcciones DHCP entre 192.168.1.100 – 192.168.1.200, por lo que no hay peligro de conflicto.
prensa Okay avanzar.
Querrás ir con el predeterminado Pi usuario en la mayoría de los casos, así que asegúrese de que esté seleccionado y presione el Okay botón.
Te recomiendo que hagas clic si para permitir actualizaciones de seguridad desatendidas en su servidor Pi VPN. Su Pi estará expuesta a Internet a través del reenvío de puertos, por lo que es especialmente importante que Pi VPN se mantenga actualizada.
Si haces clic No, tenga cuidado de ejecutar actualizaciones periódicas por su cuenta.
Es normal que se muestre la consola por un momento después de configurar las actualizaciones automáticas. El instalador volverá después de unos segundos..
En la mayoría de los casos, querrás configurar Pi VPN usando el UDP protocolo. Si planea utilizar un proveedor de VPN de suscripción para crear una conexión de doble salto ultrasegura, use TCP.
Tome nota del número de puerto que está utilizando para Pi VPN; lo necesitarás más tarde.
Puerto 1194 es el valor predeterminado para UDP, mientras que el valor predeterminado de TCP es puerto 443. Si sigue las instrucciones para crear una VPN de doble salto, no use el puerto TCP predeterminado o provocará un conflicto más adelante. Elegí TCP puerto 4430 en cambio, porque era fácil de recordar.
Configurar cifrado
Ahora podrá elegir su nivel de cifrado. Anteriormente describí cada opción y por qué podría elegirla. si no está seguro de cuál elegir, eche un vistazo a mi consejo.
Seleccione el nivel de cifrado que desea usar con la barra espaciadora, luego presione Okay. Estoy eligiendo correr Cifrado de 2048 bits para poder transmitir video a través de la conexión.
Generar estas claves puede llevar un tiempo. Si usa encriptación de alto nivel, tomará aún más tiempo. Sea paciente y deje que Pi VPN genere sus claves de servidor.
Terminando la instalación
Una vez que se han generado las claves del servidor, el asistente de configuración de Pi VPN está casi completo. Solo quedan unos pocos pasos más hasta que pueda conectarse.
Seleccione Use esta IP pública a menos que tenga una cuenta DNS dinámica. Si está utilizando DNS dinámico, elija Entrada DNS e ingrese su nombre de host y configuraciones como de costumbre.
A continuación, deberá elegir un proveedor de DNS para su VPN. yo recomiendo Google para la mayoría de los usuarios, ya que es gratis y fácil. OpenDNS y Norton ambos proporcionan implementaciones de DNS seguras si está interesado en bloquear cualquier posible fuga de DNS. También puedes elegir Personalizado si vas a manejar solicitudes DNS con Pi-hole.
El asistente de configuración le dirá cómo agregar usuarios en la línea de comandos. En el siguiente paso, instalaremos una aplicación web para ayudar a administrar usuarios. También puedes usar pivpn add.
Finalmente, haz clic en si abotone y reinicie su Raspberry Pi.
Instalar Pi VPN GUI
Pi VPN GUI es una herramienta web para Pi VPN. Es opcional, pero usarlo hace que administrar usuarios y agregar nuevos dispositivos sea mucho más fácil. Te recomiendo que lo instales.
Cada vez que agregue un usuario a PiVPN, generará un perfil * .ovpn. Puede usar Pi VPN GUI para crear la cuenta de usuario y facilitar la descarga del perfil.
Si elige no utilizar la interfaz gráfica de usuario de VPN de Pi, deberá agregar y administrar usuarios con pivpn add y pivpn eliminar comandos También tendrá que copiar manualmente los perfiles * .ovpn que se generan, generalmente utilizando una herramienta de línea de comandos como scp.
Preparándose para instalar Pi VPN GUI
Antes de instalar Pi VPN GUI, debe actualizar apt. Tendrá que agregar un repositorio para descargar todo el software que requiere la GUI de Pi VPN. Aquí te explicamos cómo hacerlo.
Use nano para editar la lista de fuentes de apt. El comando es:
sudo nano /etc/apt/sources.list
Agregue la siguiente línea a fuentes.lista donde puedas encontrar un lugar:
deb http://mirrordirector.raspbian.org/raspbian jessie main contrib non-free rpi
Eso le dirá a apt que está bien instalar paquetes de Debian Jessie, una versión anterior. Eso es necesario porque parte del software en el que se basa la GUI de VPN de Pi aún no se ha agregado a los repositorios de Debian..
Desafortunadamente, tener un enlace a una versión anterior en su fuentes.lista el archivo no es una práctica recomendada, a pesar de que lo necesitamos en este momento. Puede causar conflictos más adelante si elige instalar otro software. Es una buena idea eliminar la línea que acaba de agregar después de instalar estos paquetes de software.
A continuación, guarde y salga de nano. Actualice apt con el comando:
sudo apt-get update
Una vez completada la comprobación, instale los paquetes actualizados con el comando:
sudo apt-get upgrade
Eso es todo lo que necesita hacer para agregar el repositorio necesario a apt. Ahora, instale los requisitos previos para Pi VPN GUI con el siguiente comando:
sudo apt-get install git apache2 php5 libapache2-mod-php5 php5-mcrypt esperar geoip-bin
prensa Y cuando se le solicite, y deje que se ejecute el instalador. Cuando termine de instalar el software, deberá actualizar algunos archivos de configuración antes de poder instalar la GUI de Pi VPN.
Ahora que el software de requisito previo está instalado, debe eliminar la línea que agregó /etc/apt/sources.list y correr sudo apt update de nuevo.
Actualización de la configuración web
Pi VPN GUI es una aplicación web y necesita un servidor web apache para funcionar correctamente. Instalamos apache en el paso anterior, pero ahora hay que hacer algunos cambios antes de que la GUI de Pi VPN pueda ejecutarse en su servidor apache.
Primero, deberá cambiar la cuenta de usuario con la que se ejecuta Apache. El valor predeterminado es una cuenta no admitida, y necesitamos que se ejecute como usuario Pi en lugar. Edite el archivo de configuración de apache con el comando:
sudo nano /etc/apache2/apache2.conf
Desplácese hacia abajo hasta que vea la línea que dice Usuario $ (APACHE_RUN_USER) seguido por Grupo.
Cambiar los valores para Usuario y Grupo a Pi para ambos. Entonces presione Ctrl + X dejar de fumar y Y ahorrar.
A continuación, cambie el propietario de la / var / www directorio que usa Apache para almacenar sitios web. Puede darle al usuario Pi propiedad del directorio web utilizando este comando:
sudo chown pi: pi -R / var / www
Cuando hayas terminado, cambia a / var / www / html directorio con este comando:
cd / var / www / html
Debe completar la instalación de la GUI de Pi VPN desde ese directorio.
Descargar e instalar la GUI de Pi VPN
Después de todo ese trabajo configurando las cosas, en realidad es muy fácil descargar e instalar Pi VPN GUI. Todo lo que necesitas hacer es revisar el proyecto usando git. Si ha seguido, instalamos la utilidad git en un paso anterior.
Asegúrate de seguir en el / var / www / html directorio y ejecute el comando:
git clone https://github.com/AaronWPhillips/pivpn-gui
El comando usará git para clonar el directorio del proyecto de la GUI de Pi VPN en la raíz de su servidor web, haciéndolo disponible como una página web. Puede verificar si la instalación fue exitosa utilizando su navegador.
Conexión a la interfaz gráfica de usuario de Pi VPN
Ahora que la GUI de Pi VPN está instalada, puede abrirla en su navegador y usarla para administrar usuarios de Pi VPN. Instalé Pi VPN en mi Raspberry Pi con una dirección IP de 192.168.1.2, por lo que puedo encontrar Pi VPN GUI en http://192.168.1.2/pivpn-gui.
Debe usar la dirección IP que corresponde con su instalación y abrir la interfaz gráfica de usuario de Pi VPN en su navegador.
Podrá saber si se ha conectado correctamente cuando vea un mensaje de inicio de sesión. Si no puede iniciar sesión, deberá reiniciar su Raspberry Pi.
Por ahora, solo marque un enlace a Pi VPN GUI para que pueda volver a él fácilmente. El siguiente paso es configurar una conexión VPN saliente para cifrar su conexión a Internet. Si prefiere no registrarse en un servicio como IPVanish, puede pasar a configurar su enrutador y agregar usuarios.
Configurar una conexión VPN saliente
Si no configura una conexión VPN saliente, todo el tráfico de los dispositivos conectados a su VPN se conectará a Internet utilizando la dirección IP pública de su LAN. Dondequiera que se conecte, los sitios web pensarán que se está conectando desde su casa. Eso no siempre es malo; por ejemplo, es posible que desee ver Netflix cuando viaje al extranjero.
Pero para aprovechar al máximo Pi VPN, le recomiendo que use un proveedor VPN saliente y cree lo que se llama una conexión de “doble salto”.
La ventaja de una conexión VPN de doble salto es el cifrado completo de extremo a extremo para su Internet móvil cuando se conecta a un sitio a través de HTTPS. La seguridad adicional va más allá de solo tener dos túneles, ya que el servidor VPN saliente nunca ve la solicitud de origen.
En términos prácticos, eso significa que cualquier registro que guarde su proveedor de VPN no podrá identificar el dispositivo del que provino cualquier solicitud individual; todo se resuelve en su servidor VPN de Pi. Es otra capa de anonimato para todo lo que haces en línea..
Si está configurando Pi VPN solo para conectarse a su red doméstica de forma remota, puede omitir este paso y seguir adelante. Pero si está interesado en crear una conexión a Internet segura y anónima para sus teléfonos, computadoras portátiles, tabletas y otros dispositivos, debe usar una conexión VPN saliente junto con Pi VPN.
READER DEAL: IPVanish ofrece una prueba gratuita de 7 días para los clientes de Comparitech si aún no tiene un proveedor de VPN.
Usar un enrutador de puerta de enlace habilitado para VPN
Si ya tiene un enrutador de puerta de enlace que admite una conexión VPN saliente, su trabajo está hecho. Dado que todo el tráfico dejará su red doméstica encriptada por el enrutador, obtendrá una VPN de doble salto. En cuyo caso, puede detener y conectar a sus clientes..
Si está interesado en aprender cómo construir un enrutador habilitado para VPN, o si tiene uno que le gustaría configurar, tenemos guías para eso. Si ya tiene un enrutador habilitado para VPN y necesita configurarlo como un cliente VPN, eche un vistazo a cómo elegir un proveedor de VPN y configurar su enrutador.
El resto de nosotros tendremos que usar nuestro Pi para manejar la conexión saliente cifrada y el enrutamiento necesarios para crear un segundo salto VPN.
Usando IPVanish como una VPN saliente
La baja latencia de IPVanish lo convierte en una excelente opción si está configurando una conexión VPN de doble salto como esta, ya que su conexión está esperando en dos servidores VPN para manejar el tráfico. El proceso será el mismo para cualquier proveedor de VPN que publique perfiles OpenVPN para sus servidores..
Deberá descargar un perfil de inicio de sesión automático y el certificado digital para su proveedor de VPN. Si está utilizando IPVanish, esos archivos están disponibles para descargar aquí.
Una forma fácil de obtener los archivos que necesita en su servidor Pi VPN es conectarse a través de SSH y usar el wget comando para descargarlos de la web. Asegúrese de que su servidor Pi VPN esté conectado a Internet, luego cambie al directorio apropiado y descargue los archivos que necesita con estos comandos:
cd / etc / openvpn
sudo wget http://www.ipvanish.com/software/configs/ca.ipvanish.com.crt
sudo wget http://www.ipvanish.com/software/configs/ipvanish-US-Chicago-chi-a01.ovpn
Tenga en cuenta que debe cambiar la segunda URL para que coincida con el servidor IPVanish con el que desea conectarse. En mi caso, estoy usando un servidor IPVanish en Chicago.
Como se conectará a IPVanish automáticamente mediante el servicio OpenVPN, es importante cambiar el nombre del perfil de inicio de sesión * .ovpn que acaba de descargar. El servicio OpenVPN solo se conectará a los perfiles con la extensión de archivo * .conf. Use este comando para cambiar el nombre del archivo a outgoing.conf:
sudo mv /etc/openvpn/ipvanish-US-Chicago-chi-a01.ovpn /etc/openvpn/outgoing.conf
Ahora que los archivos se han descargado y preparado, ya está listo para configurar la conexión con su proveedor de VPN saliente.
Configurar la conexión IPVanish
Es más fácil realizar un seguimiento de dos conexiones VPN simultáneas si cambia el nombre de cada interfaz para reflejar lo que hace. Me gusta usar / dev / tun-entrante y / dev / tun-outgoing para referirse a las diferentes interfaces de red.
Cambiar el nombre de las interfaces también garantiza que las conexiones no cambien de nombre / dev / tun0 y / dev / tun1, dependiendo de cuál se conecte primero. Los nombres de los dispositivos son importantes para saber si desea poder configurar su firewall correctamente.
Puede cambiar el nombre de cada interfaz editando la configuración de conexión. Cada conexión OpenVPN tiene un archivo * .config asociado. Cambiar las primeras líneas en cada archivo cambia el nombre de la interfaz de red.
Comience editando la configuración de Pi VPN, ubicada en /etc/openvpn/server.conf, con el siguiente comando:
sudo nano /etc/openvpn/server.conf
Cambiar la primera línea de:
Dev Tun
A lo siguiente, insertando una nueva línea:
dev tun-entrante
tun de tipo dev
prensa Ctrl + X y entonces Y para guardar tus cambios. La próxima vez que Pi VPN se conecte, creará un dispositivo llamado / dev / tun-entrante.
Deberá editar el archivo de configuración entrante en /etc/openvpn/outgoing.conf del mismo modo. Ábrelo con este comando:
sudo nano /etc/openvpn/outgoing.config
Como antes, cambie la primera línea e inserte una segunda en la parte superior del archivo de configuración. Este debería leer:
dev tun-outgoing
tun de tipo dev
Pero la conexión VPN saliente también necesita otros cambios. Deberá señalarlo al certificado del servidor que descargó en un paso anterior y proporcionar su nombre de usuario y contraseña para que la VPN pueda conectarse automáticamente.
Edita tu outgoing.conf archivo para usar el certificado del servidor IPVanish. Cambia la línea que comienza con California leer:
ca /etc/openvpn/ca.ipvanish.com.crt
Luego actualice o agregue auth-user-pass para apuntar IPVanish a su archivo de contraseña, que crearemos pronto:
auth-user-pass / etc / openvpn / passwd
También se le debe decir a su conexión VPN saliente que no reenvíe el tráfico LAN. Deberá agregar esta línea al final de su outgoing.conf archivo para poder acceder a su red local a través de Pi VPN:
ruta 192.168.1.0 255.255.255.0 192.168.1.1
Recuerde usar la dirección IP adecuada para su LAN si es diferente a la mía anterior. Guarde sus cambios en /etc/openvpn/outgoing.conf en nano presionando Ctrl + X, luego Y.
Ahora, cree un archivo de contraseña que OpenVPN pueda usar para iniciar sesión en IPVanish con sus credenciales. El formato de este archivo no podría ser más simple, es solo su nombre de usuario en la primera línea y su contraseña en la segunda. Use este comando para crear el archivo y abrirlo para editarlo:
sudo nano / etc / openvpn / passwd
Ingrese su dirección de correo electrónico en la primera línea y su contraseña en la segunda, luego presione Ctrl + X, Y para guardar el archivo Ya que / etc / openvpn / passwd contiene sus credenciales en texto sin formato, es importante que proteja el archivo. Puede bloquear el acceso a / etc / openvpn / passwd utilizando chmod Me gusta esto:
sudo chmod +600 / etc / openvpn / passwd
Eso asegurará que solo el usuario root pueda leer o escribir passwd archivo, que es el nivel mínimo de seguridad que necesita al almacenar sus credenciales en texto sin formato.
Actualización de la tabla de enrutamiento de su Raspberry Pi
Antes de que pueda poner en línea la VPN saliente para asegurar su conexión a Internet, debe configurar su Raspberry Pi para enrutar el tráfico correctamente. Recuerde sustituir la dirección IP estática de su Pi si es diferente a la mía a continuación.
Necesitarás crear o editar / lib / dhcpcd / dhcpcd-hooks / 40-routes y agrega algunas líneas. Aquí está el comando:
sudo nano / lib / dhcpcd / dhcpcd-hooks / 40-routes
Agregue estas dos líneas al script:
ip rule add de 192.168.1.2 búsqueda 101
ruta IP agregar valor predeterminado a través de 192.168.1.1 tabla 101
Entonces presione Ctrl + X, Y para guardar tus cambios.
Ese es el único cambio que deberá realizar en la tabla de enrutamiento de su Raspberry Pi. Después de guardar los cambios y reiniciar su Pi, podrá ejecutar conexiones VPN entrantes y salientes al mismo tiempo.
Asegurando sus solicitudes DNS
Para que su conexión sea realmente segura, debe asegurarse de detener las fugas de DNS. Se produce una fuga de DNS cuando su conexión VPN segura busca sitios web utilizando un servidor DNS fuera de la red encriptada. Eso expone a sus clientes VPN a peligros como el registro de DNS y los ataques de intermediarios..
La solución es obligar a todos los clientes VPN entrantes a usar el servidor DNS seguro de su proveedor VPN saliente. En este caso, obligaré a mis clientes a usar los servidores DNS de IPVanish.
Para cambiar sus servidores DNS sin tener que reinstalar Pi VPN, deberá actualizar /etc/openvpn/server.conf. Ábralo para editar con este comando:
sudo nano /etc/openvpn/server.conf
Desplácese por el archivo hasta que vea las dos líneas que empujar Configuración de DNS para sus clientes VPN. Inicialmente instalé Pi VPN usando los servidores DNS de Google, por lo que las dos líneas que deben cambiarse en mi server.conf se parece a esto:
presione “dhcp-option DNS 8.8.8.8”
presione “dhcp-option DNS 8.8.4.4”
Si está utilizando IPVanish, cambie estas líneas para leer:
presione “dhcp-option DNS 198.18.0.1”
presione “dhcp-option DNS 198.18.0.2”
Si está utilizando un proveedor de VPN diferente, deberá buscar en línea para encontrar sus servidores DNS.
Una vez que haya editado el archivo, guárdelo con Ctrl + X, Y. Sus cambios entrarán en vigencia la próxima vez que se reinicie el servicio OpenVPN, y sus clientes VPN usarán los servidores seguros de IPVanish automáticamente.
Conectando a IPVanish
Antes de configurar OpenVPN para conectarse automáticamente a su proveedor de VPN saliente, debe probar la conexión. Desde la línea de comando, escriba:
servicio de sudo openvpn @ inicio saliente
La pantalla se llenará con un texto que le mostrará el estado de la conexión VPN. Doble verificación /etc/openvpn/outgoing.conf si tiene problemas para conectarse y asegúrese de que su nombre de usuario y contraseña sean correctos y en líneas separadas en / etc / openvpn / passwd.
Cuando te hayas conectado con éxito, desconéctate de la VPN presionando Ctrl + C. El último paso para crear una conexión VPN saliente es configurarla para que se inicie automáticamente.
Iniciar las conexiones VPN automáticamente
Una vez que su conexión se haya probado correctamente, debe configurar ambas conexiones VPN para que se inicien automáticamente. OpenVPN lo hace fácil al permitirle consultar cada conexión de acuerdo con el nombre del archivo de configuración.
Para comenzar, deberá editar el archivo de configuración global de OpenVPN con este comando:
sudo nano / etc / default / openvpn
Luego, descomenta esta línea:
AUTOSTART ="oficina en casa"
Y cámbielo para leer:
AUTOSTART ="servidor saliente"
Una vez que haya terminado, guarde sus cambios con Ctrl + X, Y y reinicie su servidor Pi VPN con el siguiente comando:
reinicio de sudo
Cuando su Raspberry Pi se reinicie, su servidor VPN Pi estará conectado al proveedor VPN saliente y listo para comenzar a manejar las conexiones entrantes.
Configuración del enrutador VPN Pi
La idea de una VPN es que es un túnel desde afuera de su red hacia adentro. Eso significa que necesitará configurar su enrutador para permitir ciertas conexiones. Hacemos esto usando reenvío de puertos, y puede ser muy fácil o un poco más difícil dependiendo de su enrutador.
Estoy usando un enrutador Linksys modelo de entrada para esta guía, pero todos los enrutadores de consumo admiten el reenvío de puertos. Su procedimiento puede ser un poco diferente, pero la mayoría de los fabricantes de enrutadores ofrecen guías de reenvío de puertos en la web.
Reenviar el puerto VPN
Ningún cliente VPN puede conectarse a su red a menos que reenvíe el puerto que especificó anteriormente. Normalmente, todas estas solicitudes son bloqueadas por su enrutador por razones de seguridad, pero tenemos que hacer una excepción especial. En este caso, es porque debemos permitir que los clientes VPN se conecten a Pi VPN a través de Internet.
Comience iniciando sesión en su enrutador. En la mayoría de los casos, puede hacerlo haciendo clic aquí o aquí. De lo contrario, busque la dirección IP de su enrutador y péguela en un navegador.
Una vez que haya iniciado sesión, haga clic en los menús hasta que encuentre el reenvío de puertos. En mi caso, está en Aplicaciones y juegos: Configuraciones de cortafuegos.
Haga clic para agregar un nuevo puerto. Deberá saber el número de puerto que seleccionó anteriormente. También necesitará la dirección IP estática de su servidor Pi VPN. En mi caso, eso es puerto 1134 y 192.168.1.2.
Hacer clic Salvar cuando haya configurado el reenvío de puertos. Ahora los clientes VPN podrán iniciar sesión cuando estén fuera de la red local.
Nota de los clientes de Comcast Xfinity
No pude hacer que mi enrutador Comcast Xfinity reenvíe los puertos correctamente. El problema era que mi enrutador tenía un sistema de detección de intrusos (IDS) incorporado, que se usa un poco como un firewall para detener ataques maliciosos en su red doméstica. Los IDS no se pueden desactivar y la conexión a una VPN a través de su enrutador Comcast lo activa, bloqueando la conexión.
Mi solución fue poner el enrutador Xfinity en modo puente y conectarle un enrutador inalámbrico. Luego pude usar el enrutador inalámbrico para activar el reenvío de puertos y permitir conexiones a mi VPN. Si eres un usuario de Comcast que tiene problemas con el reenvío de puertos, deja un comentario a continuación para obtener ayuda.
Administrar usuarios de Pi VPN
Todos los dispositivos que se conectan a su VPN deben tener una cuenta de usuario asociada. Cuando cree cada cuenta, Pi VPN generará un perfil OpenVPN. Más tarde, usará esos perfiles * .ovpn en sus dispositivos para configurarlos automáticamente.
Crear perfiles con Pi VPN GUI
Aquí le mostramos cómo agregar usuarios a Pi VPN. Cuando termine, podrá descargar el perfil necesario para conectarse a su red privada.
Haga clic en el Crear perfil de VPN botón para agregar un nuevo usuario.
Luego escriba un nombre de usuario y haga clic en el Crear perfil botón. Recomiendo nombrar a cada usuario después del dispositivo con el que planea conectarse. Más adelante, facilita saber de un vistazo qué dispositivos están conectados a la VPN.
Se abre una ventana de estado para que pueda seguir el proceso de creación de perfil. La generación de claves criptográficas puede llevar mucho tiempo, especialmente si está utilizando un cifrado de 4096 bits.
Pi VPN GUI a veces lo llevará a un mensaje 404 después de crear con éxito un perfil. Haga clic en el pivpn enlace en la esquina superior izquierda para volver al navegador de perfil.
Verás un camino hacia tu Perfil de cliente OpenVPN, y un botón para Descargar eso. Puedes hacer clic en el Revocar cliente botón para eliminar una cuenta de usuario. Revocar una cuenta hará que el cliente se desconecte inmediatamente.
Haga clic en el Crear perfil de VPN hasta que tenga un perfil de cliente para cada dispositivo que desee poder conectar a su VPN. Por ejemplo, tenía perfiles para mi teléfono y tableta, junto con una Raspberry Pi que utilizo para transmitir TV.
Una vez que tenga perfiles para cada dispositivo, puede pasar al siguiente paso y conectarse a su VPN.
Eliminar perfiles con Pi VPN GUI
En ocasiones, tendrá un problema con un perfil o desea eliminarlo de su VPN. Puede hacerlo revocando al cliente en Pi VPN GUI.
Abra Pi VPN GUI e inicie sesión. Puede ver una lista de perfiles activos en la pantalla principal.
Haga clic en el Revocar perfil botón para el dispositivo que desea eliminar y se eliminará el perfil.
Cuando actualiza Pi VPN GUI, puede ver que el perfil se ha eliminado. Tenga en cuenta que esto no elimina el antiguo archivo * .ovpn de su disco duro. Deberá eliminar el archivo manualmente con este comando:
rm ~ / ovpns / profile_name.conf
Asegúrese de sustituir nombre_perfil.conf con el nombre de su perfil de inicio de sesión automático OpenVPN.
Incluso si no elimina los perfiles revocados, no existe ningún riesgo de seguridad. Nunca podrá iniciar sesión con un perfil revocado, pero le recomiendo que los elimine para mantener las cosas limpias.
Instalar un cliente VPN Pi móvil
Si va a conectarse a Pi VPN en un dispositivo móvil, le recomiendo OpenVPN Connect, el cliente oficial. Es completamente gratuito y se integra muy bien con iOS y Android.
El primer paso es abrir App Store o Play Store, dependiendo de su dispositivo. En cualquier caso, busque OpenVPN Connect. Acepta los términos e instala la aplicación como siempre.
Ver también: Cómo instalar el cliente y servidor OpenVPN en un enrutador DD-WRT
Importar el perfil de inicio de sesión automático de VPN de Pi
Deberá asegurarse de estar conectado a su red doméstica a través de wifi, luego abrir Pi VPN GUI en un navegador. Recuerde que la ruta se configuró mucho antes e incluye la dirección IP local de su servidor Pi VPN. En mi caso, es http://192.168.1.2/pivpn-gui/.
Inicia sesión con el nombre de usuario Pi y la contraseña correcta.
Usuarios de iOS: Tenga en cuenta que Pi VPN GUI solo funciona correctamente en Safari. Los usuarios de Android pueden conectarse con el navegador de su elección.
Encuentre el perfil que creó para su dispositivo móvil y haga clic en el Descargar botón.
Use OpenVPN connect para importar el archivo * .ovpn. Cuando se inicie OpenVPN Connect, haga clic en el verde plus. Su conexión Pi Pi está lista para conectarse.
Conectando a Pi VPN
Todo lo que queda es abrir el túnel a Pi VPN usando la aplicación OpenVPN Connect.
En la aplicación, haga clic en el botón de alternar para iniciar la conexión. Debería ponerse verde y su teléfono mostrará una insignia de VPN en el área de notificación.
Puede verificar para asegurarse de que su conexión VPN esté funcionando visitando un sitio como http://www.ipaddress.com. Si no está agregando una computadora a su VPN, ha terminado y puede pasar a la siguiente sección.
Instalación de un cliente Pi VPN en su computadora
Hay muchos clientes VPN diferentes disponibles para Windows y Mac, pero recomiendo el cliente oficial de OpenVPN. Es gratis y fácil de instalar, y le permite importar su conexión VPN Pi con solo unos pocos clics.
Descargue el cliente oficial aquí e instálelo como lo haría con cualquier otro programa.
Importar el perfil de inicio de sesión automático de VPN de Pi
Si la computadora que está agregando a la VPN está en su LAN, puede descargar el perfil de inicio de sesión automático desde la interfaz gráfica de usuario de Pi VPN. Navegue hasta la ruta donde instaló la GUI Pi VPN anteriormente, en mi caso, que es http://192.168.1.2/pivpn-gui/.
Si la computadora que está agregando Pi VPN está en una ubicación remota, no podrá conectarse directamente a Pi VPN GUI. En ese caso, deberá descargar el perfil de inicio de sesión automático utilizando un dispositivo en la LAN. Una vez que se haya descargado, adjúntelo a un correo electrónico y envíelo a su computadora remota. Puede descargar el perfil de su correo electrónico y continuar como siempre.
Una vez que haya descargado el perfil de inicio de sesión automático, haga clic con el botón derecho en el icono de OpenVPN en la bandeja del sistema y haga clic en Importar.
Conectando a Pi VPN
Después de agregar la conexión Pi VPN, haga clic con el botón derecho en el icono de OpenVPN en la bandeja del sistema y haga clic en el nombre del perfil para conectarse.
Verá que aparece una ventana de estado con el registro de conexión. Si su computadora no se conecta correctamente, puede copiar y pegar el código de error para averiguar qué salió mal. En la mayoría de los casos, si no puede conectarse a su VPN, es porque el reenvío de puertos no se habilitó correctamente.
Una vez conectado, asegúrese de que la VPN esté funcionando visitando un sitio web como http://www.ipaddress.com.
Más ideas para Pi VPN y su red
Tener un servidor al que se pueda acceder desde cualquier lugar lo convierte en el candidato perfecto para muchos proyectos diferentes. Aquí hay algunas ideas para su Raspberry Pi ahora que ha terminado por completo de configurar su servidor VPN Pi.
Bloquee el firewall
Raspberry Pi se envía con un firewall muy permisivo por diseño, pero es una buena idea ser más restrictivo cuando está ejecutando un servidor VPN.
Aquí hay algunas reglas de muestra para comenzar. Recuerde reemplazar el PROTOCOLO y PUERTO con lo que has elegido para tu servidor Pi VPN. Líneas que comienzan con # # son comentarios y no es necesario escribirlos.
# Acepte tráfico entrante en todas las interfaces, pero limite eth0 a VPN solamente
sudo iptables -A INPUT -i eth0 -m state –state NEW -p PROTOCOL –dport PORT -j ACCEPT
sudo iptables -A ENTRADA -i tun-entrante -j ACEPTAR
sudo iptables -A ENTRADA -i tun-saliente -j ACEPTAR
# Permitir el tráfico de reenvío entre subredes
sudo iptables -A ADELANTE -i tun-entrante -j ACEPTAR
sudo iptables -A ADELANTE -i tun-outgoing -j ACCEPT
# Tráfico directo a través de eth0
sudo iptables -A ADELANTE -i tun-entrante -o eth0 -m estado – estado RELACIONADO, ESTABLECIDO -j ACEPTAR
sudo iptables -A ADELANTE -i tun-saliente -o eth0 -m estado – estado RELACIONADO, ESTABLECIDO -j ACEPTAR
# Reenviar tráfico a través de tun-entrante
sudo iptables -A ADELANTE -i eth0 -o tun-entrante -m estado – estado RELACIONADO, ESTABLECIDO -j ACEPTAR
sudo iptables -A ADELANTE -i tun-saliente -o tun-entrante -m estado – estado RELACIONADO, ESTABLECIDO -j ACEPTAR
# Reenviar tráfico a través de tun-outgoing
sudo iptables -A ADELANTE -i eth0 -o tun-saliente -m estado – estado RELACIONADO, ESTABLECIDO -j ACEPTAR
sudo iptables -A ADELANTE -i eth0 -o tun-saliente -m estado – estado RELACIONADO, ESTABLECIDO -j ACEPTAR
#MASQ tun-entrante como eth0
sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
Una vez que haya terminado, use este comando para guardar sus cambios:
sudo iptables-persistente guardar
Recuerde que puede enumerar las reglas de iptables actualmente activas con el comando:
sudo iptables -L
Cambiar a DNS dinámico
Dynamic DNS add le permite usar un nombre de host en lugar de una dirección IP para conectarse a su servidor VPN Pi, incluso si no tiene una dirección estática de su ISP. Por ejemplo, puede usar DNS dinámico para redirigir vpn.websitename.com a su servidor VPN. Si está pensando en alojar servicios web o correo electrónico, en muchos casos puede ejecutar todo desde el mismo Pi.
Es mejor volver a ejecutar el instalador de Pi VPN si va a cambiar a DNS dinámico. Pero una vez que haya actualizado su configuración, podrá acceder a su servidor Pi VPN en la URL personalizada que seleccionó.
Cambiar a DNS dinámico elimina la necesidad de volver a emitir los perfiles de cliente de Pi VPN cada vez que cambie su dirección IP pública.
Configurar un servidor de archivos
Su Raspberry Pi es un gran servidor de archivos Samba. Puede conectar algunas unidades USB, instalar lvm2 para crear un sistema de archivos gigante que abarque todos los discos y compartir sus archivos con clientes VPN.
Habilitar Samba en su VPN requiere un poco de trabajo, pero es extremadamente útil poder acceder a sus archivos, música y películas desde sus dispositivos móviles.
Instale el agujero Pi
Cuando configura el proveedor de DNS durante la instalación de Pi VPN, puede instalar fácilmente Pi-hole, cambiar su proveedor de DNS personalizado a 127.0.0.1 y bloquear los anuncios móviles automáticamente a través de su VPN.
Ejecutar Pi-hole en una conexión VPN es la mejor manera de bloquear anuncios móviles sin rootear su teléfono. Incluso puede desactivar los anuncios pre-roll de Youtube y dejar de ver productos patrocinados en Amazon. Eche un vistazo a la guía de Comparitech sobre el agujero Pi para obtener más información..
Ejecuta una caja de semillas
Si tiene una VPN saliente en funcionamiento, su conexión a Internet está completamente encriptada. Tener una conexión de Internet anónima es ideal para torrents, y convertir su servidor VPN Pi en una caja de semillas con transmisión es realmente fácil.
Como la conexión ya está encriptada, todo lo que tiene que hacer es instalar Transmission y el cliente web. Podrás agregar torrents desde tu teléfono o computadora portátil, y se descargarán en casa.
Manos a la obra con Pi VPN
No creo contar ningún secreto cuando digo que soy un gran nerd. Mi red doméstica está llena de dispositivos inteligentes como luces Hue, un termostato Nest y un par de altavoces Sonos. Tengo un servidor de archivos con Transmission, un servidor Plex, dispositivos que ejecutan Kodi, y un montón de probabilidades y termina como una impresora de red y un servidor DNS con Pi-hole para bloquear anuncios móviles.
Si su red doméstica es como la mía, le diría que Pi VPN cambia las reglas del juego. No solo logré apagar todos los puertos, excepto uno en mi firewall, sino que mi Internet móvil está completamente encriptado y puedo acceder a mi LAN desde cualquier lugar. La seguridad de mi red ha mejorado drásticamente, y no tengo que configurar el reenvío de puertos en mi enrutador cada vez que agrego un nuevo dispositivo.
Una vez que haya pasado una tarde preparando las cosas, Pi VPN es casi increíblemente bueno. Muchos proyectos para Raspberry Pi son llamativos y divertidos, pero en última instancia bastante inútiles. Me complace informar que Pi VPN es una gran excepción.
“Raspberry Pi” de Lucasbosch con licencia bajo CC 3.0
Me parece muy interesante la idea de utilizar Pi VPN para aumentar la seguridad móvil y obtener acceso a la red doméstica desde cualquier lugar. Aunque configurar un servidor VPN puede ser difícil, Pi VPN convierte la Raspberry Pi en un servidor VPN barato y efectivo que hace la mayor parte del trabajo por nosotros. Además, con unos pocos pasos adicionales, podemos habilitar el cifrado de extremo a extremo y ejecutar toda nuestra Internet móvil a través de un túnel seguro y anónimo. Es importante elegir un proveedor de VPN seguro y con buen ancho de banda y latencia, y en este caso, IPVanish parece ser una buena opción. En general, creo que Pi VPN es una excelente solución para aquellos que buscan aumentar la seguridad y el acceso a su red doméstica.