¿Desea conectarse de forma remota a un escritorio en otro servidor Linux desde su escritorio Linux? Comenzar es fácil: este post le mostrará cómo configurar VNC y conectarse de forma directa al escritorio de una máquina remota.
¿Qué es VNC?
A menudo, necesitamos recursos de escritorio / GUI (interfaz gráfica de usuario) «al otro lado del cable» y queremos evitar caminar (¡o conducir!) A una computadora remota. A veces, inclusive puede ser imposible llegar al sistema remoto dado que está al otro lado del mundo.
Bienvenido al mundo de la computación de escritorio remoto, que le posibilita, a través de el uso de un paquete de software VNC (Computación de red virtual), conectarse al escritorio / GUI de una computadora remota.
Bajo el capó, el software VNC utilizará el protocolo RFB (Remote Frame Buffer) para enviar pulsaciones de teclas y movimientos del mouse al sistema remoto. Es como si estuviera sentado frente a la computadora remota, aún cuando con algunas advertencias y un poco de latencia adicional.
Advertencias de VNC
Existen algunas limitaciones al utilizar VNC para administrar y / o utilizar escritorios remotos. Uno de los principales es que las actualizaciones de la pantalla pueden ser lentas. Es poco probable que ver videos 4K en un escritorio remoto mientras se utiliza una conexión a Internet ADSL dé resultados favorables. A veces, inclusive hacer un clic en un icono para iniciar una aplicación puede provocar un ligero retraso, dado que la pantalla debe actualizarse.
La seguridad puede ser otra consideración. Se incluyen varias opciones con bastantes software VNC, pero la configuración a menudo se deja al usuario, especialmente con soluciones sustentadas en código abierto. Otro problema es que VNC no se adapta bien a muchos usuarios. Es principalmente adecuado para uso doméstico, y los usuarios de oficinas pequeñas además pueden encontrarlo útil, a modo de ejemplo, al tener un solo escritorio en una sola máquina compartida de forma remota y utilizada por 1-3 usuarios.
Inclusive para las grandes corporaciones, la administración remota del servidor (con uno o dos administradores de sistema por servidor habilitado para VNC) es definitivamente una opción. Por otra parte, las grandes corporaciones a menudo deshabilitan y / o desinstalan cualquier escritorio gráfico de sus servidores, y la administración remota se realiza a través de comandos ingresados en una terminal, con SSH utilizado para conectarse al servidor. ¡SSH (Remote Secure Shell) inclusive se puede usar desde su teléfono móvil!
Conexión con VNC a una computadora Linux remota
Necesitará tanto un servidor VNC como un cliente VNC para poder utilizar un escritorio remoto. El servidor VNC opera en el extremo remoto, asegurando que un cliente VNC, utilizado desde una estación de trabajo conectada (casi siempre su propia computadora), pueda conectarse y que la salida del escritorio, los trazos del mouse y del teclado se transmitan de la mejor manera factible. factible.
A veces, pequeños contratiempos o lentitud en la red pueden causar renderizaciones parciales de la pantalla, etc., aún cuando en términos generales, si dispone de una red rápida (y una conexión rápida a Internet si está usando una computadora a través de Internet), la renderización de la pantalla será lo suficientemente buena como para hacerlo. cierto nivel de trabajo remoto.
Instalación del servidor VNC
los Servidor VNC debe instalarse en la estación de trabajo o servidor remotos. Esto se puede hacer a través de SSH de forma remota, aún cuando a veces puede elegir por ir a la computadora remota (si está razonablemente cerca), conectar un teclado y un mouse y configurar VNC allí. La mejor respuesta depende de su infraestructura existente, dónde se encuentra la máquina remota y si tiene un teclado y un mouse a mano o no.
El software de servidor VNC que seleccione variará según algunos factores. La principal es la preferencia, y se necesita un poco de tiempo para aprender la gran cantidad de alternativas que existen y posteriormente probar algunas.
En el aspecto comercial, hay RealVNC. Es un paquete de software excelente, que funciona bien y es compatible, destinado a las pequeñas compañías que no quieren dedicar demasiado tiempo a que algo funcione bien. Las soluciones comerciales de forma general funcionan bien si administra muchos servidores y clientes como una PYME.
Si le gusta más el código abierto, Lista de Ubuntu de soluciones VNC dispone de una buena lista de inicio de servidores VNC. Uno popular es x11vnc
, que ejecuta un servidor VNC básico. Ubuntu además viene con vino
pre instalado. Por lo general, tenderá a hallar que cada solución de servidor VNC viene con sus propios beneficios y características, así como con deficiencias y advertencias.
En resumen, desea considerar los sistemas operativos en los que usará VNC. ¿Se conectará de Windows a Linux o de una tableta a su computadora portátil Macintosh? Todo es factible, pero encontrará que algunas soluciones VNC solo pueden funcionar de Linux a Linux o Windows a Windows, etc.
Asumiendo que estás en Linux, x11vnc
es un servidor VNC open source simple recomendado por Ubuntu que puede instalar. La instalación es simple, dado que está habilitada en apt
:
sudo apt-get install x11vnc openssh-server
Después, puede iniciar un túnel SSH en el puerto 5900, que maneja la autenticación y expone el puerto a cualquier cliente VNC local:
ssh -L 5900:remotehost:5900 hostname
E inicie el servidor VNC:
x11vnc -safer -localhost -nopw -once -display :0
Tú además puedes ejecutar automáticamente x11vnc
a través de systemd.
Usando el cliente VNC
los Cliente VNC a menudo se utiliza un binario independiente en alguna parte. Un administrador del sistema puede tener la utilidad / binario del cliente VNC de forma directa en su escritorio local, a modo de ejemplo. Un proveedor como RealVNC le proporcionará el cliente VNC «gratis», mientras que el servidor VNC es una solución de pago.
Es esencial que la autenticación del cliente VNC y el servidor VNC coincidan. Aunque a menudo existen mecanismos de respaldo, estos proporcionarían menor seguridad en cada nivel de respaldo a un método de autenticación de menor calidad.
Cuando es necesario emplear la autenticación adecuada, se puede configurar el servidor VNC para que requiera un mecanismo de autenticación de alto nivel. Además se puede obligar al cliente a usar un nivel igualmente alto. El uso de una VPN además garantiza que sus datos VNC estén encriptados de un extremo a otro.
Un último aspecto a considerar cuando se busca una solución cliente / servidor es que, a menos que use una solución comercial, de forma general existe una necesidad algo estricta de asegurarse de que el cliente y el servidor estén hechos por el mismo creador / distribuidor de software.
Puede haber pequeñas diferencias en la implementación del protocolo subyacente, los mecanismos de autenticación y el software en sí, lo que hace que un cliente VNC no siempre sea compatible con otro servidor VNC, o puede producir resultados indefinidos. El uso de un cliente VNC y un servidor VNC que no coinciden puede afectar negativamente la fuerza de seguridad, así como la confiabilidad de la configuración.
Para una solución multiplataforma y open source, hay TightVNC, que se ejecuta en un subprograma de Java en cualquier máquina host.
Cortafuegos que dices?
Los cortafuegos pueden requerir una reconfiguración al instalar VNC. Por lo general, es tan sencillo como abrir algunos puertos para un rango específico de direcciones IP. Al ser lo más restrictivo factible al crear una regla (o dicho de otra forma, ‘un agujero’) en su firewall, es mejor permitir solo un rango limitado de direcciones IP en la conexión.
Puedes utilizar CIDR para limitar el rango de direcciones IP. A modo de ejemplo, una regla que limite el rango a 192.168.0.1/24 permitirá que las direcciones de 192.168.0.1 a 192.168.0.254 se conecten.
Los números de puerto reales a menudo se pueden configurar dentro del servidor VNC, y es una buena práctica cambiarlos a un puerto de origen no predeterminado por motivos de seguridad. Asegúrese de hacer coincidir los números de puerto configurados en el servidor VNC con la nueva regla de firewall.
Si está usando RealVNC, el instalador le preguntará si desea crear una regla en el firewall. Crea una regla que es bastante abierta y es factible que desee restringirla más, pero es más fácil de comprender la configuración cuando la regla básica ya está en su lugar.
VNC: TLDR;
Como hemos visto, existen muchas vías y soluciones posibles disponibles cuando se trata de poner en práctica una solución VNC. Si solo necesita una configuración rápida y solo tiene dos estaciones de trabajo sustentadas en Ubuntu, puede ser bastante sencillo utilizar una solución gratuita y open source de la lista del equipo de Ubuntu. Si está tratando de administrar un puñado de computadoras de escritorio como una PYME, el software comercial como RealVNC puede ser una solución más fácil.
Una vez que el software está instalado, es hora de configurar el firewall, ajustar las alternativas de su servidor VNC a su gusto, ajustar la autenticación si es necesario y disfrutar de los beneficios que puede ofrecer una solución de escritorio remoto.
¡Disfrutar!