¿Cómo asegurar un servidor de escritorio remoto de cara al público?

16

Estoy buscando la necesidad de exponer mi servidor de escritorio remoto (Terminal Services) para acceder desde fuera de nuestra red. En este momento, solo se puede acceder desde nuestra red.

Sé que es bastante fácil abrir el firewall y reenviar el puerto.

Sin embargo, ¿cómo aseguro la máquina y cuáles son las mejores prácticas en torno a esto? Mi preocupación es que los hackers puedan trabajar para entrar.

Cualquier guía / recomendación de mejores prácticas sería muy apreciada.


Editar:

Pregunta sobre un producto que encontré:

Filtre las conexiones RDP entrantes por IP, dirección MAC, nombre de la computadora y más

¿Alguien puede comentar sobre la seguridad de esto? ¿Parece que también podría usarlo para limitar el acceso por nombre de máquina / mac? ¿Alguien más lo usó?

me2011
fuente
1
Creo que está preguntando no solo cómo asegurar esta máquina y cualquier conexión RDP, sino también cómo reducir el riesgo para el resto de su red en caso de que se vea comprometida. ¿Está bien?
dunxd
Sí, correcto, debido a lo pequeños que somos, solo hay un servidor RDP y necesita acceso total al escritorio / recursos de red para los usuarios internos.
me2011

Respuestas:

14

Esto puede ser más de lo que está buscando hacer, pero así es como usamos RDP para usuarios remotos que no usan VPN.

Recientemente comenzamos a usar RD Gateway Manager con Remote Desktop Services, un rol en Windows 2008. Lo configuramos para que pase por nuestro servidor TMG y directamente a la máquina de los usuarios. Utiliza NLA como se mencionó anteriormente. El usuario que se conecta debe ser miembro del grupo AD correcto y miembro del grupo local correcto para poder acceder. Dependiendo de cómo desee configurarlo, puede conectarse a través de una página web que básicamente abre mstsc e ingresa la configuración de proxy para la Puerta de enlace RD, o puede establecer la configuración en su máquina manualmente para que cada vez que la abra intente ir a través de ese proxy. Hasta ahora ha funcionado bastante bien y parece ser seguro.

Don
fuente
3
+1 por esto. También uso RD Gateway con gran éxito, y solo necesita exponer el puerto 443 a Internet para que funcione. RD Gateway no era susceptible al error MS12-020 de hace unas semanas que amenazaba a RDP.
Ryan Ries
+1 también hay MUCHOS menos bots que atacan puertas de enlace RD que RDP directo.
Grant
8

Como nos ha demostrado la historia reciente , existen riesgos inherentes a la exposición del protocolo. Pero, hay algunos pasos que puede seguir para proteger el sistema:

  • Hacer cumplir la autenticación de nivel de red.
  • Hacer cumplir el cifrado de la conexión.
  • Restrinja a los usuarios autorizados para iniciar sesión en Terminal Services al mínimo absoluto, y no permita cuentas "especiales" como la Administratorcuenta de dominio predeterminada o, idealmente, cualquier otra cuenta de alto privilegio.
  • Asegúrese de que las contraseñas sean seguras en las cuentas que pueden iniciar sesión. Depende de cuántos usuarios y cómo se vean sus políticas en este momento, pero eliminando los hash e intentando descifrarlos, aumentando los límites en la longitud de la contraseña, o simplemente educando a los usuarios. buenos enfoques
Shane Madden
fuente
6

Le recomiendo utilizar el servicio de puerta de enlace de Escritorio remoto Le brinda un lugar donde puede aplicar políticas sobre quién puede conectarse a qué y desde dónde. Le ofrece un buen lugar para iniciar sesión, de modo que puede ver quién está intentando iniciar sesión sin inspeccionar los registros de eventos de los servidores individuales de su granja.

Si aún no lo ha hecho, asegúrese de que las políticas de bloqueo de su cuenta estén configuradas con bastante solidez. RDP incluso con NLA y una puerta de enlace le dan a las personas algo para intentar contraseñas de fuerza bruta. Una fuerte política de bloqueo dificulta enormemente el éxito de los intentos de fuerza bruta.

Configure certificados SSL válidos en los sistemas, de modo que el cliente notifique a los usuarios finales si alguien está intentando realizar algún tipo de ataque MITM.

Zoredache
fuente
3

Esto no es muy seguro, sin embargo, hay algunas maneras de fortalecer la seguridad.

