ubuntu 14.10 múltiples conexiones remotas independientes simultáneas (como escritorio)

15

¿Alguien puede sugerir un servidor gratuito (que funcione igual que el servidor de terminal que permite múltiples sesiones independientes tipo rdp ) que sea compatible con ubuntu 14.10 ?

He intentado: conexiones remotas simultáneas

Busqué en Google FreeNX, pero la mayoría de los tutoriales disponibles no funcionan para ubuntu 14.10 y NOMACHINE no permite sesiones múltiples. NOMACHINE funciona muy bien, pero está restringido a una sola sesión. Cuando me conecto desde la segunda cuenta, se desconecta.

https://www.nomachine.com/AR10K00703 "NoMachine (gratis) permite una conexión. Por lo tanto, es para uso individual".

Y también he intentado http://www.xrdp.org usando este tutorial https://www.youtube.com/watch?v=gFdBSyy4xcM

Tampoco funciona ... atrapado en una pantalla rdp en blanco ...

VNC no es lo que estoy buscando, ya que no puede ofrecer sesiones independientes. .

La mayoría de los tutoriales son para versiones antiguas de Ubuntu y no funcionan para mí. ¡Cualquier ayuda sería muy apreciada! ¡Cualquier tutorial actual básico 14.10 o cualquier cosa que sombree la luz, por favor!

PD: lo que funcionó en última instancia fue VNC

Aravinda
fuente

Respuestas:

19

Aquí están las cosas que me funcionaron ... (éxito al usar este tute http://www.howtoforge.com/how-to-install-vnc-server-on-ubuntu-14.04 y felicitaciones a Charles Tassell por las instrucciones y consejos correctos)

Lo que hice es lo siguiente,

(1) correr sudo apt-get update && sudo apt-get upgrade

(2) correr sudo apt-get install gnome-core xfce4 vnc4server

(3) luego agregue usuarios (vncserver / unix)

sudo adduser test1   

(después deberá completar los detalles del usuario, he agregado 3 usuarios (test1, test2, test3, etc. para el servidor vnc)

(4) Luego, debe cambiar de usuario uno por uno y ejecutar vncserver y agregar una contraseña para iniciar sesión en vncuser (tengo tres usuarios de vnc, por lo que tuve que repetir esto para los tres usuarios test 1, test2, test3)

su - test1

entonces corre

vncserver

La salida será como esta solicitando una contraseña de vnc.

You will require a password to access your desktops.

Password:
Verify:

xauth:  file /home/test1/.Xauthority does not exist
New 'server1:1 (test1)' desktop is server1:1
Creating default startup script /home/test1/.vnc/xstartup
Starting applications specified in /home/test1/.vnc/xstartup
Log file is /home/test1/.vnc/server1:1.log

(5) Importante: deberá reemplazar el contenido de /home/test1/.vnc/xstartup con el siguiente (de lo contrario, no obtendrá el escritorio, sino que se quedará con la pantalla en blanco sin interfaces de usuario o menús)

vim /home/test1/.vnc/xstartup

y añadir

#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
startxfce4 &

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &

(6) la secuencia de comandos de inicio para vncserver se creó usando la sección "Además, haré la secuencia de comandos de inicio para vncserver como esta" de este tute

sudo vim /etc/init.d/vncserver

y agregue el contenido a continuación.

#!/bin/bash

unset VNCSERVERARGS
VNCSERVERS=""
[ -f /etc/vncserver/vncservers.conf ] && . /etc/vncserver/vncservers.conf
prog=$"VNC server"
start() {
 . /lib/lsb/init-functions
 REQ_USER=$2
 echo -n $"Starting $prog: "
 ulimit -S -c 0 >/dev/null 2>&1
 RETVAL=0
 for display in ${VNCSERVERS}
 do
 export USER="${display##*:}"
 if test -z "${REQ_USER}" -o "${REQ_USER}" == ${USER} ; then
 echo -n "${display} "
 unset BASH_ENV ENV
 DISP="${display%%:*}"
 export VNCUSERARGS="${VNCSERVERARGS[${DISP}]}"
 su ${USER} -c "cd ~${USER} && [ -f .vnc/passwd ] && vncserver :${DISP} ${VNCUSERARGS}"
 fi
 done
}
stop() {
 . /lib/lsb/init-functions
 REQ_USER=$2
 echo -n $"Shutting down VNCServer: "
 for display in ${VNCSERVERS}
 do
 export USER="${display##*:}"
 if test -z "${REQ_USER}" -o "${REQ_USER}" == ${USER} ; then
 echo -n "${display} "
 unset BASH_ENV ENV
 export USER="${display##*:}"
 su ${USER} -c "vncserver -kill :${display%%:*}" >/dev/null 2>&1
 fi
 done
 echo -e "\n"
 echo "VNCServer Stopped"
}
case "$1" in
start)
start $@
;;
stop)
stop $@
;;
restart|reload)
stop $@
sleep 3
start $@
;;
condrestart)
if [ -f /var/lock/subsys/vncserver ]; then
stop $@
sleep 3
start $@
fi
;;
status)
status Xvnc
;;
*)
echo $"Usage: $0 {start|stop|restart|condrestart|status}"
exit 1
esac

