Advanced Settings

Privilege Levels for Settings

There are four types of settings:

  1. Override settings, in “Web Console → Custom Clients”
  2. Default settings, in “Web Console → Custom Clients”
  3. User settings, in the RustDesk client
  4. Strategy settings, in “Web Console → Strategies”

The hierarchy of privilege for these settings is as follows: Override > Strategy > User > Default.

Security Settings

access-mode

Set the access mode (permissions) for incoming connections.

Location:

  1. Desktop Settings → Security → Permissions
  2. Mobile
Install requiredValuesDefaultExample
Ncustom, full, viewcustomaccess-mode=custom

enable-keyboard

Enable keyboard/mouse input for incoming connections.

Location:

  1. Desktop Settings → Security → Permissions → Enable keyboard
  2. Mobile
Install requiredValuesDefaultExample
NY, NYenable-keyboard=Y

enable-clipboard

Enable copy and paste for the incoming connections.

Location:

  1. Desktop Settings → Security → Permissions → Enable clipboard
  2. Mobile
Install requiredValuesDefaultExample
NY, NYenable-clipboard=Y

enable-file-transfer

Enable file copy and paste or file transfer (session) for incoming connections.

Location:

  1. Desktop Settings → Security → Permissions → Enable file transfer
  2. Mobile
Install requiredValuesDefaultExample
NY, NYenable-file-transfer=Y

enable-audio

Enable audio record and transfer to peer.

Location:

  1. Desktop Settings → Security → Permissions → Enable audio
  2. Mobile
Install requiredValuesDefaultExample
NY, NYenable-audio=Y

enable-tunnel

Enable TCP tunneling.

Location:

  1. Desktop Settings → Security → Permissions → Enable TCP tunneling
  2. Mobile
Install requiredValuesDefaultExample
NY, NYenable-tunnel=Y

enable-remote-restart

Enable restarting by the control side.

Location:

  1. Desktop Settings → Security → Permissions → Enable remote restart
  2. Mobile
Install requiredValuesDefaultExample
NY, NYenable-remote-restart=Y

enable-record-session

Enable sessions to be recorded.

Location:

  1. Desktop Settings → Security → Permissions → Enable recording session
  2. Mobile Settings → Share screen → Enable recording session
Install requiredValuesDefaultExample
NY, NYenable-record-session=Y

enable-block-input

Enable the control side to block other users’ input.

Location:

  1. Desktop Settings → Security → Permissions → Enable blocking user input (Windows only)
  2. Mobile
Install requiredValuesDefaultExample
NY, NYenable-block-input=Y

allow-remote-config-modification

Allow the control side to change the settings in controlled RustDesk UI.

Location:

  1. Desktop Settings → Security → Permissions → Enable remote configuration modification
  2. Mobile
Install requiredValuesDefaultExample
NY, NYallow-remote-config-modification=Y

enable-lan-discovery

Allows LAN peers to discover me.

After LAN discovery, WOL can work if supported locally.

Location:

  1. Desktop Settings → Security → Security → Deny LAN discovery
  2. Mobile Settings → Share screen → Deny LAN discovery
Install requiredValuesDefaultExample
YY, NYenable-lan-discovery=Y

direct-server

Enable direct IP access.

Location:

  1. Desktop Settings → Security → Security → Enable direct IP access
  2. Mobile Settings → Share screen → Direct IP access
Install requiredValuesDefaultExample
NY, NNdirect-server=Y

direct-access-port

Direct IP access port.

Location:

  1. Desktop Settings → Security → Security → Direct IP access port (Show if “Enable direct IP access” is checked)
  2. Mobile Settings → Share screen → Direct IP access
Install requiredValuesDefaultExample
N21118direct-access-port=21118

whitelist

Use IP Whitelisting.

Location:

  1. Desktop Settings → Security → Security → Use IP Whitelisting
  2. Mobile Settings → Share screen → Use IP Whitelisting
Install requiredValuesDefaultExample
N, or <ip1>,<ip2>,<ip3>, means no filterwhitelist=,

