Ubuntu 14.10 Mehrere simultane, unabhängige Remote-Verbindungen (Desktop-Verbindungen)

15

Kann mir jemand einen kostenlosen Server vorschlagen (der wie ein Terminalserver funktioniert, der mehrere rdp-ähnliche unabhängige Sitzungen ermöglicht), der mit Ubuntu 14.10 kompatibel ist ?

Ich habe versucht: Gleichzeitige Fernverbindungen

Ich habe FreeNX gegoogelt, aber die meisten verfügbaren Tutorials funktionieren nicht für Ubuntu 14.10 und NOMACHINE erlaubt auch nicht mehrere Sitzungen. NOMACHINE funktioniert prima, ist aber auf nur eine Sitzung beschränkt. Wenn ich vom zweiten Konto aus eine Verbindung herstelle, wird die Verbindung getrennt.

https://www.nomachine.com/AR10K00703 "NoMachine (kostenlos) ermöglicht eine Verbindung. Daher ist es für den individuellen Gebrauch."

Und ich habe auch versucht, http://www.xrdp.org mit diesem Tutorial https://www.youtube.com/watch?v=gFdBSyy4xcM

Es funktioniert auch nicht .. in einem leeren RDP-Bildschirm stecken ..

VNC ist nicht das, wonach ich suche, da es keine unabhängigen Sitzungen anbieten kann. .

Die meisten Tutorials sind für alte Ubuntu-Versionen und funktionieren nicht für mich. Jede Hilfe wäre sehr dankbar !! Irgendein grundlegendes aktuelles Tutorial 14.10 oder irgendetwas was Schattenlicht bitte!

PS Was letztendlich funktionierte, war VNC

Aravinda
quelle

Antworten:

19

Hier sind die Dinge, die für mich gearbeitet haben. (Erfolg mit dieser Anleitung: http://www.howtoforge.com/how-to-install-vnc-server-on-ubuntu-14.04 )

Was ich getan habe, ist wie folgt:

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

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

(3) dann Benutzer hinzufügen (vncserver / unix)

sudo adduser test1   

(Sie müssen anschließend die Details für den Benutzer eingeben. Ich habe 3 Benutzer hinzugefügt (test1, test2, test3 usw. für vnc-Server).

(4) Dann müssen Sie einen Benutzer nach dem anderen wechseln und vncserver ausführen und ein Passwort für die vncuser-Anmeldung hinzufügen (ich habe drei vnc-Benutzer, so dass ich dies für alle drei Benutzer wiederholen musste, Test 1, Test2, Test3)

su - test1

dann renne

vncserver

Die Ausgabe wird so aussehen, dass Sie zur Eingabe eines vnc-Passworts aufgefordert werden.

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) Wichtig: Sie müssen den Inhalt von /home/test1/.vnc/xstartup durch den folgenden ersetzen. (Andernfalls erhalten Sie nicht den Desktop, sondern bleiben bei einem leeren Bildschirm ohne Benutzeroberflächen oder Menüs hängen.)

vim /home/test1/.vnc/xstartup

und hinzufügen

#!/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) Startskript für das vncserver wurde mit erstellt „Weiter werde ich das Startskript für den vncserver wie diese machen“ Abschnitt dieses tute

sudo vim /etc/init.d/vncserver

und füge unten den Inhalt hinzu ..

#!/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

Um eine ausführbare Datei zu erstellen, führen Sie Folgendes aus:

chmod +x /etc/init.d/vncserver

(7) Um vnc-Desktopsitzungen zu erstellen, die Benutzern beim Start automatisch zugewiesen werden, erstellen Sie das folgende Skript in / etc / vncserver

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

füge dies in vncservers.conf hinzu (das liegt daran, dass ich meine Benutzer als test1, test2, test3 habe, ändere es entsprechend)

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

(8) Dann lauf

sudo `update-rc.d vncserver defaults 99`

(9) Starten Sie den Server neu (Sie sind fast fertig). Schritt 10 und der Rest ist, wie Sie sich anmelden

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

Geben Sie den Servernamen / die IP-Adresse und die Sitzungs-ID ein. Mein Server ist beispielsweise 172.16.70.17. Wenn ich 172.16.70.17:2 verwende, wird er sich beim Test2-Benutzerdesktop anmelden

Vergewissern Sie sich, dass die Verschlüsselung auf "Vorziehen aus" eingestellt ist.

Bild

Bild

Dann können Sie auf diese Weise auf Ihren Desktop und Ihre Anwendungen zugreifen.

Bild

Aravinda
quelle
2
sudo update-rc.d vncserver defaults 99insserv: Warnung: Skript 'vncserver' fehlende LSB-Tags und Überschreibungen
Realtebo
Wie ändere ich Standardports? Wir werden jeden Tag angegriffen ...
Realtebo
@Aravinda, Danke. Kann der Benutzer Geometrieeinstellungen vornehmen? Beispielsweise legt der Benutzer die Geometrie in einer Datei fest (z. B. im Ordner ".vnc") und liest sie dann vom Server aus der Datei anstelle von "vncservers.conf". Auf diese Weise kann der Benutzer seine Einstellungen festlegen, ohne Sudo-Berechtigungen zu benötigen. Vielen Dank.
user153245
4

Übrigens, VNC kann mehrere unabhängige Sitzungen anbieten, die Einrichtung ist nur mühsam . Grundsätzlich führen Sie mehrere Kopien von Xvnc auf verschiedenen Ports aus. Das Problem ist, dass es keine automatische Option gibt, mit der ich auf den nächsten nicht verwendeten Desktop weitergeleitet werde. Daher müssen Sie jedem Benutzer, der das System remote verwenden soll, einen eigenen Port zuweisen.

Charles Tassell
quelle
Ihr Vorschlag konnte immer noch nicht umgesetzt werden. Ich komme wieder und gebe ein Feedback, damit es für
jemanden
Angenommen, Sie haben drei Personen, die sich remote an der Box anmelden möchten (Benutzer1, Benutzer2, Benutzer3). Nach dem Erstellen der Konten mit useradd könnten Sie die folgenden Zeilen zu /etc/rc.local hinzufügen:
Charles Tassell,
Anscheinend können Sie im Kommentarfeld nicht die Eingabetaste drücken ... Hier ist der vollständige Text: Angenommen, Sie haben drei Personen, die sich remote in das Feld einloggen möchten (Benutzer1, Benutzer2, Benutzer3). Sie könnten die folgenden Zeilen hinzufügen in /etc/rc.local nach dem Erstellen der Konten mit useradd: su -c "vncserver: 1 user1"; su -c "vncserver: 2" user2; su -c "vncserver: 3" user3; Das schafft 3 einzigartige Desktops an den Ports 5901, 5902 und 5903
Charles Tassell
Alles scheint in Ordnung zu sein .. Ich werde den Thread aktualisieren, wenn ich Zeit habe mit dem, was ich genau getan habe .. hoffentlich nächste Woche .. Danke Charles für deinen Rat ..
Aravinda
aktualisiert .. und markiert es als die Antwort, so dass jemand es leicht sehen kann
Aravinda