LinuxParty
OpenVPN es la mejor opción para la protección de redes a través de redes no confiables. Hoy vamos a aprender de una manera rápida a configurar OpenVPN para que pueda acceder de forma segura su servidor
Una breve nota sobre las VPN: hay muchas VPNs comerciales que no sirven para la protección. Son poco más que los sitios Web SSL protegidos, porque confían en todos los clientes. Un verdadero VPN (red privada virtual) conecta dos puntos terminales de confianza a través de redes no confiables. No se puede iniciar sesión desde cualquier PC al azar, y esto es bueno porque (supuestamente) se entiende que acceder a su red privada desde un huésped infectado es un mal que hay que evitar, no importa cuán segura sea la conexión. Así que hay que configurar tanto el servidor como el cliente.
OpenVPN Quickstart
Se necesitan dos ordenadores en diferentes subredes, como un PC por cable e inalámbrica en la misma red (o un par de invitados Linux en VirtualBox), y lo que necesita saber son las direcciones IP de ambos equipos. Vamos a llamar a nuestro ejemplo ordenadores Studio y Shop. Instale OpenVPN en ambos. OpenVPN se incluye en la mayoría de distribuciones de Linux, por lo que puede instalarlo con su gestor de paquetes favorito. Este ejemplo es para Debian, Ubuntu, y sus múltiples descendientes:
$ sudo apt-get install openvpn openvpn-blacklist
En Fedora, RedHat, etc..
$ sudo yum install openvpn openvpn-blacklist
Si los nombres no coinciden, haga una busqueda en Debian/Ubuntu, etc con "apt-cache search openvpn", y en RedHat/CentOS/Fedora con "yum search openvpn"
Así se instalan el servidor y un pequeño programa para comprobar la lista negra de claves comprometidas. Debe instalar el corrector lista negra! Debido a que una Debian distribuyó una versión rota de OpenSSL que tenía un generador de números aleatorios roto, por lo que las claves creadas con este se supone que son demasiado vulnerables a la confianza. El generador de números aleatorios no era al azar, pero predecible. Esto ocurrió allá por 2008, y todos los que utilizan el OpenSSL defectuosos debían perseguir y reemplazar sus claves débiles. A pesar de que han pasado más de cinco años, se sigue recomendando el cambio
Ahora vamos a probarlo mediante la creación de un túnel sin cifrar entre los dos equipos. Primero haga ping a cada máquina para asegurarse de que están hablando el uno al otro. A continuación, asegúrese de que OpenVPN no se está ejecutando, ya que vamos a iniciarlo manualmente:
$ ps ax | grep openvpn
Si es así, acabe con él. Digamos que la dirección IP del estudio es 192.168.1.125, y la tienda de es 192.168.2.125.
Abrir un túnel sin cifrar de Estudio a la tienda:
$ sudo openvpn --remote 192.168.2.125 --dev tun0 --ifconfig 10.0.0.1 10.0.0.2
Luego de tienda en Studio:
$ sudo openvpn --remote 192.168.1.125 --dev tun0 --ifconfig 10.0.0.2 10.0.0.1
Al realizar una conexión correcta verás algo como esto:
Wed Oct 16 2013 ******* WARNING *******: all encryption and authentication features disabled -- all data will be tunnelled as cleartext Wed Oct 16 2013 TUN/TAP device tun0 opened Wed Oct 16 2013 do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0 Wed Oct 16 2013 /sbin/ifconfig tun0 10.0.0.1 pointopoint 10.0.0.2 mtu 1500 Wed Oct 16 2013 UDPv4 link local (bound): [undef] Wed Oct 16 2013 UDPv4 link remote: [AF_INET]192.168.2.125:1194 Wed Oct 16 2013 Peer Connection Initiated with [AF_INET]192.168.2.125:1194 Wed Oct 16 2013 Initialization Sequence Completed
"La Secuencia de inicialización se ha completado", son las palabras mágicas que confirmen que lo hiciste bien. Usted debe poder hacer ping a un lado a otro con las direcciones del túnel, ping 10.0.0.1 y ping 10.0.0.2 . Cuando se genera el túnel puede usar cualquier direcciones IP que desea que no se superponga con la red existente. Para cerrar el túnel pulse Ctrl+c .
Sólo por diversión abra una sesión SSH sobre el túnel. La figura 1 muestra un inicio de sesión SSH éxitoso a través de un túnel VPN, y también muestra el mensaje de fantasía.
$ ssh carla@10.0.0.2
Figura 1: Una sesión de SSH éxito a lo largo de un túnel VPN y un MOTD .
¡Hurra, funciona!
Cifrado túnel VPN
Todo esto es divertido y emocionante, pero inútil sin cifrado, por lo que va a crear una configuración de clave estática simple. No es tan fuerte como una infraestructura de clave pública apropiada (PKI) con certificados raíz y revocaciones y todas esas cosas buenas, pero es una solución suficientemente buena para el nerd solitario que necesita llamar a casa desde la calle. OpenVPN incluye un comando para crear la clave estática, por lo que crear un directorio para almacenar la clave, cree la clave, y que sea de sólo lectura para el propietario del archivo:
$ sudo mkdir /etc/openvpn/keys/ $ sudo openvpn --genkey --secret /etc/openvpn/keys/static.key $ sudo chmod 0400 /etc/openvpn/keys/static.key
Esta es una clave de texto sin formato que se puede abrir en un editor de texto y verla si tienes curiosidad, y se puede llamarla como quiera, usted no tiene que llamarla "static.key". Copiar esta clave de ambos equipos -sí, la misma clave. No es un par de claves pública y privada, sólo una clave compartida única-.
Ahora vamos a crear algunos sencillos archivos de configuración de barebones para cada equipo. (En Debuntu etc no hay archivos de configuración por defecto, sino más bien una gran cantidad de archivos de ejemplo en /usr/share/doc/openvpn/ .) En mi pequeña prueba Studio es el servidor, y la tienda es el portátil que ingresa en el servidor. Mi archivo de configuración del servidor es /etc/openvpn/studio.conf , y esto es todo lo que tiene:
# config for Studio dev tun ifconfig 10.0.0.1 10.0.0.2 secret /etc/openvpn/keys/static.key
Hacer este archivo de lectura y escritura sólo para el dueño del archivo:
$ sudo chmod 0600 /etc/openvpn/studio.conf
El archivo de configuración en el cliente es similar, con la adición de la dirección de IP del servidor:
# config for Shop dev tun ifconfig 10.0.0.2 10.0.0.1 secret /etc/openvpn/keys/static.key remote 192.168.1.125
Tenga en cuenta el orden de las direcciones IP en la línea ifconfig, porque tienen que estar en el orden de los locales> remoto. Ahora el fuego de OpenVPN en el servidor, especificando el archivo de configuración del servidor, y hacer lo mismo en el cliente:
$ sudo openvpn /etc/openvpn/studio.conf $ sudo openvpn /etc/openvpn/shop.conf
Verá la misma "secuencia de inicialización Completado" para una conexión exitosa, y también se debe buscar la ausencia de este mensaje, que debería haber aparecido cuando creó su túnel sin cifrar:
******* WARNING *******: all encryption and authentication features disabled
Firewalls y direcciones IP dinámicas
Sí OpenVPN es fácil de configurar. Los mayores problemas se trata de servidores de seguridad y direcciones IP dinámicas. Hay skillion distintos cortafuegos en el mundo, por lo que deberán dejar como su tarea de encontrar la manera de conseguir a través de él con seguridad. OpenVPN quiere puerto 1194, y luego va a querer tener una regla de reenvío que apunta al equipo al que desea acceder.
Las direcciones IP dinámicas son otra molestia. Dyn.com es una forma barata de gestionar la asignación de IP dinámica de su ISP. O usted podría ser capaz de pagar su ISP unos pocos dólares para obtener una dirección estática.
-
Seguridad
- Drones, vigilancia y reconocimiento facial: una startup llamada 'Sauron' presenta un sistema de seguridad para el hogar de estilo militar
- Conexión Segura NFS en Linux, Tunelizar NFS sobre SSH y Configuración de NFS sobre SSH para Mayor Seguridad
- ¿Olvidó su contraseña? Cinco razones por las que necesita un administrador de contraseñas
- Cómo limitar las conexiones SSH (puerto TCP 22) con ufw en Ubuntu Linux
- Utilizar ssh sin contraseña con ssh-keygen y ssh-copy-id
- Millones de teléfonos móviles podrían ser vulnerables a la vigilancia del gobierno chino
- Cómo limitar las conexiones SSH a la red local en Linux
- Los televisores inteligentes son como un «caballo de Troya digital» en los hogares
- Snort para Windows, detección de Intrusos y seguridad.
- Detección de Intrusiones con las herramientas: BASE y Snort.
- El Sistema de Detección de Intrusos: Snort. ( Windows y Linux )
- Configuración con Ejemplos de Snort para Windows, detección de intrusiones
- ¿El gobierno de EE. UU. ignoró la oportunidad de hacer que TikTok fuera más seguro?
- ¿Qué es SSH y cómo se utiliza? Los conceptos básicos de Secure Shell que necesitas saber
- Asegurar memcached del servidor, para evitar amplificar ataques DDoS