Los clientes de EMnify pueden crear su propia Red Privada Virtual para sus dispositivos móviles IoT/M2M equipados con SIM EMnify. El tráfico de datos se intercambiará entre los dispositivos y el servidor de aplicaciones a través de un túnel OpenVPN, permitiendo la comunicación directa con las IPs de los dispositivos móviles (no se aplica NAT).
El túnel se establece entre la Red Central de EMnify y el gateway o servidor VPN del cliente.
Cualquier tráfico intercambiado con los dispositivos móviles es encriptado antes de ser transmitido a través de la Internet pública, añadiendo así una capa adicional de seguridad y privacidad. Para ello no es necesario instalar ningún software VPN en el dispositivo ni realizar ningún cambio de configuración, el APN EMnify predeterminado también soporta flujos VPN.
Configuración del Perfil de servicios
Asegúrese que el perfil de servicios asignado a los endpoints que desea accesar usando la VPN, tiene la configuración correcta: elija la salida a internet con la opción de VPN.
Configurando el cliente OpenVPN en Linux/Ubuntu
Instalar el software OpenVPN
Instalar el paquete de openvpn
|
Log in with your user account on the EMnify Portal and select the "Link" Icon on the top/right. From there you can download a pre-configured configuration file, the filename is client.conf
Download and Install VPN Configuration File
Please store that file on your server in the folder /etc/openvpn.
Create Credentials for Authentication
In the next steps you need to create a file called credentials.txt in the folder /etc/openvpn. You can choose to use your user credentials to authenticate or to use an application token (recommended).
Authentication with User Credentials
The content of the credentials.txt must be just two lines, first line your username and second your password.
Inicie sesión con su cuenta de usuario en el Portal EMnify y seleccione el icono "Link" en la parte superior derecha. Desde allí puede descargar un archivo de configuración preconfigurado, el nombre del archivo es client.conf
Descargar e instalar el archivo de configuración de VPN
Por favor, guarde ese archivo en su servidor en la carpeta /etc/openvpn.
Crear credenciales para la autenticación
En los siguientes pasos debe crear un archivo llamado credentials.txt en la carpeta /etc/openvpn. Puede optar por utilizar sus credenciales de usuario para autenticarse o utilizar un token de la aplicación (recomendado).
Autenticación con credenciales de usuario
El contenido de credentials.txt debe ser de sólo dos líneas, la primera línea su nombre de usuario y la segunda su contraseña.
|
Autenticación con token de aplicación
Si no desea almacenar sus credenciales, también puede elegir introducirlas cada vez que se establezca el túnel VPN. Si prefiere esta opción, comente en la línea "auth-user-pass /etc/openvpn/credentials.txt" del archivo client.conf.
Cuando ejecute el cliente OpenVPN en un gateway VPN o servidor de aplicaciones, se recomienda utilizar un token de aplicación. En este caso, la primera línea del archivo credentials.txt debe rellenarse con el identificador de la organización EMnify y en lugar de la contraseña se almacena el token de la aplicación.
Puede crear tokens de aplicación al iniciar sesión en el Portal EMnify, seleccionar el icono "Link" en la parte superior derecha y luego "Create New Application Token". Copie y pegue el token en el archivo de credenciales.
El contenido del archivo de credenciales tendría el siguiente aspecto
|
Al iniciar sesión en el Portal EMnify, se mostrarán estos datos en la configuración de la VPN.
Protección del archivo de credenciales
Debe mantener el archivo credentials.txt sólo legible para root y no por otros usuarios de su servidor. Puede asegurar esto con los siguientes comandos:
|
Inicio y supervisión de la conexión OpenVPN
Ahora puede iniciar el cliente VPN ejecutando el siguiente comando
|
El demonio openvpn iniciará sesión en /var/log/syslog, si todo funciona así lo desea:
|
Encontrar la IP privada estática de su cliente VPN
El servidor EMnify OpenVPN asignará una dirección IP estática a la interfaz tun de su cliente VPN, esta IP también permanecerá igual cuando su cliente VPN se reconecte o si mueve el túnel a una máquina diferente. Así que puedes usarlo en tus dispositivos móviles para direccionar tu aplicación, sin embargo nunca debes configurar la IP directamente en tus dispositivos, sino usar un DNS para resolverlo.
Una vez que el túnel es establecido usted puede ver esa dirección IP en su interfaz de tun:
|
En este ejemplo la dirección IP es 10.64.0.224
Pruebas exitosas de conectividad de datos
Si el túnel VPN se establece correctamente, podrá conectarse directamente a las direcciones IP privadas de sus dispositivos móviles.
Para probar puedes elegir cualquiera de tus endpoints que como sesión de datos actualmente activa, para acceder al Portal EMnify y seleccionar uno de tus endpoints, en los detalles verás si está actualmente online o no y verás la dirección IP que tiene asignada.
Ahora podrá hacer ping a esa dirección IP privada:
|
Para que esto funcione, su dispositivo necesita ejecutar una pila de protocolo IP que esté respondiendo a la petición de eco ICMP, puede que no sea el caso de los dispositivos embebidos que implementan sólo una funcionalidad parcial de esta pila de protocolo IP.
Podrá utilizar cualquier protocolo de red, por ejemplo, si su dispositivo está ejecutando un demonio sshd, podrá acceder a él a través de ssh.
Habilitación de acceso para servidores detrás del cliente VPN
Si tiene varios servidores detrás de su puerta de enlace VPN que necesitan comunicarse con su dispositivo móvil, puede aplicar enmascaramiento utilizando iptables para ocultarlos detrás de la única dirección IP de su cliente VPN.
Primero necesita habilitar el reenvío IP en su gateway VPN (si no está ya activo) editando su /etc/sysctl.conf y configurando net.ipv4.ip_forward=1, después cargue la configuración con sudo sysctl -p /etc/sysctl.conf
Después de eso necesita habilitar el enmascaramiento para la interfaz tun ejecutando
|
También puede reenviar conexiones que llegan a puertos específicos a un servidor de aplicaciones detrás de su gateway VPN utilizando DNAT, por ejemplo, para reenviar a un servidor HTTP interno con IP 192.168.100.21 use:
|
Si desea que estos ajustes sean persistentes puede utilizar el paquete iptables-persistent.
Comentarios
0 comentarios
Inicie sesión para dejar un comentario.