allow-auto-disconnect & auto-disconnect-timeout

Automatically close incoming sessions after a period of user inactivity.

Location:

  1. Desktop Settings → Security → Security → Automatically close incoming sessions on user inactivity
  2. Mobile Settings → Share screen → Automatically close incoming sessions on user inactivity
OptionInstall requiredValuesDefaultExample
allow-auto-disconnectNY, NNallow-auto-disconnect=Y
auto-disconnect-timeoutNTimeout in minutes10auto-disconnect-timeout=10

allow-only-conn-window-open

Only allow connection if RustDesk window is open.

Location:

  1. Desktop Settings → Security → Security → Only allow connection if RustDesk window is open
  2. Mobile
Install requiredValuesDefaultExample
YY, NNallow-only-conn-window-open=N

approve-mode

Accept incoming connections via password or manually click.

Location:

  1. Desktop Settings → Security → Password → Dropdown box
  2. Mobile Share screen → Dropdown menu on right-up corner
Install requiredValuesDefaultExample
Npassword, click, password-clickpassword-clickapprove-mode=password-click

proxy-url

The proxy URL.

Currently support http and socks5.

Location:

  1. Desktop Settings → Network → Proxy → Socks5/Http(s) proxy
  2. Mobile

Examples:

  1. http proxy-url=http://192.168.0.2:12345
  2. https proxy-url=https://192.168.0.2:12345
  3. socks5 proxy-url=socks5://192.168.0.2:1080

proxy-username & proxy-password

Proxy username and password.

Location:

  1. Desktop Settings → Network → Proxy → Socks5/Http(s) proxy
  2. Mobile
OptionInstall requiredValuesDefaultExample
proxy-usernameNproxy-username=user
proxy-passwordNproxy-password=pass

General Settings

theme

Controls the UI theme of RustDesk client.

Location:

  1. Desktop Settings → General → Theme
  2. Mobile Settings → Settings → Theme
Install requiredValuesDefaultExample
Ndark, light, systemsystemtheme=system

lang

Controls the language of RustDesk client.

Location:

  1. Desktop Settings → General → Language
  2. Mobile Settings → Settings → Language
Install requiredValuesDefaultExample
Ndefault, ar, bg, …defaultlang=default

Currently available languages are:

ar, bg, ca, cs, da, de, el, en, eo, es, et, fa, fr, he, hr, hu, id, it, ja, ko, kz, lt, lv, nb, nl, pl, pt, ro, ru, sk, sl, sq, sr, sv, th, tr, ua, vn, zh-cn, zh-tw

You can check LANGS in the code for the latest language list.

allow-auto-record-incoming

Automatically record incoming sessions.

Location:

  1. Desktop Settings → General → Recording → Automatically record incoming sessions
  2. Mobile Settings → Recording → Automatically record incoming sessions
Install requiredValuesDefaultExample
NY, NNallow-auto-record-incoming=N

video-save-directory

The directory to save recorded videos.

Location:

  1. Desktop Settings → General → Recording → Video save directory
  2. Mobile Settings → Recording

Default values:

  1. MacOS ~/Movies/app_name
  2. Linux ~/Videos/app_name
  3. Windows %USERPROFILE%\Videos\app_name
  4. Android /Storage/emulated/0/app_name/ScreenRecord

Note: Replace app_name means current app name.

enable-confirm-closing-tabs

Controls whether to show a confirm dialog before closing all remote tabs.

Location:

  1. Desktop Settings → General → Other → Confirm before closing multiple tabs
  2. Mobile
Install requiredValuesDefaultExample
NY, NYenable-confirm-closing-tabs=Y

enable-abr

Enable adaptive bitrate.

Location:

  1. Desktop Settings → General → Other → Adaptive bitrate
  2. Mobile Settings → Share screen → Adaptive bitrate (beta)
Install requiredValuesDefaultExample
NY, NYenable-abr=Y

allow-remove-wallpaper

Remove wallpaper during incoming sessions.

Location:

  1. Desktop Settings → General → Other → Remove wallpaper during incoming sessions
  2. Mobile
