GNOME remote desktop client

Show Table of Contents
Hide Table of Contents
English
  • 简体中文
  • 日本語
  • English
  • Português
  • Español
Multi-page HTML
  • Single-page HTML
  • PDF
  • ePub
  1. Using the desktop environment in RHEL 8
  2. Making open source more inclusive
  3. Providing feedback on Red Hat documentation
  4. 1. Getting started with GNOME
    1. 1.1. What GNOME 3 is
    2. 1.2. GNOME environments, back ends, and display protocols
    3. 1.3. Launching applications in GNOME
      1. 1.3.1. Launching an application in GNOME Standard
      2. 1.3.2. Launching an application in GNOME Classic
      3. 1.3.3. Launching an application in GNOME using a command
    4. 1.4. Managing desktop icons
      1. 1.4.1. Desktop icons in RHEL 8
      2. 1.4.2. Enabling desktop icons in GNOME Standard
      3. 1.4.3. Creating a desktop icon for a file
    5. 1.5. Disabling the hot corner functionality on GNOME Shell
      1. 1.5.1. Disabling the hot corner functionality for a single user
        1. 1.5.1.1. Disabling hot corner using dconf Editor
        2. 1.5.1.2. Disabling hot corner using gsettings
      2. 1.5.2. Disabling the hot corner functionality for all users
    6. 1.6. Configuring sound in GNOME
      1. 1.6.1. Sound configuration tools in GNOME
      2. 1.6.2. Accessing sound configuration in GNOME Control Center
      3. 1.6.3. Sound options in GNOME Control Center
    7. 1.7. Handling graphics and photos
    8. 1.8. Handling printing
      1. 1.8.1. Starting GNOME control center for setting up printing
      2. 1.8.2. Adding a new printer in GNOME Control Center
      3. 1.8.3. Configuring a printer in GNOME Control Center
      4. 1.8.4. Printing a test page in GNOME Control Center
      5. 1.8.5. Setting print options using GNOME Control Center
    9. 1.9. Sharing media between applications
    10. 1.10. Customizing GNOME Shell environment with the Tweaks tool
  5. 2. Overview of GNOME environments
    1. 2.1. GNOME environments, back ends, and display protocols
    2. 2.2. GNOME Standard
    3. 2.3. GNOME Classic
    4. 2.4. Enabling window overview in GNOME Classic
    5. 2.5. Graphics back ends in RHEL 8
    6. 2.6. Key differences between the Wayland and X11 protocol
    7. 2.7. Current Wayland limitations
    8. 2.8. Selecting GNOME environment and display protocol
  6. 3. Installing applications in GNOME
    1. 3.1. The GNOME Software application
    2. 3.2. Installing an application using GNOME Software
    3. 3.3. Installing an application to open a file type
    4. 3.4. Installing an RPM package in GNOME
    5. 3.5. Installing an application from the application search in GNOME
    6. 3.6. Additional resources
  7. 4. Registering the system for updates using GNOME
    1. 4.1. Registering a system using Red Hat account on GNOME
    2. 4.2. Registering a system using an activation key on GNOME
    3. 4.3. Unregistering the system using GNOME
  8. 5. Accessing the desktop remotely
    1. 5.1. Remote desktop access options
    2. 5.2. Remotely accessing the desktop as a single user
      1. 5.2.1. Enabling desktop sharing on the server using GNOME
      2. 5.2.2. Connecting to a shared desktop using GNOME
      3. 5.2.3. Disabling encryption in GNOME VNC
    3. 5.3. Remotely accessing the desktop as multiple users
      1. 5.3.1. The mapping of port and display numbers to users in VNC
      2. 5.3.2. VNC server configuration files
      3. 5.3.3. Enabling multi-user VNC access on the server
      4. 5.3.4. Connecting to the VNC server as multiple users
    4. 5.4. Remotely accessing an individual application
      1. 5.4.1. Enabling X11 forwarding on the server
      2. 5.4.2. Launching an application remotely using X11 forwarding
  9. 6. Configuring GNOME at low level
    1. 6.1. Introduction to configuring GNOME
    2. 6.2. Managing user and system GNOME settings
    3. 6.3. Displaying GSettings values for desktop applications
    4. 6.4. Using dconf profiles
      1. 6.4.1. Introduction to dconf profiles
      2. 6.4.2. Selecting a dconf profile
    5. 6.5. Configuring custom default values
    6. 6.6. Locking down specific settings
    7. 6.7. Storing user settings over NFS
    8. 6.8. Setting GSettings keys properties
    9. 6.9. Working with GSettings keys on command line
      1. 6.9.1. Setting key value
      2. 6.9.2. Monitoring key changes
      3. 6.9.3. Checking whether key is writable
      4. 6.9.4. Checking key valid values
      5. 6.9.5. Checking description of valid key values
      6. 6.9.6. Querying key value
      7. 6.9.7. Resetting key value
      8. 6.9.8. Resetting schema
      9. 6.9.9. Listing installed non-relocatable schemas
      10. 6.9.10. Listing schema keys
      11. 6.9.11. Listing schema children
      12. 6.9.12. Listing schemas keys and values
    10. 6.10. Acknowledgements
  10. 7. Configuring file associations
    1. 7.1. Multipurpose Internet Mail Extension types
    2. 7.2. Adding a custom MIME type for all users
    3. 7.3. Adding a custom MIME type for individual users
    4. 7.4. Options to override default MIME types
    5. 7.5. Overriding default registered application for all the users
    6. 7.6. Overriding default registered application for individual users
  11. 8. Customizing desktop appearance
    1. 8.1. Customizing desktop backgrounds
      1. 8.1.1. Customizing the default desktop background
      2. 8.1.2. Adding extra backgrounds
      3. 8.1.3. Setting the screen shield
    2. 8.2. Using GNOME Shell extensions to customize desktop environment
      1. 8.2.1. Overview of GNOME Shell extensions
      2. 8.2.2. Enabling machine-wide extensions
      3. 8.2.3. Locking down enabled extensions
      4. 8.2.4. Setting up mandatory extensions
  12. 9. Customizing GNOME desktop features
    1. 9.1. Changing the language using desktop GUI
    2. 9.2. Enabling the CTRL+ALT+BACKSPACE shortcut
    3. 9.3. Disabling command-line access
      1. 9.3.1. Setting the org.gnome.desktop.lockdown.disable-command-line Key
      2. 9.3.2. Disabling virtual terminal switching on X.Org
    4. 9.4. Preventing the computer from suspending when closing the lid
    5. 9.5. Changing behavior when pressing the power button in graphical target mode
  13. 10. Enabling Chinese, Japanese, or Korean text input
    1. 10.1. Input methods
    2. 10.2. Available input method engines
    3. 10.3. Installing input method engines
    4. 10.4. Switching the input method in GNOME
  14. 11. Inputting uncommon characters using the Compose key
    1. 11.1. Enabling the Compose key
      1. 11.1.1. Enabling the Compose key for an individual user with the Tweaks application
      2. 11.1.2. Enabling the Compose key for an individual user using GSettings
      3. 11.1.3. Enabling the Compose key for all users
    2. 11.2. Using the Compose key to input characters
    3. 11.3. The Compose key sequences
  15. 12. Typing emoji characters
    1. 12.1. Typing emoji characters in GTK applications
    2. 12.2. Typing emoji characters in any applications
  16. 13. Managing storage volumes in GNOME
    1. 13.1. The GVFS system
    2. 13.2. The format of the GVFS URI string
    3. 13.3. Mounting a storage volume in GNOME
    4. 13.4. Unmounting a storage volume in GNOME
    5. 13.5. Overview of FUSE daemon in GVFS
    6. 13.6. GIO tools and xdg-utils in GNOME
    7. 13.7. Executing the GIO commands
    8. 13.8. Overview of GVFS Metadata
    9. 13.9. Setting custom GIO metadata attribute
    10. 13.10. Password management of GVFS mounts
    11. 13.11. Accessing GVFS mounts that require authentication
    12. 13.12. GVFS back ends
    13. 13.13. Troubleshooting volume management in GNOME
      1. 13.13.1. Troubleshooting access to GVFS locations from non-GIO clients
      2. 13.13.2. Troubleshooting an invisible connected USB disk
      3. 13.13.3. Troubleshooting unknown or unwanted partitions listed in Files
      4. 13.13.4. Troubleshooting if a connection to the remote GVFS file system is unavailable
      5. 13.13.5. Troubleshooting a busy disk in GNOME
  17. 14. Managing bookmarks in GNOME
    1. 14.1. Bookmarks in GNOME
    2. 14.2. Adding a bookmark in Files
    3. 14.3. Bookmarks for all GNOME users
  18. 15. Customizing default favorite applications
    1. 15.1. Setting different favorite applications for individual users
    2. 15.2. Setting the same favorite applications for all users
  19. 16. Authenticating the user in the desktop environment
    1. 16.1. Using enterprise credentials to authenticate in GNOME
      1. 16.1.1. Logging in with Enterprise Credentials in GNOME
      2. 16.1.2. Configuring enterprise credentials at the GNOME welcome screen
      3. 16.1.3. Adding an authenticated user with enterprise credentials in GNOME
      4. 16.1.4. Troubleshooting enterprise login in GNOME
    2. 16.2. Enabling smart card authentication
      1. 16.2.1. Configuring smart card authentication in GDM using the GUI
      2. 16.2.2. Configuring smart card authentication in GDM using the command line
      3. 16.2.3. Enabling the smart card authentication method in the system
    3. 16.3. Fingerprint authentication
  20. 17. Locking down selected tasks
    1. 17.1. Locking down printing
    2. 17.2. Locking file saving on disk
    3. 17.3. Locking repartitioning
    4. 17.4. Locking down user logout and user switching
  21. 18. Restricting the session to a single application
    1. 18.1. Single-application mode
    2. 18.2. Enabling single-application mode
  22. 19. Managing user sessions
    1. 19.1. What GDM is
    2. 19.2. Restarting GDM
    3. 19.3. Adding an autostart application for all users
    4. 19.4. Configuring automatic login
    5. 19.5. Configuring automatic logout
    6. 19.6. Setting screen brightness and idle time
    7. 19.7. Locking the screen when the user is idle
    8. 19.8. Screencast recording
  23. 20. Configuring the screen rotation
    1. 20.1. Configuring the screen rotation for a single user
    2. 20.2. Configuring the screen rotation for all users
  24. 21. Configuring the desktop environment for accessibility
    1. 21.1. Components that provide accessibility features
    2. 21.2. Configuring the brltty service
      1. 21.2.1. Enabling the brltty service
      2. 21.2.2. Authorizing users of a Braille display device
        1. 21.2.2.1. Authorizing users of a Braille display device with brltty.conf
        2. 21.2.2.2. Authorizing users of a Braille display device with brlapi.key
      3. 21.2.3. Setting the driver for a Braille display device
      4. 21.2.4. Configuring a Braille display device
        1. 21.2.4.1. Supported types of Braille display device
        2. 21.2.4.2. Setting specific parameters for Braille display devices
          1. 21.2.4.2.1. Setting the text table
          2. 21.2.4.2.2. Setting the contraction table
    3. 21.3. Switching on Always Show Universal Access Menu
  25. 22. Tablets
    1. 22.1. Preparing a tablet definition file
    2. 22.2. Adding support for a new tablet
    3. 22.3. Where is the Wacom tablet configuration stored
    4. 22.4. Listing available Wacom tablet configuration paths
  26. 23. Installing applications using Flatpak
    1. 23.1. The Flatpak technology
    2. 23.2. Setting up Flatpak
    3. 23.3. Enabling the Red Hat Flatpak remote
    4. 23.4. Searching for Flatpak applications
    5. 23.5. Installing Flatpak applications
    6. 23.6. Launching Flatpak applications
    7. 23.7. Updating Flatpak applications
    8. 23.8. Installing Flatpak applications in the graphical interface
    9. 23.9. Updating Flatpak applications in the graphical interface
  27. Legal Notice

