SlideShare una empresa de Scribd logo
1 de 12
Descargar para leer sin conexión
Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com
Conexión Segura a un VPS mediante una VPN SSL
Introducción:
Para asegurar la administración remota de un servidor privado virtual (Virtual Private
Server al cual llamaremos VPS de ahora en adelante) o una instancia virtual en la nube,
es recomendable establecer una conexión encriptada primero. Esto lo podemos hacer
mediante una VPN o consola SSH. La ventaja de una conexión mediante VPN es que
la misma dirige todo el tráfico mediante el túnel encriptado mientras que la conexión SSH
solamente lo haría por medio de la creación de túneles.
Al utilizar una conexión mediante una VPN SSL como OpenVPN estamos utilizando
solamente un puerto TCP, el 443, el cual es compartido por los servicios Web del
servidor.
Para efectos de este documento estaremos usando un servidor VPS con acceso de root
y les estaremos dando las siguientes recomendaciones para una conexión lo más segura
posible.
El sistema operativo utilizado en el VPS es el Ubuntu 16.04 LTS, y para las conexiones
estaremos usando el cliente SSH para SmartTTY http://smartty.sysprogs.com/ para
sistemas operativos Windows.
En este artículo se asume que el lector conoce como conectarse remotamente al servidor
VPS mediante SSH por lo que obviamos esa parte.
Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com
1. Actualización del sistema operativo Ubuntu:
Para actualizar el sistema operativo Ubuntu debemos ejecutar los siguientes
comandos
Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com
Este comando actualiza la lista de paquetes disponibles y sus versiones, pero no
instala o actualiza ningún paquete. Esta lista la coge de los servidores con
repositorios que tenemos definidos en el archivo /etc/apt/sources.list.
Después de ejecutado el comando anterior, se ejecuta el siguiente comando
Este comando instala las nuevas versiones los paquetes disponibles en la lista
definida en /etc/apt/sources.list.
2. Cambiar la clave del usuario root y cambiar el usuario root por un usuario con
menos privilegios para el acceso remoto.
Para cambiar la clave del usuario root debemos ejecutar
Aquí debemos introducir la clave en dos ocasiones para que sea almacenada
correctamente.
Después podemos agregar el usuario que estaremos usando en lugar de root para
conectarnos al servidor.
Con este comando agregamos al usuario, y el mismo comando nos pedirá
información del usuario como la clave y algunos datos del mismo. Adicionalmente
creara un grupo y carpeta de usuario.
Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com
3. Modificar la configuración del archivo /etc/ssh/sshd_config para evitar el
acceso por root y cambiar el puerto de conexión.
Para esto entramos a editar el archivo, en nuestro caso usaremos el editor nano.
Dentro del archivo de configuración recomendamos cambiar las siguientes opciones:
Port: es el puerto TCP al cual se conectara remotamente
ListenAddress: la dirección IP que tendrá abierto el puerto definido anteriormente y
que permitirá conexiones. Debe ser un IP activo del VPS. En este caso
recomendamos un IP privado del rango de la VPN que se creara posteriormente. Por
ahora lo dejaremos en el defecto 0.0.0.0 que indica que puede recibir conexiones de
cualquier dirección IP. Después de configurada la VPN podemos cambiar esta
dirección por una privada.
Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com
La siguiente opción a cambiar es la siguiente:
PermitRootLogin: originalmente esta en Yes, cambiar a no.
Agregar la línea AllowUsers y colocar al lado el nombre del usuario que se creó en
el segundo paso.
Después de realizados los cambios hay que salvar la configuración.
4. Instalación de la VPN SSL (OpenVPN)
Para la conexión remota a la administración usaremos una VPN SSL. Esto permite
utilizar el puerto 443 para la conexión desde el Internet. Estaremos usando el
producto OpenVPN Access Server que está basado en OpenVPN. Este paquete
contiene conexiones para dos usuarios lo que sería suficiente para la administración.
Para instalar este paquete en Ubuntu 16.04 debemos descargar el instalador genérico
para DEBIAN del sitio https://openvpn.net/index.php/access-server/download-
openvpn-as-sw/113.html?osfamily=Ubuntu
Para instalar nos ubicamos en la carpeta /tmp y ejecutamos el siguiente comando
Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com
Esto descargara la aplicación desde Internet. El nombre debe corresponder a la
última versión disponible en el repositorio.
Para instalar la aplicación se ejecuta el siguiente comando:
El último comando que se debe ejecutar es para asignar una clave segura al usuario
openvpn que es el administrador por defecto de la VPN.
Para acceder a la administración del VPN se utiliza el siguiente URL:
https://direcion-ip-publica:943/admin
Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com
La administración del OpenVPN está por ahora fuera de este documento por lo cual
instamos al lector a buscar referencias sobre cómo crear usuarios. Posteriormente
haremos un artículo detallado sobre el mismo. Como referencia dejamos el enlace
oficial del sitio web de OpenVPN.
https://openvpn.net/index.php/access-server/docs.html?id=229 .
Para descargar el cliente OpenVPN se entra a la dirección pública
Se coloca el usuario y la clave y se escoge la opción Login de la lista desplegable y
se presiona GO.
Después de entrar podrá encontrar la página con todos los clientes disponibles que
puede usar para conectarse.
Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com
La licencia gratuita permite hasta dos conexiones simultáneas al servidor VPN.
5. Cambiar Dirección de servicio SSH y ajuste del Firewall interno
Después de una prueba exitosa de conexión vienen los pasos más importantes para
garantizar que no podrán realizarse más conexiones desde cualquier dirección IP al
servidor SSH, el primero consiste en identificar las direcciones IP privadas de la VPN.
Para esto podemos ejecutar el siguiente comando:
IFCONFIG: muestra las interfaces de red activas del sistema operativo y sus
correspondientes direcciones IP.
Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com
Una vez identificada la IP Privada del servidor que usaremos para el SSH, hay que
modificar el archivo de configuración del servidor SSH.
Para esto usamos el siguiente comando:
Una vez dentro del archivo buscamos dentro la línea de opciones la siguiente:
ListenAddress: este comando le dice al servidor SSH en qué dirección estará
escuchando activamente las conexiones.
Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com
Se modifica la línea colocando la dirección privada del servidor, en el ejemplo es la
dirección 172.27.236.1
Hay que recordar que al reiniciar el servicio SSH o al servidor este solamente estará
activo para las conexiones privadas, es por eso que es necesario probar primero que
puede conectarse mediante la VPN. Para verificar que tenemos acceso, hacemos
PING a la dirección privada después de conectarnos por medio de la VPN.
Si tenemos respuesta es que podemos conectarnos.
El siguiente paso es reiniciar el servidor, lo cual debe variar dependiendo de su
proveedor de servicio.
6. Prueba de la conexión mediante la VPN:
Después de creada la VPN, probada la conexión y realizados los ajustes podemos
probar que el SSH solamente funciona para conexiones internas. Para esto
colocamos en nuestro cliente SSH preferido los parámetros del servidor:
En nuestro ejemplo usaremos Putty
Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com
Como prueba colocamos el nombre
del host o la dirección IP pública y
el puerto SSH activo.
Si nuestra configuración es correcta no
podremos conectarnos al servidor, porque
solamente estará disponible para conexiones
por las direcciones IP privadas, que solamente
se pueden acceder por la VPN.
Colocamos la dirección IP en el navegador para
la conexión al servidor VPN, en nuestro caso
sería así:
https://158.69.223.218/?src=connect
Y nos debe mostrar el dialogo de conexión.
Después de conectados al VPN podemos
probar nuevamente la conexión con la dirección
IP de la red privada, en nuestro caso el
172.27.236.1 y el puerto 222 para el SSH.
Como podemos ver, el servidor SSH está
esperando el usuario y clave para ser utilizados.
En una próxima entrega veremos cómo agregar un doble factor de autenticación
utilizando una aplicación de celular desarrollada por Google. Se trata de una medida de
Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com
seguridad extra que requiere de un código que tiene una validez de unos segundos hasta
volver a generar otro adicionalmente a la contraseña.