Install requiredValuesDefaultExample
NY, NNallow-remove-wallpaper=N

enable-open-new-connections-in-tabs

Controls whether to use a new tab or a new window to open a new connection.

Location:

  1. Desktop Settings → General → Other → Open connection in new tab
  2. Mobile
Install requiredValuesDefaultExample
NY, NYenable-open-new-connections-in-tabs=Y

allow-always-software-render

Always use software rendering.

Location:

  1. Desktop Settings → General → Other → Always use software rendering
  2. Mobile
Install requiredValuesDefaultExample
NY, NNallow-always-software-render=N

allow-linux-headless

Allow incoming connection if there’s no displays.

This option requires desktop environment, Xorg server and GDM, see PR 3902.

Location:

  1. Desktop Settings → General → Other → Allow Linux headless
  2. Mobile
Install requiredValuesDefaultExample
YY, NNallow-linux-headless=N

enable-hwcodec

Enable hardware encoding to make the picture smoother.

Location:

  1. Desktop
  2. Mobile Settings → Hardware codec
Install requiredValuesDefaultExample
NY, NYenable-hwcodec=Y

peer-card-ui-type

Controls the view of peer cards, includes “Big tiles”, “Small tiles” and “List”.

Location:

  1. Desktop Home → Peer panel → Right top grid icon
  2. Mobile
Install requiredValuesDefaultExample
N0, 1, 20peer-card-ui-type=0

0 Big tiles
1 Small tiles
2 List

peer-sorting

Controls the ordering of peer cards.

Location:

  1. Desktop Home → Peer panel → Right top sort icon
  2. Mobile
Install requiredValuesDefaultExample
NRemote ID, Remote Host, UsernameRemote IDpeer-sorting=Remote ID

sync-ab-with-recent-sessions

Controls whether to sync the address book with recent sessions.

Location:

  1. Desktop Home → Peer panel → Address book → Tags → Dropdown menu → Sync with recent sessions
  2. Mobile Home → Peer panel → Address book → Tags → Dropdown menu → Sync with recent sessions
Install requiredValuesDefaultExample
NY, NNsync-ab-with-recent-sessions=N

sync-ab-tags

Controls whether to sort the address book tags.

Location:

  1. Desktop Home → Peer panel → Address book → Tags → Dropdown menu → Sort tags
  2. Mobile Home → Peer panel → Address book → Tags → Dropdown menu → Sort tags
Install requiredValuesDefaultExample
NY, NNsync-ab-tags=N

filter-ab-by-intersection

Filter address book by tag intersection.

Preview: PR #5985

Location:

  1. Desktop Home → Peer panel → Address book → Tags → Dropdown menu → Filter by intersection
  2. Mobile Home → Peer panel → Address book → Tags → Dropdown menu → Filter by intersection
Install requiredValuesDefaultExample
NY, NNfilter-ab-by-intersection=N

Display Settings

view-only

This option will set the “view-only” option for every peer after the first connection.

Then the “view-only” option in each peer’s settings will controls whether the connection is view-only.

Location:

  1. Desktop Settings → Display → Other default options → View mode
  2. Mobile Settings → Display settings → Other default options → View mode
Install requiredValuesDefaultExample
NY, NNview-only=Y

show-monitors-toolbar

Controls whether to show monitors in toolbar.

show-monitors-toolbar

Location:

  1. Desktop Settings → Display → Other default options → Show monitors toolbar
  2. Mobile
Install requiredValuesDefaultExample
NY, NNshow-monitors-toolbar=Y

collapse-toolbar

Controls whether the remote toolbar is collapsed after connecting.

Location:

  1. Desktop Settings → Display → Other default options → Collapse toolbar
  2. Mobile
Install requiredValuesDefaultExample
NY, NNcollapse-toolbar=Y

show-remote-cursor

This option will set the “show-remote-cursor” option for every peer after the first connection.

Then the “show-remote-cursor” option in each peer’s settings will controls whether the remote cursor is displayed in the remote control page.