Chapter5.Accessing the desktop remotely

You can connect to the desktop on a RHEL server from a remote client.

5.1.Remote desktop access options

RHEL provides several options for remotely connecting to the desktop. Each option fits a different use case:

Single-user access using GNOME tools

This method enables remote access on the client and the server using graphical GNOME applications. It configures a Virtual Network Computing [VNC] session so that only a single user can connect to the desktop on the server at a given time.

Depending on the session type, this method uses different components to implement screen sharing:

  • In an X11 session, it uses the vino component.
  • In a Wayland session, it uses the gnome-remote-desktop component.

    This method always uses display number 0. As a consequence, the VNC session always connects to the user who is logged into the server system.

    The VNC client application must support tls_anon connections. For example, you can use the Remote Desktop Viewer [vinagre] application on Linux systems. Before you can connect from Microsoft Windows clients, such as RealVNC, you must disable the VNC encryption on the server.

Multi-user access using command-line tools

This method configures a VNC session so that multiple remote clients can connect to the server in parallel. You must first enable the VNC access on the client and the server using command-line tools.

Any VNC client application can connect to a server configured using this method.

Accessing a single application using X11 forwarding over SSH

This method executes an SSH command on the client that launches an individual graphical on the server. The application window opens on the client.

This method is useful when you do not require a full remote desktop session.