Más contenido relacionado

Similar a Conexión Segura a un VPS mediante una VPN SSL

Practica 15 21 qde cota
Practica 15  21 qde cotaPractica 15  21 qde cota
Practica 15 21 qde cotaJulio Padilla
 
Instalación y Configuración SSH CentOS 6.5 / RHEL 6.2
Instalación y Configuración SSH CentOS 6.5 / RHEL 6.2Instalación y Configuración SSH CentOS 6.5 / RHEL 6.2
Instalación y Configuración SSH CentOS 6.5 / RHEL 6.2cyberleon95
 
Vpn linux a linux
Vpn linux a linuxVpn linux a linux
Vpn linux a linuxxinoxino
 
Servicio VPN con OpenVPN y Latch sobre Raspberry Pi
Servicio VPN con OpenVPN y Latch sobre Raspberry PiServicio VPN con OpenVPN y Latch sobre Raspberry Pi
Servicio VPN con OpenVPN y Latch sobre Raspberry PiTelefónica
 
Servidores cent os final
Servidores cent os finalServidores cent os final
Servidores cent os finalSteven Restrepo
 
GESTIÓN DE ACCESO REMOTO Y MONITORIZACIÓN DE SERVIDORES
GESTIÓN DE ACCESO REMOTO Y MONITORIZACIÓN DE SERVIDORESGESTIÓN DE ACCESO REMOTO Y MONITORIZACIÓN DE SERVIDORES
GESTIÓN DE ACCESO REMOTO Y MONITORIZACIÓN DE SERVIDORESCarles Climent
 