Location:

  1. Desktop Settings → Display → Other default options → Show remote cursor
  2. Mobile Settings → Display settings → Other default options → Show remote cursor
Install requiredValuesDefaultExample
NY, NNshow-remote-cursor=N

follow-remote-cursor

This option will set the “follow-remote-cursor” option for every peer after the first connection.

Then the “follow-remote-cursor” option in each peer’s settings will controls whether to follow the remote cursor.

Preview PR 7717

Location:

  1. Desktop Settings → Display → Other default options → Follow remote cursor
  2. Mobile Settings → Display settings → Other default options → Follow remote cursor
Install requiredValuesDefaultExample
NY, NNfollow-remote-cursor=Y

follow-remote-window

This option will set the “follow-remote-window” option for every peer after the first connection.

Then the “follow-remote-window” option in each peer’s settings will controls whether to follow the remote window.

Preview PR 7717

Location:

  1. Desktop Settings → Display → Other default options → Follow remote window focus
  2. Mobile Settings → Display settings → Other default options → Follow remote window focus
Install requiredValuesDefaultExample
NY, NNfollow-remote-window=Y

zoom-cursor

This option will set the “zoom-cursor” option for every peer after the first connection.

The “zoom-cursor” option in each peer’s settings will then control whether the cursor is scaled based on the current image scale.

Location:

  1. Desktop Settings → Display → Other default options → Zoom cursor
  2. Mobile
Install requiredValuesDefaultExample
NY, NNzoom-cursor=Y

show-quality-monitor

This option will set the “show-quality-monitor” option for every peer after the first connection.

The “show-quality-monitor” option in each peer’s settings will then control whether to show the quality monitor.

Location:

  1. Desktop Settings → Display → Other default options → Show quality monitor
  2. Mobile Settings → Display settings → Other default options → Show quality monitor
Install requiredValuesDefaultExample
NY, NNshow-quality-monitor=Y

disable-audio

This option will set the “disable-audio” option for every peer after the first connection.

The “disable-audio” option in each peer’s settings will then control whether to play sound.

Location:

  1. Desktop Settings → Display → Other default options → Mute
  2. Mobile Settings → Display settings → Other default options → Mute
Install requiredValuesDefaultExample
NY, NNdisable-audio=Y

enable-file-copy-paste

This option will set the “enable-file-copy-paste” option for every peer after the first connection.

The “enable-file-copy-paste” option in each peer’s settings will then control enable file copy and paste in connection.

Location:

  1. Desktop Settings → Display → Other default options → Enable file copy and paste (Windows only)
  2. Mobile
Install requiredValuesDefaultExample
NY, NNenable-file-copy-paste=Y

disable-clipboard

This option will set the “disable-clipboard” option for every peer after the first connection.

The “disable-clipboard” option in each peer’s settings will then control whether to enable text copy and paste.

Location:

  1. Desktop Settings → Display → Other default options → Disable clipboard
  2. Mobile Settings → Display settings → Other default options → Disable clipboard
Install requiredValuesDefaultExample
NY, NNdisable-clipboard=Y

lock-after-session-end

This option will set the “lock-after-session-end” option for every peer after the first connection.

The “lock-after-session-end” option in each peer’s settings will then control whether to lock the peer machine after the session ends.

Location:

  1. Desktop Settings → Display → Other default options → Lock after session end
  2. Mobile Settings → Display settings → Other default options → Lock after session end
Install requiredValuesDefaultExample
NY, NNlock-after-session-end=Y

privacy-mode

This option will set the “privacy-mode” option for every peer after the first connection.

The “privacy-mode” option in each peer’s settings will then control whether to use privacy mode after connecting.

Location:

  1. Desktop Settings → Display → Other default options → Privacy mode
  2. Mobile Settings → Display settings → Other default options → Privacy mode
Install requiredValuesDefaultExample
NY, NNprivacy-mode=Y

touch-mode

This option will set the “touch-mode” option for every peer after the first connection.

The “touch-mode” option in each peer’s settings will then control whether to use touch mode or mouse mode.

Location:

  1. Desktop
  2. Mobile Settings → Display settings → Other default options → Touch mode
