Kann ich einen Remotedesktop an einen anderen Benutzer auf demselben Computer senden?

12

Auf meinem Arbeits-Mac, der sich physisch in meinem Arbeitsbüro befindet, möchte ich meine Arbeit von meinen persönlichen Dingen trennen, indem ich zwei verschiedene Benutzerkonten verwende. Normalerweise bleibe ich als Arbeitsbenutzer angemeldet. Aber ich möchte sie gleichzeitig sichtbar haben, da ich einen großen Bildschirm habe. Ich denke, ich könnte ein nettes Setup erhalten, wenn ich den eingebauten Remotedesktop-Client oder einen VNC-Client eines Drittanbieters verwenden könnte, um eine Verbindung zum Anmeldebildschirm des vorhandenen Computers herzustellen, sodass ich einen anderen Benutzer auswählen kann. Oder wenn ich mich als bestimmter Benutzer verbinden könnte, obwohl der physische Computer bereits als jemand anderes angemeldet ist.

Normalerweise verwende ich mein System mit aktiviertem "Remote Management" -Modus (nicht nur Remotedesktop) und verwende zu Hause häufig einen VNC-Client, um bei der Arbeit auf meinen Mac-Desktop zuzugreifen. Obwohl dies nicht meine tägliche Routine ist. In diesem Modus stellt der VNC-Client sofort eine Verbindung zum vorhandenen Desktop her. Gibt es eine Möglichkeit, diese Verbindung zu erzwingen, um stattdessen zum Anmeldebildschirm zu wechseln? Wenn ich einen VNC-Client verwende, um eine Verbindung zum vorhandenen Bildschirm herzustellen, kann ich sehen, dass es versucht (Sie erhalten die Art von unendlichem Regress, die Sie vielleicht erwarten), sodass die grundlegende Verbindung funktioniert. Ich möchte nur, dass ich einen anderen Benutzer auswählen kann.

Bearbeiten: Ich denke, ein Teil des Problems besteht darin, dass das System möglicherweise eine VNC-Serversitzung im Hintergrund ausführt und darauf wartet, dass ich eine Verbindung herstelle. Es stellt eine Verbindung zur aktiven Sitzung her. Es scheint entweder zu passieren, wenn ich "Fernverwaltung" aktiviert habe oder nur "Bildschirmfreigabe". Die Verwendung eines alternativen Benutzers in einem "Öffnen" -Befehl führt zu einem Fehler, dass Sie Ihren eigenen Bildschirm nicht steuern können.

Beide Konten befinden sich auf meinem Arbeitscomputer. Von zu Hause aus möchte ich auf meinem Arbeitscomputer eine Verbindung zu meinem "Arbeitsbenutzer" herstellen. Von meinem Schreibtisch bei der Arbeit aus, als mein "Arbeitsbenutzer" angemeldet, möchte ich in der Lage sein, eine Verbindung zum "persönlichen Benutzer" auf meinem Arbeitscomputer herzustellen.

Ich denke, mein eigentliches Problem hängt damit zusammen, was auf der Serverseite der Verbindung passiert. Ich möchte, dass das Betriebssystem das Anmeldefenster startet, obwohl ein Benutzer auf dem Hauptbildschirm / der Tastatur angemeldet ist. Ich weiß, dass ein Remote-Login-Benutzer unter bestimmten Umständen den Login-Bildschirm erhalten kann. Möglicherweise muss ich die Idee aufgeben, manchmal eine Verbindung zum angemeldeten Benutzer herzustellen und manchmal eine Verbindung mit einem neuen Login herzustellen. Wenn ich vollständig in den Fresh-Login-Modus wechseln kann, wäre das ein Anfang.

Wie entscheidet Mac OS, ob der Anmeldebildschirm für eine Remoteverbindung angezeigt wird, anstatt Sie nur mit dem laufenden Desktop zu verbinden? Ich dachte, es hängt damit zusammen, dass "Fernverwaltung" aktiviert ist und "Bildschirmfreigabe". Aber wenn nur "Bildschirmfreigabe" aktiviert ist, erhalte ich immer noch das Verhalten "Verbindung zu vorhandenem herstellen".

Chris Quenelle
quelle
Ich möchte fragen, ob es einen defaults writeHack gibt, der die Einschränkung lockert Screen Sharing.app, oder ob es eine Empfehlung für den kostenlosen VNC-Viewer gibt.
Amydy

Antworten:

13

ARD in Ihr "Arbeitskonto" und führen Sie dann auf dem Remotecomputer die folgenden Schritte aus, um ein Fenster für die Bildschirmfreigabe für Ihr "persönliches Konto" auf demselben Remotecomputer zu öffnen.

Erstellen Sie einen SSH-Tunnel. Es funktioniert bei mir mit 10.9.

Aktivieren Sie SSH ( Remote Login ) in den Systemeinstellungen> Freigabe und in Terminalausführung:

ssh -NL 5901:localhost:5900 localhost

Verwenden Sie schließlich die Bildschirmfreigabe, um eine Verbindung zu localhost: 5901 herzustellen (anstelle des Standardports 5900). Anstelle von Port 5901 können Sie einen viel höheren Port verwenden, der von nichts anderem verwendet wird.