Reporte servidorftp
Reporte servidorftpReporte servidorftp
Reporte servidorftpMemin Goes
 
Instalación Firewall Checkpoint R70
Instalación Firewall Checkpoint R70Instalación Firewall Checkpoint R70
Instalación Firewall Checkpoint R70symple9
 
Vps local virtualbox
Vps local virtualboxVps local virtualbox
Vps local virtualboxBaruch Ramos
 
Gestion de nubes de servidores
Gestion de nubes de servidoresGestion de nubes de servidores
Gestion de nubes de servidoresrossykeles
 
Instalación samba
Instalación sambaInstalación samba
Instalación sambaK-te Muñoz
 
INSTALACIÓN Y CONFIGURACIÓN DE UN SERVIDOR SSH, PUTTY, APACHE Y MYSQL EN CENT...
INSTALACIÓN Y CONFIGURACIÓN DE UN SERVIDOR SSH, PUTTY, APACHE Y MYSQL EN CENT...INSTALACIÓN Y CONFIGURACIÓN DE UN SERVIDOR SSH, PUTTY, APACHE Y MYSQL EN CENT...
INSTALACIÓN Y CONFIGURACIÓN DE UN SERVIDOR SSH, PUTTY, APACHE Y MYSQL EN CENT...Franklin Ramos
 
Actividad ssh final - Ubuntu
Actividad ssh final - UbuntuActividad ssh final - Ubuntu
Actividad ssh final - UbuntuJose Diaz Silva
 
8699418 manual-de-instalacion-y-configuracion-del-servidor-de-correo-postfix-
8699418 manual-de-instalacion-y-configuracion-del-servidor-de-correo-postfix-8699418 manual-de-instalacion-y-configuracion-del-servidor-de-correo-postfix-
8699418 manual-de-instalacion-y-configuracion-del-servidor-de-correo-postfix-Sonia Garcia
 
Pecha kuchassh windows
Pecha kuchassh windowsPecha kuchassh windows
Pecha kuchassh windowsJavier Pérez
 

Similar a Conexión Segura a un VPS mediante una VPN SSL (20)

Practica 15 21 qde cota
Practica 15  21 qde cotaPractica 15  21 qde cota
Practica 15 21 qde cota
 