No permitir el acceso a Internet desde ese servidor. Muchos de los intentos de malware más serios intentan comunicarse con su servidor de comando y control cuando compromete su sistema. La configuración de una regla de acceso de firewall para no permitir el acceso saliente de manera predeterminada, y una regla que permita el acceso saliente solo a redes internas / conocidas y subredes RFC 1928 pueden mitigar el riesgo.

Use tarjetas inteligentes o algún otro tipo de autenticación de dos factores. Esto suele ser costoso y se encuentra predominantemente en grandes organizaciones, sin embargo, las opciones están mejorando (viene a la mente PhoneFactor). Tenga en cuenta que puede requerirse tarjetas inteligentes por servidor, como una opción para configurarlo a nivel de cuenta.

Configure una red perimetral, coloque el servidor de escritorio remoto en el perímetro y use una VPN económica para proporcionar el acceso. Un ejemplo sería Hamachi. Tenga en cuenta que no permitir el acceso a Internet desde una red perimetral también es una buena práctica.

Si es posible, no proporcione un escritorio completo, pero publique las aplicaciones que necesitan. Si alguien solo necesita acceso a una sola aplicación, también es posible configurar un "programa inicial", que podría ser un simple shell envoltorio que puede forzar un cierre de sesión cuando se cierra la aplicación.

Greg Askew
fuente
1

Sugeriría las siguientes medidas:

  1. Cambiar el puerto utilizado para la conexión de escritorio remoto
  2. No utilice nombres de usuario genéricos, sino una política de nombres más complicada.
  3. Altos requisitos de contraseñas
  4. Cierre cualquier otro puerto no utilizado desde el exterior (entrante)

Opcional

  1. Use una VPN (CISCO, Open VPN, etc.) y luego conéctese al servidor utilizando una IP interna.
  2. Utilice el inicio de sesión con tarjeta inteligente si es posible
Alex H
fuente
Tiendo a cambiar el puerto en el firewall, no en el servidor (hacerlo en el servidor requiere cambios en el registro). Por lo general, es más fácil configurar un puerto hacia adelante en el enrutador y más seguro (sin tocar el registro).
JohnThePro
Yap :), acabo de decir eso porque algunas personas no tienen acceso o conocimiento para el reenvío de puertos de usuario. Aunque se recomienda no cambiar el registro a menos que sea necesario, nunca tuve ningún problema. El único problema que puede encontrar es si lo cambia a un puerto ya utilizado.
Alex H
Sí, quiero decir que no es el negocio más grande del mundo, y cualquiera que conozca regedit probablemente sea lo suficientemente inteligente como para tener cuidado ... pero no se puede saber eso. :)
JohnThePro
1

Puede ejecutar WinSSHD en el puerto 22 y luego usar el cliente Tunnelier para crear un túnel para usted y abrir automáticamente una sesión de Terminal Services a través del túnel con UN clic. Esto también le brinda una muy buena opción de FTP seguro para transferir archivos.

djangofan
fuente
1

Utilizo el reenvío de puertos ssh para estas cosas y solo permito la autenticación basada en clave pública a nivel de usuario. Todas las claves privadas de los usuarios también deben estar encriptadas. En Windows Putty hace esto bien, y el concurso facilita a los usuarios cargar su clave. Si no ejecuta ningún servidor Linux / BSD que tenga ssh por defecto, puede usar OpenSSH en Cygwin para hacerlo.

Recomiendo un servidor shell remoto dedicado con un cortafuegos local que bloquee las cosas a las que no desea que las personas se conecten, ya que permitir el reenvío de puertos en SSH básicamente está abriendo cualquier servidor / puerto interno a los usuarios que desee.

Jon Zobrist
fuente
1

Bitvise SSH es un buen SSH gratuito para Windows.

Me gustaría una terminación SSL VPN barata del cliente al perímetro de la puerta de enlace de Internet por algo más que un uso casual (por ejemplo, Confianza Comercial).

Las publicaciones anteriores sobre la seguridad de RDP también son una buena práctica y siempre deben hacerse si no desea compartir sus computadoras con cargadores gratuitos.

será
fuente
0

No es realmente la mejor práctica, pero algunos pensamientos al azar:

  • mantenga actualizado su sistema: permita actualizaciones automáticas, no use productos que estén al final de su vida útil,
  • usar contraseñas largas / complicadas para todas las cuentas del sistema
  • me regañarán aquí por sugerir la 'seguridad a través de la oscuridad' pero no te hará ningún daño si:
    • cambiar el puerto predeterminado 3389 / tcp a otro como 26438 / tcp
    • agregue la eliminación de puertos [si es posible] en el nivel del firewall para que el usuario potencial de rdp primero visite alguna página web y solo entonces pueda rdp a su servidor.
pQd
fuente