Install requiredValuesDefaultExample
NY, NNtouch-mode=Y

i444

This option will set the “i444” option for every peer after the first connection.

The “i444” option in each peer’s settings will then control whether to use true color.

Location:

  1. Desktop Settings → Display → Other default options → True color (4:4:4)
  2. Mobile Settings → Display settings → Other default options → True color (4:4:4)
Install requiredValuesDefaultExample
NY, NNi444=Y

reverse-mouse-wheel

This option will set the “reverse-mouse-wheel” option for every peer after the first connection.

The “reverse-mouse-wheel” option in each peer’s settings will then control whether to reverse mouse wheel.

Location:

  1. Desktop Settings → Display → Other default options → Reverse mouse wheel
  2. Mobile Settings → Display settings → Other default options → Reverse mouse wheel
Install requiredValuesDefaultExample
NY, NNreverse-mouse-wheel=Y

swap-left-right-mouse

This option will set the “swap-left-right-mouse” option for every peer after the first connection.

The “swap-left-right-mouse” option in each peer’s settings will then control whether to swap left-right mouse button.

Location:

  1. Desktop Settings → Display → Other default options → Swap left-right mouse button
  2. Mobile Settings → Display settings → Other default options → Swap left-right mouse button
Install requiredValuesDefaultExample
NY, NNswap-left-right-mouse=Y

displays-as-individual-windows

This option will set the “displays-as-individual-windows” option for every peer after the first connection.

The “displays-as-individual-windows” option in each peer’s settings will then control whether to show displays as individual windows.

Preview PR 5945

Location:

  1. Desktop Settings → Display → Other default options → Show displays as individual windows
  2. Mobile
Install requiredValuesDefaultExample
NY, NNdisplays-as-individual-windows=Y

use-all-my-displays-for-the-remote_session

This option will set the “use-all-my-displays-for-the-remote_session” option for every peer after the first connection.

The “use-all-my-displays-for-the-remote_session” option in each peer’s settings will then control whether to use all my displays for the remote session.

Preview PR 6064

Location:

  1. Desktop Settings → Display → Other default options → Use all my displays for the remote session
  2. Mobile
Install requiredValuesDefaultExample
NY, NNuse-all-my-displays-for-the-remote_session=Y

view-style

This option will set the “view-style” option for every peer after the first connection.

The “view-style” option in each peer’s settings will then control the view style.

Location:

  1. Desktop Settings → Display → Default view style
  2. Mobile Settings → Display settings → Default view style
Install requiredValuesDefaultExample
Noriginal, adaptiveoriginalview-style=original

scroll-style

This option will set the “scroll-style” option for every peer after the first connection.

The “scroll-style” option in each peer’s settings will then control the scroll style.

Location:

  1. Desktop Settings → Display → Default scroll style
  2. Mobile
Install requiredValuesDefaultExample
Nscrollauto, scrollbarscrollautoscroll-style=scrollauto

image-quality

This option will set the “image-quality” option for every peer after the first connection.

The “image-quality” option in each peer’s settings will then control the image quality.

Location:

  1. Desktop Settings → Display → Default image quality
  2. Mobile Settings → Display settings → Default image quality
Install requiredValuesDefaultExample
Nbest, balanced, low, custombalancedimage-quality=balanced

custom-image-quality

This option will set the “custom-image-quality” option for every peer after the first connection.

The “custom-image-quality” option in each peer’s settings will then control the image quality if “image-quality” is set to custom.

Location:

  1. Desktop Settings → Display → Default image quality → Custom
  2. Mobile Settings → Display settings → Default image quality → Custom
Install requiredValuesDefaultExample
N[10.0, 2000.0]50.0custom-image-quality=50

custom-fps

This option will set the “custom-fps” option for every peer after the first connection.

The “custom-fps” option in each peer’s settings will then control the fps if “image-quality” is set to custom.

Location:

  1. Desktop Settings → Display → Default image quality → Custom
  2. Mobile Settings → Display settings → Default image quality → Custom
