A continuación se explica como hacer que cada vez que se intenta una conexión VNC hacia un servidor, este crea automáticamente una sesión para ella y lo primero que ofrece es la interfaz de login gráfico (en este caso GDM) para que el usuario pueda autentificarse.
Partiendo de una instalación estandar de CentOS (5.4) con Gnome y GDM:
- Instalar el servidor VNC y Xinetd, que se encargará de generar las sesiones bajo demanda:
yum install xinetd vnc-server
- Configurar GDM para que permita conexiones remotas:
'Sistema' -> 'Administración' -> 'Pantalla de registro'
Pestaña: 'Remota'
Estilo: 'Igual que la entrada local'
Editar el archivo '/etc/gdm/custom.cfg' (en versiones anteriores, '/etc/X11/gdm/gdm.conf') para que muestre el siguiente contenido:
[daemon]
RemoteGreeter=/usr/libexec/gdmgreeter
[security]
AllowRemoteRoot=true
[xdmcp]
Enable=true
[gui]
[greeter]
Browser=true
[chooser]
[debug]
[servers]
- Configurar el servicio VNC en Xinetd.
Crear el archivo "/etc/xinetd.d/vnc", con el contenido:
service vnc
{
disable = no
socket_type = stream
protocol = tcp
group = tty
wait = no
user = nobody
server = /usr/bin/Xvnc
server_args = -inetd -query localhost -geometry 1024x768 -depth 16 -once -fp unix/:7100 -securitytypes=none
}
Este archivo indica algunas de las características por defecto para el aspecto gráfico de los clientes.
Añadir la linea el servicio y el puerto de VNC que vamos a utilizar al archivo "/etc/services":
[...]
#Local Services
vnc 5900/tcp
[...]
- Reiniciar servicios
service xinetd restart
gdm-restart
- Conexión de prueba: El servidor escucha en el puerto tcp:5900