Die Bildschirmfreigabeanwendung befindet sich hier: /System/Library/CoreServices/Screen Sharing.app

Mindmischief
quelle
Dies leitet nur 5901 zu 5900 um, oder? Auf der Serverseite wird kein neuer Remote-Anmeldevorgang ausgeführt.
Chris Quenelle
SSH-Manpage :: -L Gibt an, dass der angegebene Port auf dem lokalen (Client-) Host an den angegebenen Host und Port auf der Remote-Seite weitergeleitet werden soll. :: -N Führen Sie keinen Remote-Befehl aus. Dies ist nützlich, um nur Ports weiterzuleiten (nur Protokollversion 2).
Mindmischief
Oh mein Gott, das ist großartig! Endlich kann ich schnell Dinge wie lokalisierte Zeichenfolgen in Menüs überprüfen, ohne auf virtuelle Maschinen zurückgreifen oder mich abmelden und wieder anmelden zu müssen!
Asmus
Das ist in der Tat großartig, schließlich so etwas wie verschachteltes X unter Linux. Es arbeitet an Sierra. Das Öffnen des Kontos eines anderen Benutzers auf dem zweiten virtuellen Desktop ist viel besser als das ständige Wechseln des Kontos.
Herr Tao
Dies funktioniert immer noch unter 10.14 Mojave. Für Anfänger wie mich würde ich ein paar Dinge hinzufügen, die mich vorübergehend verwirrten: 1. Sie geben den Befehl ssh in Terminal für das Konto ein, das Sie remote INTO (nennen wir es Konto 1), und lassen diesen Prozess im Terminal laufen . Das Terminal wird Sie über die "Authentizität des Hosts 'localhost' informieren, aber das scheint normal zu sein. Das einzige Feedback, das Sie sehen, dass der SSH-Prozess funktioniert, ist in der Titelleiste des Terminalfensters. 2. Wenn Sie die Bildschirmfreigabe starten , tun Sie das in dem Konto, von dem Sie entfernt werden möchten (rufen Sie dieses Konto 2 auf).
Gorb
4

Sie können einen bestimmten Benutzer mit dem Befehl open im Terminal angeben .

open vnc://user:password@hostname(or IP)

Dies ist auch durch Go Connect to Server ( cmd+ k) vom Finder und Eingabe von vnc: // Hostname (oder IP) möglich.

Sie können nur zwei Benutzer remote auf einem Computer ausführen.

tron_jones
quelle
Mit 10.9 sagen beide: "Sie können Ihren eigenen Computer nicht steuern." Beide öffnen effektiv die Bildschirmfreigabe, die dies nicht zulässt.
Mindmischief
Ich erhalte die Meldung "Sie können Ihren eigenen Bildschirm nicht steuern".
Chris Quenelle
Ich sehe aus Ihrer Bearbeitung oben, dass das unmöglich ist. Haben Sie versucht, von Ihrem Heimcomputer aus eine separate Verbindung zu jedem Benutzer herzustellen?
tron_jones
Ich konnte es durch meine Erklärung zum
Laufen bringen
Wenn Sie auf demselben Computer einen Bildschirm für die Neuanmeldung haben, auf dem sich ein Benutzer bereits angemeldet hat, teilen Sie mir bitte mit, welche Elemente Sie in den Einstellungen für die Freigabe aktiviert haben.
Chris Quenelle
1

Um die Antwort von @mindmischief zu klären , gehen Sie folgendermaßen vor:

  1. (optional) Erstellen Sie einen neuen Benutzer (z. B. vnc) in den Einstellungen / Benutzern mit dem Kennwort.
  2. Aktivieren Sie in den Einstellungen / Freigabe die Bildschirmfreigabe und die Remote-Anmeldung ( erlauben Sie auch den Zugriff darauf).
  3. Stellen Sie sicher, dass dies ssh vnc@localhostfunktioniert.
  4. Ausführen: ssh -NL 5901:localhost:5900 vnc@localhost(gemäß diesem Beitrag ).

Hinweis: Sie können einen anderen Benutzer als verwenden vnc. Fügen Sie -vvvzum Debuggen Ihrem sshBefehl hinzu.

Öffnen Sie nun die VNC-Verbindung mit dem folgenden Befehl:

open vnc://localhost:5901/
Kenorb
quelle
Wie ist das Erstellen eines neuen Benutzers optional? Wie kann ich eine Verbindung herstellen, ohne einen Benutzer zu haben? Es scheint, dass Sie eine unter "Zugriff zulassen für:"
angeben müssen
@trainoasis Sie können jederzeit zu einem anderen vorhandenen Benutzer ssh.
Kenorb
0

Heutzutage funktioniert dies sofort mit der integrierten Funktion „Bildschirmfreigabe“ (bei der es sich nur um einen integrierten VNC-Server handelt).

Gehen Sie zu "Systemeinstellungen → Freigabe" und aktivieren Sie "Bildschirmfreigabe" für alle Benutzer. Jetzt kann jedes Benutzerkonto über einen beliebigen VNC-Client eine Verbindung herstellen und sich bei seiner eigenen Sitzung anmelden.

Kirelagin
quelle