Skip to main content

3.4 – RDP, VNC, SSH, Telnet hosts

You can use servers.json file to configure: RDP hosts which can be accessed; RDP options for every host. The user can get a list of the RDP hosts if this file was used.

Bildschirmfoto 2022-04-05 um 12.12.03.png

Here is an example:

{
  /* this is a comment, use UTF-8 (without byte order mark) encoding for Unicode support */
  "type": "NORMALLIST",
  /* type can be WHITELIST, BLACKLIST, NORMALLIST */
  "display": true,
  /* display this list to client */
  "connections": [
    {
      "id": "Word",
      "displayName": "RemoteApp MS Word",
      "server": "213.180.85.124",
      "icon": "kbd.png",
      "protocols": "rdp",
      "rdp": {
        "username": "demo",
        "password": "m9ff.QWE",
        "domain": "SERVERSKY",
        "remoteProgram": "||WINWORD",
        "mapClipboard": true,
        "mapDisk": true,
        "playSound": 0,
        "mapPrinter": true
      }
    }
  ]
}

This file is in JSON format, {} means an object, [] means an array. Here is a full list of RDP options you can use (All options defined in this file will override the client options):

Key                                                                                                                    Value
port Listening port of RDP, default is 3389
username User name of your Windows
password Password of the Windows user
console Login to console session (or Admin mode).
width Screen width of RDP session, if no value is given, client will use the width of browser window.
height Screen height of RDP session, if no value is given, client will use the height of browser window.
color Color depth of RDP session, default is 16.
command Start a program on connection
directory Directory for running “command”
mapClipboard If enable clipboard redirection
mapDisk If enable disk redirection
disks Redirection a disk or directory on Gateway. It’s an array of DeviceInfo, example for DeviceInfo:
{
"dosName": "disk1",
"longName": "disk1 on local",
"devicePath": "/apps/test/",
“actions”: 7
}

Default value for actions is 7 = ACTION_REDIRECT(1) | ACTION_DOWNLOAD(2) | ACTION_UPLOAD(4). Set value to 2 if you want this disk downloadable only, 1 if you only want this disk mapped to RDP host. Right now, only the first disk can be a downloadable directory.

You can use ${user} and ${domain} variables in devicePath since 5.0
playSound Sound options, 0: bring sound to local, 1: no sound, 2: leave sound on remote computer.
audioRecord If enable audio record.
performanceflags Default value is 111,
PERF_DISABLE_WALLPAPER = 0x01;
PERF_DISABLE_FULLWINDOWDRAG = 0x02;
PERF_DISABLE_MENUANIMATIONS = 0x04;
PERF_DISABLE_THEMING = 0x08;
PERF_DISABLE_CURSOR_SHADOW = 0x20;
PERF_DISABLE_CURSORSETTINGS = 0x40;
PERF_ENABLE_FONT_SMOOTHING = 0x80;
PERF_ENABLE_DESKTOP_COMPOSITION = 0x100;

111 = PERF_DISABLE_CURSOR_SHADOW | PERF_DISABLE_CURSORSETTINGS | PERF_DISABLE_FULLWINDOWDRAG | PERF_DISABLE_MENUANIMATIONS | PERF_DISABLE_THEMING | PERF_DISABLE_WALLPAPER;
legacyMode If enable legacy mode, default is false. Set this true if you are using xrdp or VirtualBox RDP.
mapPrinter If enable easy printing.
remoteProgram Connect to a RemoteApp, always use alias name instead of program path, example: ||WINWORD, ||wordpad, or ||EXCEL
remoteWorkDir Directory for running remoteProgram.
remoteArgs Arguments for running remoteProgram.
credSSP If use NLA (Network Level Authentication).
sessionRecord 0: no session recording, 1: recording graphic only (no sound), 3: recording graphic and sound.
keyboard Keyboard layout
loadBalanceInfo Load balance information
shadowing Shadowing switch
vmid Hyper-V VM GUID, For example: B3D5444C-2611-405A-9CA0-7AA8DA94DF0B, it’s for Hyper-V console connection.
minWidth Minimum width, some applications need a minimum resolution to work.
minHeight Minimum height
remotefx If enable remtoefx, default is false. RemoteFX is LAN and 32 bit only.
soundPref 0: low quality sound; 1: high quality sound

You can also define IP ranges in servers.json, for example:

{
  "id": "range1",
  "ipRanges": [
    {"from": "192.168.0.0", "to": "192.168.0.250"},
    {"from": "192.168.56.0", "to": "192.168.56.250"}
  ]
},

You can also use config.html to configure servers.json. Use your browser navigate to: http://localhost/config.html.
For security reason, this page can be only accessed from local host.

Bildschirmfoto 2022-04-05 um 12.29.25.png

You can also configure server groups, which is saved in serverGroups.json by default:

Bildschirmfoto 2022-04-05 um 12.30.44.png