Instalación y Configuración SSH CentOS 6.5 / RHEL 6.2
Instalación y Configuración SSH CentOS 6.5 / RHEL 6.2Instalación y Configuración SSH CentOS 6.5 / RHEL 6.2
Instalación y Configuración SSH CentOS 6.5 / RHEL 6.2
 
Vpn linux a linux
Vpn linux a linuxVpn linux a linux
Vpn linux a linux
 
Servidor ftp
Servidor ftpServidor ftp
Servidor ftp
 
Ft py ssh_fco_javier_mejías_fernández
Ft py ssh_fco_javier_mejías_fernándezFt py ssh_fco_javier_mejías_fernández
Ft py ssh_fco_javier_mejías_fernández
 
Servicio VPN con OpenVPN y Latch sobre Raspberry Pi
Servicio VPN con OpenVPN y Latch sobre Raspberry PiServicio VPN con OpenVPN y Latch sobre Raspberry Pi
Servicio VPN con OpenVPN y Latch sobre Raspberry Pi
 
Servidores cent os final
Servidores cent os finalServidores cent os final
Servidores cent os final
 
GESTIÓN DE ACCESO REMOTO Y MONITORIZACIÓN DE SERVIDORES
GESTIÓN DE ACCESO REMOTO Y MONITORIZACIÓN DE SERVIDORESGESTIÓN DE ACCESO REMOTO Y MONITORIZACIÓN DE SERVIDORES
GESTIÓN DE ACCESO REMOTO Y MONITORIZACIÓN DE SERVIDORES
 
Reporte servidorftp
Reporte servidorftpReporte servidorftp
Reporte servidorftp
 
Instalación Firewall Checkpoint R70
Instalación Firewall Checkpoint R70Instalación Firewall Checkpoint R70
Instalación Firewall Checkpoint R70
 
Vps local virtualbox
Vps local virtualboxVps local virtualbox
Vps local virtualbox
 
Crear vpn linux a linux
Crear vpn linux a linuxCrear vpn linux a linux
Crear vpn linux a linux
 
Gestion de nubes de servidores
Gestion de nubes de servidoresGestion de nubes de servidores
Gestion de nubes de servidores
 
Instalación samba
Instalación sambaInstalación samba
Instalación samba
 
Instalación y configuración Servidor FTP y SSH
Instalación y configuración Servidor FTP y SSHInstalación y configuración Servidor FTP y SSH
Instalación y configuración Servidor FTP y SSH
 
INSTALACIÓN Y CONFIGURACIÓN DE UN SERVIDOR SSH, PUTTY, APACHE Y MYSQL EN CENT...
INSTALACIÓN Y CONFIGURACIÓN DE UN SERVIDOR SSH, PUTTY, APACHE Y MYSQL EN CENT...INSTALACIÓN Y CONFIGURACIÓN DE UN SERVIDOR SSH, PUTTY, APACHE Y MYSQL EN CENT...
INSTALACIÓN Y CONFIGURACIÓN DE UN SERVIDOR SSH, PUTTY, APACHE Y MYSQL EN CENT...
 
Edison guaraca
Edison guaracaEdison guaraca
Edison guaraca
 
Actividad ssh final - Ubuntu
Actividad ssh final - UbuntuActividad ssh final - Ubuntu
Actividad ssh final - Ubuntu
 
8699418 manual-de-instalacion-y-configuracion-del-servidor-de-correo-postfix-
8699418 manual-de-instalacion-y-configuracion-del-servidor-de-correo-postfix-8699418 manual-de-instalacion-y-configuracion-del-servidor-de-correo-postfix-
8699418 manual-de-instalacion-y-configuracion-del-servidor-de-correo-postfix-
 
Pecha kuchassh windows
Pecha kuchassh windowsPecha kuchassh windows
Pecha kuchassh windows
 

Último

Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...AlanCedillo9
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 

Último (19)

Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 