5.2.Remotely accessing the desktop as a single user

You can remotely connect to the desktop on a RHEL server using graphical GNOME applications. Only a single user can connect to the desktop on the server at a given time.

5.2.1.Enabling desktop sharing on the server using GNOME

This procedure configures a RHEL server to enable a remote desktop connection from a single client.

Procedure

  1. Configure a firewall rule to enable VNC access to the server:

    # firewall-cmd --permanent --add-service=vnc-server
  2. Reload firewall rules:

    # firewall-cmd --reload
  3. Open Settings in GNOME.
  4. Navigate to the Sharing menu:

  5. Click Screen Sharing.

    The screen sharing configuration opens:

  6. Click the switch button in the window header to enable screen sharing:

  7. Select the Allow connections to control the screen check box.
  8. Under Access Options, select the Require a password option.
  9. Set a password in the Password field.

    Remote clients must enter this password when connecting to the desktop on the server.

5.2.2.Connecting to a shared desktop using GNOME

This procedure connects to a remote desktop session using the Remote Desktop Viewer application [vinagre]. It connects to the graphical session of the user that is currently logged in on the server.

Prerequisites

  • A user is logged into the GNOME graphical session on the server.
  • The desktop sharing is enabled on the server. For details, see Section5.2.1, Enabling desktop sharing on the server using GNOME.