Install requiredValuesDefaultExample
N[5, 120]30custom-fps=30

codec-preference

This option will set the “codec-preference” option for every peer after the first connection.

The “codec-preference” option in each peer’s settings will then control codec for images.

Location:

  1. Desktop Settings → Display → Default codec
  2. Mobile Settings → Display settings → Default codec
Install requiredValuesDefaultExample
Nauto, vp8, vp9, av1, h264, h265autocodec-preference=auto

CAUTION: Options other than “vp8” and “vp9” may not work. This depends on what your machine supports.

preset-address-book-name & preset-address-book-tag

Preset address book name and tag, https://github.com/rustdesk/rustdesk-server-pro/issues/257. You can set preset-address-book-name only if you do not want to set tag. Please use valid address book name and tag on your address book page of web console.

OptionInstall requiredValuesDefaultExample
preset-address-book-nameNpreset-address-book-name=<address book name>
preset-address-book-tagNpreset-address-book-tag=<address book tag name>

disable-group-panel

Disable group panel (next to address book panel) on RustDesk client, https://github.com/rustdesk/rustdesk-server-pro/issues/250

OptionInstall requiredValuesDefaultExample
disable-group-panelNY, NNdisable-group-panel=Y

pre-elevate-service

Automatic elevation on run for Windows portable, https://github.com/rustdesk/rustdesk-server-pro/issues/252

OptionInstall requiredValuesDefaultExample
pre-elevate-serviceNY, NNpre-elevate-service=Y

disable-floating-window

When the Android service starts, it will display a floating window, which helps prevent the system from killing the RustDesk service.

ValuesDefaultExample
Y, NNdisable-floating-window=Y

floating-window-size

When the Android service starts, it will display a floating window, which helps prevent the system from killing the RustDesk service. When the size is less than 120, the floating window will be difficult to be clicked. A very small size may not be able to keep the background service on some devices.

ValuesDefaultExample
[32, 320]120floating-window-size=120

floating-window-untouchable

By default, clicking on the floating window will pop up a menu. After setting it to ‘untouchable’, clicking or swiping will pass through the floating window and be transmitted to the underlying window. After being set to ‘untouchable’, the position of the floating window cannot be changed, and the system may automatically set the floating window to be semi-transparent. However, this feature may not work in a small number of applications, such as the GitHub app.

ValuesDefaultExample
Y, NNfloating-window-untouchable=Y

floating-window-transparency

Android floating windows have adjustable transparency. If you want to enable but hide the floating window, you can set the transparency to 0, the floating window will be automatically set to ‘untouchable’ in order to pass through click events.

ValuesDefaultExample
[0, 10]10floating-window-transparency=5

floating-window-svg

If an icon is not set for the Android floating window, it will default to displaying the RustDesk icon. When setting, please write the text content of svg into one line, and pay attention to the svg support limitations

DefaultExample
RustDesk iconfloating-window-svg=<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1717559129252" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4248" xmlns:xlink="http://www.w3.org/1999/xlink" width="32" height="32"><path d="M950.857143 512c0 242.285714-196.571429 438.857143-438.857143 438.857143S73.142857 754.285714 73.142857 512 269.714286 73.142857 512 73.142857s438.857143 196.571429 438.857143 438.857143z" fill="#1296db" p-id="4249"></path></svg>

keep-screen-on

This is for the Android controlled side. Note that keeping the screen on depends on the floating window.

ValuesDefaultExample
never, during-controlled, service-onduring-controlledkeep-screen-on=never

enable-directx-capture

This is for the Windows controlled side. If you don’t encounter any problems, it is recommended to use the default settings, which prioritize using DirectX for screenshots instead of using GDI directly.

ValuesDefaultExample
Y, NYenable-directx-capture=N

enable-android-software-encoding-half-scale

This is for the Android controlled side. By default, when the resolution is greater than 1200, hardware encoding uses the original resolution, while software encoding uses half the resolution, as software encoding is slower. This option is used to set whether software encoding should be scaled to half the resolution.

ValuesDefaultExample
Y, NYenable-android-software-encoding-half-scale=N