Conexión Segura a un VPS mediante una VPN SSL

  • 1. Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com Conexión Segura a un VPS mediante una VPN SSL Introducción: Para asegurar la administración remota de un servidor privado virtual (Virtual Private Server al cual llamaremos VPS de ahora en adelante) o una instancia virtual en la nube, es recomendable establecer una conexión encriptada primero. Esto lo podemos hacer mediante una VPN o consola SSH. La ventaja de una conexión mediante VPN es que la misma dirige todo el tráfico mediante el túnel encriptado mientras que la conexión SSH solamente lo haría por medio de la creación de túneles. Al utilizar una conexión mediante una VPN SSL como OpenVPN estamos utilizando solamente un puerto TCP, el 443, el cual es compartido por los servicios Web del servidor. Para efectos de este documento estaremos usando un servidor VPS con acceso de root y les estaremos dando las siguientes recomendaciones para una conexión lo más segura posible. El sistema operativo utilizado en el VPS es el Ubuntu 16.04 LTS, y para las conexiones estaremos usando el cliente SSH para SmartTTY http://smartty.sysprogs.com/ para sistemas operativos Windows. En este artículo se asume que el lector conoce como conectarse remotamente al servidor VPS mediante SSH por lo que obviamos esa parte.
  • 2. Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com 1. Actualización del sistema operativo Ubuntu: Para actualizar el sistema operativo Ubuntu debemos ejecutar los siguientes comandos
  • 3. Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com Este comando actualiza la lista de paquetes disponibles y sus versiones, pero no instala o actualiza ningún paquete. Esta lista la coge de los servidores con repositorios que tenemos definidos en el archivo /etc/apt/sources.list. Después de ejecutado el comando anterior, se ejecuta el siguiente comando Este comando instala las nuevas versiones los paquetes disponibles en la lista definida en /etc/apt/sources.list. 2. Cambiar la clave del usuario root y cambiar el usuario root por un usuario con menos privilegios para el acceso remoto. Para cambiar la clave del usuario root debemos ejecutar Aquí debemos introducir la clave en dos ocasiones para que sea almacenada correctamente. Después podemos agregar el usuario que estaremos usando en lugar de root para conectarnos al servidor. Con este comando agregamos al usuario, y el mismo comando nos pedirá información del usuario como la clave y algunos datos del mismo. Adicionalmente creara un grupo y carpeta de usuario.
  • 4. Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com 3. Modificar la configuración del archivo /etc/ssh/sshd_config para evitar el acceso por root y cambiar el puerto de conexión. Para esto entramos a editar el archivo, en nuestro caso usaremos el editor nano. Dentro del archivo de configuración recomendamos cambiar las siguientes opciones: Port: es el puerto TCP al cual se conectara remotamente ListenAddress: la dirección IP que tendrá abierto el puerto definido anteriormente y que permitirá conexiones. Debe ser un IP activo del VPS. En este caso recomendamos un IP privado del rango de la VPN que se creara posteriormente. Por ahora lo dejaremos en el defecto 0.0.0.0 que indica que puede recibir conexiones de cualquier dirección IP. Después de configurada la VPN podemos cambiar esta dirección por una privada.
  • 5. Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com La siguiente opción a cambiar es la siguiente: PermitRootLogin: originalmente esta en Yes, cambiar a no. Agregar la línea AllowUsers y colocar al lado el nombre del usuario que se creó en el segundo paso. Después de realizados los cambios hay que salvar la configuración. 4. Instalación de la VPN SSL (OpenVPN) Para la conexión remota a la administración usaremos una VPN SSL. Esto permite utilizar el puerto 443 para la conexión desde el Internet. Estaremos usando el producto OpenVPN Access Server que está basado en OpenVPN. Este paquete contiene conexiones para dos usuarios lo que sería suficiente para la administración. Para instalar este paquete en Ubuntu 16.04 debemos descargar el instalador genérico para DEBIAN del sitio https://openvpn.net/index.php/access-server/download- openvpn-as-sw/113.html?osfamily=Ubuntu Para instalar nos ubicamos en la carpeta /tmp y ejecutamos el siguiente comando
  • 6. Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com Esto descargara la aplicación desde Internet. El nombre debe corresponder a la última versión disponible en el repositorio. Para instalar la aplicación se ejecuta el siguiente comando: El último comando que se debe ejecutar es para asignar una clave segura al usuario openvpn que es el administrador por defecto de la VPN. Para acceder a la administración del VPN se utiliza el siguiente URL: https://direcion-ip-publica:943/admin
  • 7. Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com La administración del OpenVPN está por ahora fuera de este documento por lo cual instamos al lector a buscar referencias sobre cómo crear usuarios. Posteriormente haremos un artículo detallado sobre el mismo. Como referencia dejamos el enlace oficial del sitio web de OpenVPN. https://openvpn.net/index.php/access-server/docs.html?id=229 . Para descargar el cliente OpenVPN se entra a la dirección pública Se coloca el usuario y la clave y se escoge la opción Login de la lista desplegable y se presiona GO. Después de entrar podrá encontrar la página con todos los clientes disponibles que puede usar para conectarse.
  • 8. Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com La licencia gratuita permite hasta dos conexiones simultáneas al servidor VPN. 5. Cambiar Dirección de servicio SSH y ajuste del Firewall interno Después de una prueba exitosa de conexión vienen los pasos más importantes para garantizar que no podrán realizarse más conexiones desde cualquier dirección IP al servidor SSH, el primero consiste en identificar las direcciones IP privadas de la VPN. Para esto podemos ejecutar el siguiente comando: IFCONFIG: muestra las interfaces de red activas del sistema operativo y sus correspondientes direcciones IP.
  • 9. Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com Una vez identificada la IP Privada del servidor que usaremos para el SSH, hay que modificar el archivo de configuración del servidor SSH. Para esto usamos el siguiente comando: Una vez dentro del archivo buscamos dentro la línea de opciones la siguiente: ListenAddress: este comando le dice al servidor SSH en qué dirección estará escuchando activamente las conexiones.
  • 10. Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com Se modifica la línea colocando la dirección privada del servidor, en el ejemplo es la dirección 172.27.236.1 Hay que recordar que al reiniciar el servicio SSH o al servidor este solamente estará activo para las conexiones privadas, es por eso que es necesario probar primero que puede conectarse mediante la VPN. Para verificar que tenemos acceso, hacemos PING a la dirección privada después de conectarnos por medio de la VPN. Si tenemos respuesta es que podemos conectarnos. El siguiente paso es reiniciar el servidor, lo cual debe variar dependiendo de su proveedor de servicio. 6. Prueba de la conexión mediante la VPN: Después de creada la VPN, probada la conexión y realizados los ajustes podemos probar que el SSH solamente funciona para conexiones internas. Para esto colocamos en nuestro cliente SSH preferido los parámetros del servidor: En nuestro ejemplo usaremos Putty
  • 11. Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com Como prueba colocamos el nombre del host o la dirección IP pública y el puerto SSH activo. Si nuestra configuración es correcta no podremos conectarnos al servidor, porque solamente estará disponible para conexiones por las direcciones IP privadas, que solamente se pueden acceder por la VPN. Colocamos la dirección IP en el navegador para la conexión al servidor VPN, en nuestro caso sería así: https://158.69.223.218/?src=connect Y nos debe mostrar el dialogo de conexión. Después de conectados al VPN podemos probar nuevamente la conexión con la dirección IP de la red privada, en nuestro caso el 172.27.236.1 y el puerto 222 para el SSH. Como podemos ver, el servidor SSH está esperando el usuario y clave para ser utilizados. En una próxima entrega veremos cómo agregar un doble factor de autenticación utilizando una aplicación de celular desarrollada por Google. Se trata de una medida de
  • 12. Autor: José Antonio Carrasco Moreno – joseacarras@josecarrasco.com seguridad extra que requiere de un código que tiene una validez de unos segundos hasta volver a generar otro adicionalmente a la contraseña.