arch-wiki-md-repo
Version:
All arch-wiki articles in markdown format, updated every two days.
97 lines (60 loc) • 5.18 kB
Markdown
[](https://wiki.gnome.org/Projects/Vino) is a VNC (Virtual Network Computing) server allowing remote connection to your actual desktop. It is a default component of the [GNOME](/index.php/GNOME "GNOME") desktop environment.
* [1 Installation](
* [1.1 GNOME](
* [1.2 Alternative Desktop Environments](
* [2 Configuration](
* [3 Running on a headless server](
* [4 See also](
[](/index.php/Install "Install") the [vino](https://www.archlinux.org/packages/?name=vino) package.
You need to restart GNOME so that `vino-server` is started automatically when enabling the remote desktop feature. The remote desktop feature can usually be enabled in Settings > Sharing, however this only seems to be functional when [NetworkManager](/index.php/NetworkManager "NetworkManager") is installed and functional.
As of version 3.9.2, Vino no longer includes a standalone preferences dialog (see [bug 700070](https://bugzilla.gnome.org/show_bug.cgi?id=700070)), thus making configuration difficult without the GNOME Control Center.
The easiest solution is to install the package [vino38](https://aur.archlinux.org/packages/vino38/), which provides the latest version with the preferences dialog, accessible via the `vino-preferences` command.
## Configuration
You can configure vino via gnome-control-center.
Now you can connect remotely to your desktop via a VNC viewer like TightVNC or Remmina. Remember to forward port 5900 if you are behind a NAT device and to allow the connection through iptables.
If you are having problems regarding security and encryption you could try:
```
$ gsettings set org.gnome.Vino require-encryption false
```
If you use a standalone [window manager](/index.php/Window_manager "Window manager") like [Openbox](/index.php/Openbox "Openbox") and it does not work, you can start `vino-server` manually or add the command to the window manager's autostart script
```
# /usr/lib/vino/vino-server &
```
## Running on a headless server
Vino can be used to manage a headless server with a graphical desktop via VNC. For this, a graphics driver like [xf86-video-dummy](https://www.archlinux.org/packages/?name=xf86-video-dummy) must be installed and [configured](/index.php/Xorg#Configuration "Xorg"). [xpra’s sample xorg.conf](http://xpra.org/xorg.conf) for the Xdummy driver can be used as a base. Then, the server can be configured to [start X at boot](/index.php/Start_X_at_boot "Start X at boot") for the user account that should be usable remotely. Vino must be made to [autostart with the desktop environment](/index.php/Desktop_entries#Autostart "Desktop entries") by creating a desktop entry in the user’s home directory such as this one:
`~/.config/autostart/vino-server.desktop`
```
[Desktop Entry]
Type=Application
Name=Vino VNC server
Exec=/usr/lib/vino/vino-server
NoDisplay=true
```
Next, make Vino accept VNC connections without asking for confirmation by running the following command as the graphical desktop user:
```
$ dbus-launch gsettings set org.gnome.Vino prompt-enabled false
```
You may wish to revoke suspend and hibernate permissions using [Polkit](/index.php/Polkit "Polkit").
For the [GNOME](/index.php/GNOME "GNOME") desktop environment, the following are some further options you may want for GNOME:
```
$ dbus-launch gsettings set org.gnome.desktop.lockdown disable-user-switching true
$ dbus-launch gsettings set org.gnome.desktop.lockdown disable-log-out true
$ dbus-launch gsettings set org.gnome.desktop.interface enable-animations false
```
Remember to configure your [firewall](/index.php/Firewall "Firewall") to not block the `rfb` port used for VNC. For secure authentication – which should be used when giving access to privileged users on the open internet –, you should tunnel the VNC protocol through e.g. [SSH](/index.php/SSH "SSH") or [stunnel](https://www.archlinux.org/packages/?name=stunnel) instead of unblocking the `rfb` port. When using stunnel, you should require a [password](/index.php/Security#Passwords "Security"):
```
$ dbus-launch gsettings set org.gnome.Vino authentication-methods "['vnc']"
$ dbus-launch gsettings set org.gnome.Vino vnc-password $(echo -n "mypassword"|base64)
```
You can now log in to your server with a VNC client such as [vinagre](https://www.archlinux.org/packages/?name=vinagre).
The above setup can also be used with multiple remote users logging in automatically, e.g. by using multiple copies of [xlogin-git](https://aur.archlinux.org/packages/xlogin-git/)’s service files in `/etc/systemd/system/`, each modified to log in a different user on a different X11 display and virtual terminal. With Vino, each user’s VNC server can be configured to listen on a different port as well:
```
$ dbus-launch gsettings set org.gnome.Vino alternative-port 5910
$ dbus-launch gsettings set org.gnome.Vino use-alternative-port true
```
* [Vino design document](http://people.gnome.org/~markmc/remote-desktop.html)