Leap 42.2 VNC Remote Administration funktioniert nicht

Hinweis: In dem Thema Leap 42.2 VNC Remote Administration funktioniert nicht gibt es 36 Antworten auf 4 Seiten. Der letzte Beitrag () befindet sich auf der letzten Seite.
  • Ich versuche es nochmal.


    Auf dem Server (Ziel der Remoteadministration) habe ich:
    - keine VNC Server separat installiert.
    - nur Yast Remote Administration aktiviert.
    - Normalerweise -bei funktionierenden Installationen- nutze ich Port 5901 zum Zugriff.
    Da es nicht- automatisch- funktioniert rufe ich bspw.

    Code
    vncserver :2

    auf, dann läuft vncserver über Port 5902.


    Lokal auf dem Windows PC starte ich VNC Viewer, um auf den Server zu gehen.

    Für den Inhalt des Beitrages 101792 haftet ausdrücklich der jeweilige Autor: Tar Zahn

  • Es kann ziemlich verwirrend sein.
    Es kann auf einem Server ein, oder mehrere X-Server laufen.
    Jeder X-Server kann mehrere Displays haben.


    Es können also auch viele XServer mit jeweils vielen Displays laufen.


    Ohne die jeweiligen Configs, macht es wenig Sinn.
    Da bleibt nur der Hinweis: Doku lesen.



    Am Rande: Auch die Wahl des Displays muss bei Nummer 2 nicht notwendigerweise auf dem Port 5902 landen.
    (Zumal prinzipiell alle Ports verbogen werden können)

  • Es kann natürlich alles mögliche passieren oder schiefgehen und man kann prinzipiell auch alles erstmal umstellen, ändern, kaputt machen, ob aus Ahnungslosigkeit oder Geheimniskrämerei.


    Aber:
    Es handelt sich um eine frische Installation, in der nur ein paar Patterns angeklickt sind und eine statische IP eingetragen ist.
    Ich weiß nicht mal, wo Yast meine Remote Admin Klicks in eine Konfiguration schiebt. Musste ich bis jetzt auch nicht, weil es funktioniert hat.
    Falls mir jemand sagen kann, welche Dateien hier relevant sind, wäre das ja mal ein Ansatz.

    Für den Inhalt des Beitrages 101820 haftet ausdrücklich der jeweilige Autor: Tar Zahn

  • Falls mir jemand sagen kann, welche Dateien hier relevant sind, wäre das ja mal ein Ansatz.

    Das scheint alles nicht so einfach zu sein - ich lege dir daher noch einmal die x11vnc-Lösung ans Herz. Die erfüllt immer noch auf ihre Weise die minimalistischen Ansprüche.
    Aber aufdrängeln werd ich sie dir natürlich nicht .. :evil:


    Zitat

    Ich installiere eh per Yast das ganze System, KDE / GNOME ist auch Wurst, da ich 99% mit Konsole arbeite.

    und warum dann nicht ssh?

    There's no place like 127.0.0.1

    Für den Inhalt des Beitrages 101821 haftet ausdrücklich der jeweilige Autor: wurzel99

  • Was bedeutet denn "das scheint nicht so einfach zu sein"?
    Meine Konfig abzufragen? Mir Infos zu entlocken?
    Oder die "Remote Admin Konfiguration" aus Yast zu korrigieren?


    Ich kann noch mal diese Info betonen:
    Auch eine Standardinstallation von 13.2 lief nicht auf diesem einen Rechner- die Remote Administration. Hier habe ich aber nicht weiter ausprobiert, sondern gleich Leap 42.2 genommen. Ich vermute, unter 13.2. wäre es auch mit dem Workaround identisch gelaufen. Es ist also vielleicht mehr ein Hardwareproblem.


    Ach und klar, ich installiere immer ssh und arbeite dann idR per Konsole.


    Und es muss doch Konfigurationsdateien dafür geben oder?

    Für den Inhalt des Beitrages 101823 haftet ausdrücklich der jeweilige Autor: Tar Zahn

  • Ich habe dazu folgende Doku gefunden.
    Remote Access with VNC | Reference | openSUSE Leap 42.2


    Sie ist scheinbar inkonsistent, denn "Check Allow Remote Administration." ist so nicht in meinem Leap 42.2 verfügbar.
    Ich kann angeben:
    +Remote Administration Settings---------------------------------------------+
    ¦(x) Allow Remote Administration With Session Management ¦
    ¦( ) Allow Remote Administration Without Session Management ¦
    ¦( ) Do Not Allow Remote Administration ¦
    +---------------------------------------------------------------------------+
    Do Not Allow Remote Administration:
    Die Default services werden -konsistent- in der Datei /etc/xinetd.d/vnc disabled.
    Alle 6 vordefinierten Einträge sind disabled


    Allow Remote Administration With Session Management
    Es wird der httpd service "vnchttpd1" enabled, sprich die Zeile "disabled = yes" entfernt
    1 von 6 services ist enabled

    Allow Remote Administration Without Session Management
    "disable = yes" wird bei service "vnc1" und "vnchttpd1" entfernt
    2 von 6 services ist enabled



    Also sieht man, irgendetwas macht yast. Ich finde es von der yast Benennung her missverständlich* und mir ist eigentlich auch nicht klar, wie ausgehend von den yast Einstellungen die Änderungen in der Datei vnc zu verstehen sind. Da sehe ich keinen direkten Zusammenhang. Wieso ist "with session management" = vnchttpd service enabled?


    Letztlich fehlt mir persönlich nun der Teil, mit dem das "Session Management" gesteuert wird.
    In welcher Datei wird das definiert?


    *ich verstehe es so:
    "With Session Management" nimmt mir das Session Management ab, es läuft automatisch
    "Without Session Mangement" überlässt das Session Management mir, wenn ich selbst nichts starte oder aufräume, geht nichts.

    Für den Inhalt des Beitrages 101829 haftet ausdrücklich der jeweilige Autor: Tar Zahn

  • Wie gesagt, der Link beschreibt die Darstellung in Yast nicht richtig.
    Die vnc Konfigurationsdatei wird bei Änderung in Yast zwar geändert, aber ich sehe keinen -mir verständlichen- Zusammenhang zwischen den Änderungen und den Yast Optionen.


    Der xinetd läuft.
    Es gibt auch X bzw. vnc Prozesse, deren Zusammenhänge ich aber auch nicht richtig verstehe.


    Ich gehe davon aus, dass die in dem Link genannte "One Time Session" Methode, dem in Yast wählbaren "with Session Management" entspricht, die "Persistent Session" Methode dagegen dem "withOUT Session Management"


    Gefühlt liegt irgendwie eine Mischkonfiguration vor, deren Funktion (Zustandekommen einer Verbindung) mehr oder weniger auf manuell gestarteten Servern beruht, also "without session management" laut yast.
    Das manuelle Starten und Stoppen mittels 'vncserver :[display]' funktioniert ja offenbar so, wie es laut Link beschrieben ist. Das tut es aber offenbar vollkommen unabhängig von den yast Einstellungen.

    Für den Inhalt des Beitrages 101849 haftet ausdrücklich der jeweilige Autor: Tar Zahn

  • Ein X-Server stellt für eine graphische Oberfläche alle Mittel bereit.
    Dafür kontrolliert er Maus, Tastatur, Tablets, Pens und der gleichen.
    Er ist -wie Linux selbst- multiuser/multitasking fähig.
    Und er kann via Netzwerk arbeiten.
    Man kann sogar mehrere X-Server laufen haben.


    Ein X-Server stellt dafür für jede graphische Konsole einen sogenannten Displayport bereit. Diese Ports werden schlicht mit Null beginnend durchnummeriert.
    Heute liegt die erste graphische Konsole auf <strg><alt><f7>.
    Die verwendet Display:0 (auch per Konvention).
    Auf den vorherigen Konsolen liegen schlicht normale Terminals, bei denen bereits das login Programm läuft.


    Das ist aber noch nicht alles. Man kann sich z.B. mit ssh -X (was -X-Server forwarding heißt) auf einen Server verbinden. Dort kann man dann auf einer ssh-Konsole z.B. firefox aufrufen. Dort startet dann ein Firefox, der seine Ausgabe auf dem dort laufenden X-Server macht, dessen Displayport via ssh an den lokalen X-Server weiterleitet, der dann auf dem lokalen Bildschirm das Fenster der remote laufenden Firefoxinstanz anzeigt.


    Ein X-Server kann auch selbst TCP/IP Verbindungen akzeptieren, was heute ein gewaltiges Sicherheitsloch darstellt, und deshalb bei allen Distris von Haus abgeschaltet wird.


    Dafür verwendet man heute vnc (=VirtualNetworkComputing) oder rdp (=RemoteDesktopProtocol) (vnc==Linux, rdp==Microsoft). Natürlich kann Linux beide Protokolle. Ein sehr guter VNC/RDP Client ist Remmina
    Ein modernes, sehr schnelles Protokoll für diese Fensterverschiebebahnhöfe ist spice, das hauptsächlich bei Virtualisierungen eingesetzt wird.
    Im wesentlichen muss dieses Protokoll Mausbewegungen, Keyboardanschläge und alle Fenster übertragen. Da das eine ziemliche Menge an Daten sein kann, wird das komprimiert und verschiedene Algorithmen versuchen möglichst wenig "Bilder" des "Desktops" zu übertragen (nur was geändert wird, usw.).


    Damit man nun einen entfernten X-Server verwenden kann, braucht man einen VNC-Server, der sich darum kümmert.
    Der ist quasi eine zwischen remote-X-Server und lokalem X-Server zwischengeschaltete "Netzwerkinstanz".


    Und damit wären wir bei dem Problem der Autorisierung. Ein Linuxserver hat zu prüfen und tut das auch, wer für den Zugriff berechtigt ist. Das ist im einfachsten Falle schlicht ein normaler Linuxuser Account, und man autorisiert sich mit dem zugehörigen Spasswort. Es könnte aber auch mit einem kerberisierten LDAP Server, der wiederum in einer echten SQL-DB alle Daten speichert, gemacht werden.
    Oder mal ganz abgedreht: Ein Linuxuser wird in einer Mircosoft ActiveDirectory Domain verwaltet, die via Kerberos entsprechende Rechte vergibt. Geht auch. Kann man ganz schön wild und kompliziert machen.
    Aber irgendwie muss es gemacht werden.


    ODER man will eine "persistente VNC-Verbindung". Das heißt nichts anderes, als dass ein X-Server-user einfach auf einem Server einen Displayport belegt hat, und den anderen über das Netzwerk zur Verfügung stellt. Damit können sich viele User in EINER X-Session EIN Display teilen. Es wird dazu ein Einmalspasswort generiert.


    Falls ich dich recht verstanden habe, willst du aber eine "singuläre VNC- Verbindung". Die läuft halt (und alle darin laufenden Fenster/Programme) solange diese Netzwerksitzung halt läuft.
    Da muss sich jetzt der vncserver drum kümmern, dass der User korrekt eingeloggt wird, bevor er den Zugriff auf einen Displayport des dortigen X-Servers gestattet. Und das kann kompliziert sein.


    Der xinetd ist der sogenannte "Superserver". Eine etwas antiquirte Konstruktion, die auf allen Ports für alle dafür konfigurierte Server lauscht, und bei Verbindungseingang dann den jeweiligen Server startet, die Anfrage dorthin weiterleitet. Ist die Anfrage beendet, beendet sich auch der eigentliche Serverdienst wieder und der xinetd lauscht wieder stellvertretend für den Serverdienst auf diesem Port. xinetd kann auf vielen Ports für viele Serverdienste lauschen. Aber man braucht ihn nicht. Man jeden Serverdienst auch ohne ihn laufen lassen. Zum Preis für mehr Ressourcenverbrauch (mehr RAM, mehr Rechenleistung...).
    Er ist NICHT für den Betrieb eines vncservers essentiell.
    Es ist halt so konfigurierbar, weil man VNC-Sessions nicht so oft braucht und hauptsächlich RAM und Rechenzeit sparen will.


    Der vnchttpd dient nur dazu das ganze VNC- Gedöns via http: abwickeln zu können. Was einem viel Ärger mit "ahnungslosen Kandidaten" sparen kann, weil man nicht an der Firewall viel rumfrickeln muss.


    Letztlich genügt es also EINEN vncserver zu starten und sich auf den -mit den passenden Einstellungen- mit EINEM vncviewer zu verbinden. Done.
    Die wichtigsten Einstellungen sind vncserver -geometry 1024x768 :8 , die du dann beim viewer ebenso angibst. Siehe man vncserver und man vncviewer


    Ebenso, wie man z.B. auf der graphischen Konsole <strg><alt><f7> KDE starten kann UND gleichzeitig auf <strg><alt><f8> dann Gnome starten kann, können natürlich auch dem vncserver entsprechende DEs zugewiesen werden.


    Das lesen wir aber erst in der nächsten Märchenstunde.


    Mach also allen Krempel mit xinetd aus.
    Starte einfach gemäß man vncserver eine Instanz und verbinde dich mit korrekten Parametern.
    Klappt das, kann man gucken, welche Methode für einen evtl. gewünschten "Autostart" sinnvoll ist.


    Würdest du -statt deinen Mutmaßungen- eher die konkreten Konfigs posten, könnte man evtl. besser helfen.

  • Würdest du -statt deinen Mutmaßungen- eher die konkreten Konfigs posten, könnte man evtl. besser helfen.

    Aber danach hatte doch der TE anfangs gefragt. "Wo sind diese zu finden!"
    Er würde diese dann doch selber anpassen.

    Für den Inhalt des Beitrages 101873 haftet ausdrücklich der jeweilige Autor: ThomasS