para que sea un ejecutable ejecute lo siguiente ...

chmod +x /etc/init.d/vncserver

(7) Para que las sesiones de escritorio de vnc se asignen a los usuarios al inicio automáticamente, cree el siguiente script en / etc / vncserver

sudo mkdir -p /etc/vncserver
sudo vim /etc/vncserver/vncservers.conf

agregue esto en vncservers.conf (esto es porque tengo mis usuarios como test1, test2, test3 cámbielo según)

VNCSERVERS="3:test3 2:test2 1:test1"
VNCSERVERARGS[1]="-geometry 1024x768"
VNCSERVERARGS[2]="-geometry 1024x768"
VNCSERVERARGS[3]="-geometry 1024x768"

(8) Luego corre

sudo `update-rc.d vncserver defaults 99`

(9) reinicie el servidor (ya casi ha terminado) paso 10 y el resto es cómo iniciar sesión

(10) descargue http://www.realvnc.com/download/viewer/

ingrese servername / ipaddress e ID de sesión, por ejemplo, mi servidor es 172.16.70.17 y si uso 172.16.70.17:2, iniciará sesión en el escritorio de usuario test2 ... y 172.16.70.17:3 iniciará sesión en el escritorio de usuario test3 como sabio

asegúrese de que se seleccione el cifrado "Preferir desactivado"

Foto

Foto

Entonces puede acceder a su escritorio y aplicaciones de esta manera.

Foto

Aravinda
fuente
2
sudo update-rc.d vncserver defaults 99insserv: advertencia: al script 'vncserver' faltan etiquetas y anulaciones de LSB
realtebo
¿Cómo cambiar los puertos predeterminados? estamos todos los días bajo ataque ...
realtebo
@Aravinda, gracias. ¿Es posible establecer configuraciones de geometría por el usuario? Por ejemplo, el usuario establece la geometría en un archivo (por ejemplo, en la carpeta .vnc), luego el servidor la lee desde el archivo, en lugar de vncservers.conf. De esta manera, el usuario puede establecer sus preferencias sin necesidad de permisos sudo. Gracias.
user153245
4

Ah, por cierto, VNC puede ofrecer múltiples sesiones independientes, es solo una tarea difícil de configurar. Básicamente ejecuta múltiples copias de Xvnc en diferentes puertos. El problema es que no hay una opción automática de "devuélvame al siguiente escritorio no utilizado", por lo que debe proporcionar a cada usuario que vaya a utilizar el sistema de forma remota su propio puerto.

Charles Tassell
fuente
Todavía no puedo implementar su sugerencia. Volveré y daré su opinión sobre esto para que pueda ser útil para alguien ...
Aravinda
Como ejemplo, supongamos que tiene tres personas que van a iniciar sesión en el cuadro de forma remota (usuario1, usuario2, usuario3), podría agregar las siguientes líneas a /etc/rc.local después de crear las cuentas con useradd:
Charles Tassell
Aparentemente no puede presionar enter en el cuadro de comentarios ... Aquí está el texto completo: Como ejemplo, digamos que tiene tres personas que van a iniciar sesión en el cuadro de forma remota (usuario1, usuario2, usuario3), puede agregar las siguientes líneas a /etc/rc.local después de crear las cuentas con useradd: su -c "vncserver: 1 user1"; su -c "vncserver: 2" usuario2; su -c "vncserver: 3" usuario3; Eso crea 3 escritorios únicos en los puertos 5901, 5902 y 5903
Charles Tassell
Todo parece estar bien ... Actualizaré el hilo cuando tenga tiempo con lo que hice exactamente ... espero que sea entre semana ... Gracias Charles por tu consejo ...
Aravinda
actualizado ... y lo marcó como la respuesta para que alguien pueda verlo fácilmente
Aravinda