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. See attached layout list.
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


Keyboard layouts:

Id Name
0x00000401 Arabic (101)
0x00000402 Bulgarian
0x00000404 Chinese (Traditional) - US Keyboard
0x00000405 Czech
0x00000406 Danish
0x00000407 German
0x00000408 Greek
0x00000409 US
0x0000040A Spanish
0x0000040B Finnish
0x0000040C French
0x0000040D Hebrew
0x0000040E Hungarian
0x0000040F Icelandic
0x00000410 Italian
0x00000411 Japanese
0x00000412 Korean
0x00000413 Dutch
0x00000414 Norwegian
0x00000415 Polish (Programmers)
0x00000416 Portuguese (Brazilian ABNT)
0x00000418 Romanian
0x00000419 Russian
0x0000041A Croatian
0x0000041B Slovak
0x0000041C Albanian
0x0000041D Swedish
0x0000041E Thai Kedmanee
0x0000041F Turkish Q
0x00000420 Urdu
0x00000422 Ukrainian
0x00000423 Belarusian
0x00000424 Slovenian
0x00000425 Estonian
0x00000426 Latvian
0x00000427 Lithuanian IBM
0x00000429 Farsi
0x0000042A Vietnamese
0x0000042B Armenian Eastern
0x0000042C Azeri Latin
0x0000042F FYRO Macedonian
0x00000437 Georgian
0x00000438 Faeroese
0x00000439 Devanagari - INSCRIPT
0x0000043A Maltese 47-key
0x0000043B Norwegian with Sami
0x0000043F Kazakh
0x00000440 Kyrgyz Cyrillic
0x00000444 Tatar
0x00000445 Bengali
0x00000446 Punjabi
0x00000447 Gujarati
0x00000449 Tamil
0x0000044A Telugu
0x0000044B Kannada
0x0000044C Malayalam
0x0000044E Marathi
0x00000450 Mongolian Cyrillic
0x00000452 United Kingdom Extended
0x0000045A Syriac
0x00000461 Nepali
0x00000463 Pashto
0x00000465 Divehi Phonetic
0x0000046E Luxembourgish
0x00000481 Maori
0x00000804 Chinese (Simplified) - US Keyboard
0x00000807 Swiss German
0x00000809 United Kingdom
0x0000080A Latin American
0x0000080C Belgian French
0x00000813 Belgian (Period)
0x00000816 Portuguese
0x0000081A Serbian (Latin)
0x0000082C Azeri Cyrillic
0x0000083B Swedish with Sami
0x00000843 Uzbek Cyrillic
0x0000085D Inuktitut Latin
0x00000C0C Canadian French (legacy)
0x00000C1A Serbian (Cyrillic)
0x00001009 Canadian French
0x0000100C Swiss French
0x0000141A Bosnian
0x00001809 Irish
0x0000201A Bosnian Cyrillic

Keyboard layout variants:

Id Name
0x00010401 Arabic (102)
0x00010402 Bulgarian (Latin)
0x00010405 Czech (QWERTY)
0x00010407 German (IBM)
0x00010408 Greek (220)
0x00010409 United States-Dvorak
0x0001040A Spanish Variation
0x0001040E Hungarian 101-key
0x00010410 Italian (142)
0x00010415 Polish (214)
0x00010416 Portuguese (Brazilian ABNT2)
0x00010419 Russian (Typewriter)
0x0001041B Slovak (QWERTY)
0x0001041E Thai Pattachote
0x0001041F Turkish F
0x00010426 Latvian (QWERTY)
0x00010427 Lithuanian
0x0001042B Armenian Western
0x00010439 Hindi Traditional
0x0001043A Maltese 48-key
0x0001043B Sami Extended Norway
0x00010445 Bengali (Inscript)
0x0001045A Syriac Phonetic
0x00010465 Divehi Typewriter
0x0001080C Belgian (Comma)
0x0001083B Finnish with Sami
0x00011009 Canadian Multilingual Standard
0x00011809 Gaelic
0x00020401 Arabic (102) AZERTY
0x00020405 Czech Programmers
0x00020408 Greek (319)
0x00020409 United States-International
0x0002041E Thai Kedmanee (non-ShiftLock)
0x0002083B Sami Extended Finland-Sweden
0x00030408 Greek (220) Latin
0x00030409 United States-Dvorak for left hand
0x0003041E Thai Pattachote (non-ShiftLock)
0x00040408 Greek (319) Latin
0x00040409 United States-Dvorak for right hand
0x00050408 Greek Latin
0x00050409 US English Table for IBM Arabic 238_L
0x00060408 Greek Polytonic
0xB0000407 German Neo

Keyboard Input Method Editors (IMEs):

Id Name
0xE0010404 Chinese (Traditional) - Phonetic
0xE0010411 Japanese Input System (MS-IME2002)
0xE0010412 Korean Input System (IME 2000)
0xE0010804 Chinese (Simplified) - QuanPin
0xE0020404 Chinese (Traditional) - ChangJie
0xE0020804 Chinese (Simplified) - ShuangPin
0xE0030404 Chinese (Traditional) - Quick
0xE0030804 Chinese (Simplified) - ZhengMa
0xE0040404 Chinese (Traditional) - Big5 Code
0xE0050404 Chinese (Traditional) - Array
0xE0050804 Chinese (Simplified) - NeiMa
0xE0060404 Chinese (Traditional) - DaYi
0xE0070404 Chinese (Traditional) - Unicode
0xE0080404 Chinese (Traditional) - New Phonetic
0xE0090404 Chinese (Traditional) - New ChangJie
0xE00E0804 Chinese (Traditional) - Microsoft Pinyin IME 3.0
0xE00F0404 Chinese (Traditional) - Alphanumeric