Por cualquier motivo, necesito acceder a una máquina virtual (servidor Windows 2008r2) en mi red doméstica desde fuera de la red a través de Internet desde un escritorio remoto. Leí que hay "preocupaciones" con el rdp simple, y que usar un túnel ssh sería un contramedida razonable . Esta bien.
Configuré otra vm e instalé el servidor ubuntu en ella. Instalo openssh. En / etc / ssh / sshd_config establezco "PasswordAuthentication no". Puse una clave pública en ~ / .ssh / authorized_keys, y por supuesto tengo el archivo de clave privada (con contraseña) en mi computadora. Configuré masilla como en este artículo:
Puse una regla de puerto en mi enrutador (run-of-the-mill-home) para reenviar el tráfico del puerto 22 al servidor ssh.
Funciona. Puedo escritorio remoto a mi servidor de Windows. Yippee.
Ahora pienso: para mí, esto es supuestamente una forma más segura de escritorio remoto. Sin embargo, siento por mi cabeza en términos de las implicaciones de seguridad. Ahora tengo un servidor expuesto a Internet de alguna manera, y soy demasiado novato para saber exactamente cómo.
¿Cuáles son mis preocupaciones de seguridad ahora? Solo porque yo "solo" reenvío de puerto en el puerto 22, si el firewall (iptables?) En mi máquina Linux está configurado en (el valor predeterminado?):
iptables -P INPUT ALLOW
iptables -P OUTPUT ALLOW
iptables -P FORWARD ALLOW
¿Es este un gran problema de seguridad (permitir que todo el tráfico entrante y saliente suene mal, por supuesto ... pero el tráfico entrante está limitado a ssh?).
Si es una gran preocupación, ¿puedo usar iptables para rechazar todo menos ssh y el tráfico rdp reenviado asociado?
¿Cuáles son mis preocupaciones de seguridad más allá de esto?
¿El puerto de reenvío de puertos 3389 directamente al servidor que quiero para el escritorio remoto es realmente peor?
¿Puedo hacer esta solución mejor que eso si no lo está ya?