VNC/RFB
Zugriff auf den Benutzerdesktop wegen Fehlersuche o.ä.:
Hier geht es nicht um eine allgemeine Remotedesktopbenutzung !!!
Es soll die Oberfläche des gerade angemeldeten Benutzers vom Administrator übernommen werden !!!
funktioniert unter Leap 15.1 (ohne Verschlüsselung!)
Server:
zypper in xorg-x11-Xvnc
x0vncserver -SecurityTypes=none
Client: Ultravnc oder Tightvncclient starten und servernamen:0 angeben.
unter SLED15:
KDE
zypper in krfb
Der Benutzer wird vom Administrator aufgefordert das Programm krfb zu starten.
Das Programm legt sich rechtsunten in die Taskleiste. Er soll das Symbol jetzt anklicken und eine „neue persönliche Einladung“ erstellen.
Das Programm zeigt jetzt an wie remote sich verbunden werden kann.
z.B.
Rechner: 192.168.2.111:5900
Passwort: xyz123AB
Diese Infos gibt der Benutzer an den Admin weiter. Das Programmfenster wird geschlossen.Das Programm läuft aber weiter als Icon in der Taskleiste.
Der Administrator versucht remote sich mit einem VNC-Viewer auf den Rechner 192.168.2.111:5900
zu verbinden.
Jetzt geht beim Benutzer ein Hinweisfenster von krfb auf, ob er die Remoteconnection akzeptieren will. Ja,akzeptieren!!!
Jetzt wird der Administrator aufgefordert, das ihm zuvor mitgeteilte Passwort einzugeben.
Ist das getan, wird die Verbindung hergestellt und der Administrator erhält Zugriff auf den Desktop des Benutzers.
GNOME
Auf dem Benutzerpc muss mit root-Rechten das Programm vino
installiert werden:
zypper in vino
Der Benutzer wird vom Administrator aufgefordert das Programm vino-server
zu starten.
Das Programm liegt ( auch bei 64 BIT) im Verzeichnis /usr/lib/vino/
.
/usr/lib/vino/vino-server
Der Administrator versucht jetzt mit seinem VNC-Client (nicht mit seinem Web-Browser!) auf den Client zuzugreifen,
indem er den einfachen Hostnamen des VNC-Servers angibt:
Auf dem Desktop erscheint jetzt eine Abfrage, ob der Benutzer den Remotezugriff auf seinen Desktop zulassen will:
Nach dem Allow
kann der Administrator jetzt auf den Desktop zugreifen.
Debian
apt install x11vnc xrdp
Datei /usr/lib/systemd/system/x11vnc.service
erstellen.
- x11vnc.service
[Unit]
Description=Start x11vnc
After=multi-user.target
[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -localhost -rfbport 5900 -shared -ncache 10
[Install]
WantedBy=multi-user.target
systemctl enable x11vnc
systemctl enable xrdp
systemctl start x11vnc
systemctl start xrdp
danach ist der Zugriff mittel mstsc auf den server möglich.
mögliche Fehler:
Firewall gestartet?
Falsche Daten vom Benutzer?
Rechner anpingbar?
Programm wieder geschlossen?
falsche Konfiguration im Verzeichnis ~/.vnc ?
offene Ports können mit nmap pcnr1234
gefunden werden.
Clientzugriff
auf Server:
x11vnc -ncache 10 -passwd geheim
#nur linken Monitor anzeigen:
x11vnc -ncache 10 -password geheim -clip xinerama0
#nur rechten Monitor anzeigen:
x11vnc -ncache 10 -password geheim -clip xinerama1
auf Windowsclient:
"C:\Program Files\TightVNC\tvnviewer.exe" myserver -password=geheim
Javazugriff
Problem: Der Javazugriff funktioniert nicht mehr wegen veraltetem Zertifikat.
Lösung: jar.Datei einfach in der Konsole starten
java -jar TightVncViewer.jar HOST myserver PORT 5900
VNC über einen Webbrowser:
Datei tightvnc-jviewer.jar
in ein Verzeichnis /vnc
eines Webservers kopieren.
Dann diese Datei vnc.jnlp
auch dort erstellen.
- vnc.jnlp
<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="1.0+" codebase="http://meinserver/vnc/" href="vnc.jnlp">
<information>
<title>VNC-Starter</title>
<vendor>Richard</vendor>
<description>VNC-Starter für JAVA</description>
</information>
<resources>
<j2se version="1.4+" />
<jar href="tightvnc-jviewer.jar" />
</resources>
<security>
<all-permissions/>
</security>
<offline-allowed/>
<application-desc main-class="com.glavsoft.viewer.Viewer" />
Zugriff über http://meinserver/vnc/vnc.jnlp jetzt möglich
zurück