Procedure

  1. Install the Remote Desktop Viewer application on the client:

    # yum install vinagre
  2. Launch the Remote Desktop Viewer application [vinagre].
  3. Click Connect.

  4. In the Protocol menu, select VNC.
  5. In the Host field, enter the IP address of the server.

  6. Click Connect.

Verification steps

  1. On the client, check that you can see the shared server desktop.
  2. On the server, a screen sharing indicator appears on the right side of the top panel:

    You can control the screen sharing in the system menu.

5.2.3.Disabling encryption in GNOME VNC

You can disable encryption in the GNOME remote desktop solution. This enables VNC clients that do not support the encryption to connect to the server.

Procedure

  1. As the server user, set the /org/gnome/desktop/remote-desktop/vnc/encryption GSettings key to ['none']:

    $ gsettings set org.gnome.desktop.remote-desktop.vnc encryption "['none']"
  2. Optional: RedHat recommends that you tunnel the VNC connection over SSH to your VNC port. As a result, the SSH tunnel keeps the connection encrypted.

    For example:

    1. On the client, configure the port forwarding:

      # ssh -N -T -L 5901:server-ip-address:5901
    2. Connect to the VNC session on the localhost:5901 address.

5.3.Remotely accessing the desktop as multiple users

You can remotely connect to the desktop on a RHEL server and open multiple sessions as different users at the same time.

5.3.1.The mapping of port and display numbers to users in VNC

With VNC, the client can connect to the desktop sessions of different users on the server. A display number and a TCP port number are attached to each server user that exports a VNC session. The client uses the port number to specify which server user it connects to.

If several clients connect using the same port number, they all open a VNC session to the same server user.

You must configure a mapping for each server user that exports a VNC session. For every such user, you must pick a unique port and display number.

The recommended mapping

RedHat recommends that you start with port number 5902 and display number 2 for the first user, and increment the numbers by one for each additional server user.

Port number 5900 and display number 0 represent the server user that is currently logged into the graphical session. You cannot start a VNC server for the user who is already logged into the graphical session.

Table5.1.Port and display number pairs

Port numberDisplay numberNote

5900

0

The logged-in user

5901

1

5902

2

The first recommended VNC user

5903

3

Important

RedHat recommends that you do not configure the root user to export a VNC session. A root VNC session is unsafe and certain elements of the session might not work as expected.

Firewall rules

You must open the selected ports in your firewall configuration. Allowing the vnc-server service in your firewall opens ports from 5900 to 5903. If you need to enable access to additional server users, you must open ports above 5903 by manually specifying the port numbers.

5.3.2.VNC server configuration files

Several configuration files affect the behavior of the VNC server. You can configure the user mapping and various global options.

General options

You can configure general options of the VNC server in the /etc/tigervnc/vncserver-config-defaults configuration file. The file uses the following format:

option1=value option2

For example:

session=gnome alwaysshared securitytypes=vncauth,tlsvnc desktop=sandbox geometry=2000x1200

The priority of configuration files

The VNC server reads the following files for general options, in order from most important to least important:

  1. /etc/tigervnc/vncserver-config-mandatory

    This file replaces the default configuration and has a higher priority than the per-user configuration. It is intended for system administrators who want to enforce particular VNC options.

  2. $HOME/.vnc/config

    Individual users can override the default VNC configuration in this file.

  3. /etc/tigervnc/vncserver-config-defaults

    This file stores the default VNC configuration.

