# Gnome Remote Desktop

Der Gnome Desktop ist mit einer eigenen Lösung für den Remote Zugriff
ausgestattet. Diese Lösung beinhaltet die Möglichkeit per RDP (Remote Desktop
Protocol) oder VNC auf eine bestehende Sitzung zuzugreifen.

Die Konfiguration wird durch den Benutzer innerhalb der Einstellungen
durchgeführt.

Alternativ lassen sich die Protokolle auch über die Kommandozeile aktivieren und
konfigurieren. Hierzu dient das Kommando `grdctl`.

## Übersicht über die aktuelle Konfiguration

```bash
user@linux ~$ grdctl status
Overall:
        Unit status: inactive
RDP:
        Status: enabled
        Port: 3389
        TLS certificate: /home/mgisbers/.local/share/gnome-remote-desktop/certificates/rdp-tls.crt
        TLS fingerprint: 4c:df:a8:66:16:fe:ad:e7:be:3a:c9:c1:81:75:8d:db:f2:eb:6d:45:d0:21:b1:4d:d1:1c:64:83:bc:c2:93:b1
        TLS key: /home/mgisbers/.local/share/gnome-remote-desktop/certificates/rdp-tls.key
        View-only: no
        Negotiate port: yes
        Username: (hidden)
        Password: (hidden)
VNC:
        Status: disabled
        Port: 5900
        Auth method: prompt
        View-only: yes
        Negotiate port: no
        Password: (empty)
```

## Aktivieren und Deaktivieren von RDP oder VNC

```bash
user@linux ~$ grdctl rdp enable
user@linux ~$ grdctl vnc enable

user@linux ~$ grdctl rdp disable
user@linux ~$ grdctl vnc disable
```

## Anpassen der Ports

```bash
user@linux ~$ grdctl rdp set-port $PORT
user@linux ~$ grdctl vnc set-port $PORT
```

## Viewonly aktivieren

Um einen Teilnehmer an einer Session nur zuschauen zu lassen, kann die Session
auf _view-only_ geschaltet werden.

```bash
user@linux ~$ grdctl rdp enable-view-only true
user@linux ~$ grdctl vnc enable-view-only true

user@linux ~$ grdctl rdp disable-view-only true
user@linux ~$ grdctl vnc disable-view-only true
```

## Zugangsdaten festlegen

Auch die Zugangsdaten lassen sich über die Kommandozeile festlegen und auch
wieder zurücksetzen.

```bash
user@linux ~$ grdctl rdp set-credentials $USER $PASSWORD
user@linux ~$ grdctl vnc set-password $PASSWORD

user@linux ~$ grdctl rdp clear-credentials
user@linux ~$ grdctl rdp clear-password
```