User mapping

You can configure the mapping between users and their associated port and display numbers in the /etc/tigervnc/vncserver.users configuration file. The file uses the following format:

:number=user

For example:

:2=test :3=vncuser

Additional resources

  • For a list of available configuration options, see the Xvnc[1] man page.

5.3.3.Enabling multi-user VNC access on the server

This procedure configures a RHEL server so that multiple users can open VNC sessions on it at the same time.

Prerequisites

  • If you previously configured VNC using systemd unit files, remove any outdated VNC configuration:

    [root]# rm /etc/systemd/system/vncserver@.service

Procedure

  1. Install the VNC server:

    [root]# yum install tigervnc-server
  2. Map users to display and port numbers.

    In the /etc/tigervnc/vncserver.users configuration file, add a line for each server user that will export a VNC session:

    :user-number=user-name
    • Replace user-number with the port and display number mapped to the selected existing user.
    • Replace user-name with the user name of the selected existing user.

    For example:

    :2=vncuser
  3. Open TCP ports 5900 to 5903 in the firewall:

    [root]# firewall-cmd --permanent --add-service=vnc-server
  4. Reload the firewall rules:

    [root]# firewall-cmd --reload
  5. Add the following lines to the /etc/tigervnc/vncserver-config-defaults configuration file:

    session=gnome alwaysshared

    This configuration has the following effects:

    • The VNC server starts the GNOME session when a remote user logs in.
    • Multiple users can connect to the VNC server at the same time.
  6. As each server user that exports a VNC session, set the VNC password for the user:

    [regular-user]$ vncpasswd

    Remote clients must enter this password when connecting to the desktop on the server.

  7. If you previously configured VNC for the user, ensure that the configuration files have the correct SELinux context:

    [regular-user]$ restorecon -RFv ~/.vnc
  8. Enable and start the VNC server unit for the regular user:

    [root]# systemctl enable --now vncserver@:user-number
  9. If the server uses the proprietary Nvidia driver, disable Wayland:

    1. Uncomment the WaylandEnable=False line in the /etc/gdm/custom.conf configuration file.
    2. Add the DefaultSession=gnome-xorg.desktop option to the [daemon] section of the configuration file.
    3. Reboot the server.

Additional resources

  • To enable VNC access to more than two server users, open TCP ports above 5903. For details, see Controlling ports using CLI or Opening ports using GUI.

5.3.4.Connecting to the VNC server as multiple users

This procedure connects to a remote desktop session using the vncviewer application. You can open multiple connections to the remote desktop at the same time.

Prerequisites

  • Remote desktop access for multiple users is enabled on the server. For details, see Section5.3.3, Enabling multi-user VNC access on the server.

Procedure

  1. Install the VNC client:

    # yum install tigervnc
  2. Connect to the VNC server:

    $ vncviewer --shared server-ip:display
    • Replace server-ip with the IP address of the server that you are connecting to.
    • Replace display with the display number where the server user exports the VNC session.

5.4.Remotely accessing an individual application

You can remotely launch a graphical application on a RHEL server and use it from the remote client.

5.4.1.Enabling X11 forwarding on the server

This procedure configures a RHEL server so that remote clients can use graphical applications on the server over SSH.

Procedure

  1. Install basic X11 packages:

    # yum install xorg-x11-xauth xorg-x11-fonts-\* xorg-x11-utils dbus-x11
    Note

    Your applications might rely on additional graphical libraries.

  2. Check that the X11Forwarding option is enabled in the /etc/sshd/sshd_config configuration file:

    X11Forwarding yes

    The option is enabled by default in RHEL. Your organization might have disabled it.

  3. Restart the sshd service:

    # systemctl restart sshd.service

5.4.2.Launching an application remotely using X11 forwarding

This procedure accesses a graphical application on a RHEL server from a remote client using SSH.

Prerequisites

  • X11 forwarding over SSH is enabled on the server. For details, see Section5.4.1, Enabling X11 forwarding on the server.
  • Ensure that an X11 display server is running on your system:

    • On RHEL, X11 is available by default in the graphical interface.
    • On Microsoft Windows, install an X11 server such as Xming.
    • On macOS, install the XQuartz X11 server.

Procedure

  1. Log in to the server using SSH:

    [local-user]$ ssh -X -Y remote-server
  2. Launch the application from the command line:

    [remote-user]$ application-binary
  • Chapter4.Registering the system for updates using GNOME
  • Chapter6.Configuring GNOME at low level

Video liên quan

Chủ Đề