diff --git a/dev/docker/Dockerfile b/dev/docker/Dockerfile
index 0a8d2773dc6e116ca84e62aac9e1cbd44c4a4e36..cfdba46212adcd51bf9397647db66dd7b83adea4 100644
--- a/dev/docker/Dockerfile
+++ b/dev/docker/Dockerfile
@@ -18,7 +18,7 @@ RUN mkdir -p /opt/rdpgw && cd /opt/rdpgw && \
     openssl rsa -passin pass:$random -in server.pass.key -out key.pem && \
     rm server.pass.key && \
     openssl req -new -sha256 -key key.pem -out server.csr \
-    -subj "/C=US/ST=VA/L=SomeCity/O=MyCompany/OU=MyDivision/CN=localhost" && \
+    -subj "/C=US/ST=VA/L=SomeCity/O=MyCompany/OU=MyDivision/CN=rdpgw" && \
     openssl x509 -req -days 365 -in server.csr -signkey key.pem -out server.pem
 
 # add user
diff --git a/dev/docker/Dockerfile.xrdp b/dev/docker/Dockerfile.xrdp
new file mode 100644
index 0000000000000000000000000000000000000000..d1743a2fb3530e0daa3b1369a271c50871951e92
--- /dev/null
+++ b/dev/docker/Dockerfile.xrdp
@@ -0,0 +1,7 @@
+FROM rattydave/docker-ubuntu-xrdp-mate-custom:20.04
+
+RUN cd /etc/xrdp/ && \
+    openssl req -x509 -newkey rsa:2048 -nodes -keyout key.pem -out cert.pem -days 3650 \
+    -subj "/C=US/ST=VA/L=SomeCity/O=MyCompany/OU=MyDivision/CN=xrdp"
+
+COPY xrdp.ini /etc/xrdp/xrdp.ini
diff --git a/dev/docker/docker-compose-arm64.yml b/dev/docker/docker-compose-arm64.yml
index b8c508e744de2da36982d4ff676a4dc392d11d77..f41985ac7081812888cc9bbb58ba1bfb83adbd46 100644
--- a/dev/docker/docker-compose-arm64.yml
+++ b/dev/docker/docker-compose-arm64.yml
@@ -28,7 +28,7 @@ services:
   xrdp:
     container_name: xrdp
     hostname: xrdp
-    image: rattydave/docker-ubuntu-xrdp-mate-custom:20.04
+    image: bolkedebruin/docker-ubuntu-xrdp-mate-rdpgw:20.04
     ports:
       - 3389:3389
     restart: on-failure
diff --git a/dev/docker/docker-compose.yml b/dev/docker/docker-compose.yml
index 81d86f87fd28d07789e9daad9a9ce17d4ca237c4..1ad2f4cb09c12f2f6e00d32faea10da260758910 100644
--- a/dev/docker/docker-compose.yml
+++ b/dev/docker/docker-compose.yml
@@ -32,7 +32,7 @@ services:
   xrdp:
       container_name: xrdp
       hostname: xrdp
-      image: rattydave/docker-ubuntu-xrdp-mate-custom:20.04
+      image: bolkedebruin/docker-ubuntu-xrdp-mate-rdpgw:20.04
       ports:
         - 3389:3389
       restart: on-failure
diff --git a/dev/docker/xrdp.ini b/dev/docker/xrdp.ini
new file mode 100644
index 0000000000000000000000000000000000000000..821349c3aecc79a04abeaf92b3842ad4213a8f11
--- /dev/null
+++ b/dev/docker/xrdp.ini
@@ -0,0 +1,208 @@
+[Globals]
+; xrdp.ini file version number
+ini_version=1
+
+; fork a new process for each incoming connection
+fork=true
+; tcp port to listen
+port=3389
+; regulate if the listening socket use socket option tcp_nodelay
+; no buffering will be performed in the TCP stack
+tcp_nodelay=true
+; regulate if the listening socket use socket option keepalive
+; if the network connection disappear without close messages the connection will be closed
+tcp_keepalive=true
+#tcp_send_buffer_bytes=32768
+#tcp_recv_buffer_bytes=32768
+
+; security layer can be 'tls', 'rdp' or 'negotiate'
+; for client compatible layer
+security_layer=negotiate
+; minimum security level allowed for client
+; can be 'none', 'low', 'medium', 'high', 'fips'
+crypt_level=high
+; X.509 certificate and private key
+; openssl req -x509 -newkey rsa:2048 -nodes -keyout key.pem -out cert.pem -days 365
+certificate=cert.pem
+key_file=key.pem
+; set SSL protocols
+; can be comma separated list of 'SSLv3', 'TLSv1', 'TLSv1.1', 'TLSv1.2'
+ssl_protocols=TLSv1, TLSv1.1, TLSv1.2
+; set TLS cipher suites
+#tls_ciphers=HIGH
+
+; Section name to use for automatic login if the client sends username
+; and password. If empty, the domain name sent by the client is used.
+; If empty and no domain name is given, the first suitable section in
+; this file will be used.
+autorun=
+
+allow_channels=true
+allow_multimon=true
+bitmap_cache=true
+bitmap_compression=true
+bulk_compression=true
+#hidelogwindow=true
+max_bpp=16
+new_cursors=false
+; fastpath - can be 'input', 'output', 'both', 'none'
+use_fastpath=both
+; when true, userid/password *must* be passed on cmd line
+#require_credentials=true
+; You can set the PAM error text in a gateway setup (MAX 256 chars)
+#pamerrortxt=change your password according to policy at http://url
+
+;
+; colors used by windows in RGB format
+;
+blue=009cb5
+grey=dedede
+#black=000000
+#dark_grey=808080
+#blue=08246b
+#dark_blue=08246b
+#white=ffffff
+#red=ff0000
+#green=00ff00
+#background=626c72
+
+;
+; configure login screen
+;
+
+; Login Screen Window Title
+#ls_title=My Login Title
+
+; top level window background color in RGB format
+ls_top_window_bg_color=009cb5
+
+; width and height of login screen
+ls_width=350
+ls_height=430
+
+; login screen background color in RGB format
+ls_bg_color=dedede
+
+; optional background image filename (bmp format).
+#ls_background_image=
+
+; logo
+; full path to bmp-file or file in shared folder
+ls_logo_filename=
+ls_logo_x_pos=55
+ls_logo_y_pos=50
+
+; for positioning labels such as username, password etc
+ls_label_x_pos=30
+ls_label_width=60
+
+; for positioning text and combo boxes next to above labels
+ls_input_x_pos=110
+ls_input_width=210
+
+; y pos for first label and combo box
+ls_input_y_pos=220
+
+; OK button
+ls_btn_ok_x_pos=142
+ls_btn_ok_y_pos=370
+ls_btn_ok_width=85
+ls_btn_ok_height=30
+
+; Cancel button
+ls_btn_cancel_x_pos=237
+ls_btn_cancel_y_pos=370
+ls_btn_cancel_width=85
+ls_btn_cancel_height=30
+
+[Logging]
+LogFile=xrdp.log
+LogLevel=debug
+EnableSyslog=true
+SyslogLevel=error
+; LogLevel and SysLogLevel could by any of: core, error, warning, info or debug
+
+[Channels]
+; Channel names not listed here will be blocked by XRDP.
+; You can block any channel by setting its value to false.
+; IMPORTANT! All channels are not supported in all use
+; cases even if you set all values to true.
+; You can override these settings on each session type
+; These settings are only used if allow_channels=true
+rdpdr=true
+rdpsnd=true
+drdynvc=true
+cliprdr=true
+rail=true
+xrdpvr=true
+tcutils=true
+
+; for debugging xrdp, in section xrdp1, change port=-1 to this:
+#port=/tmp/.xrdp/xrdp_display_10
+
+; for debugging xrdp, add following line to section xrdp1
+#chansrvport=/tmp/.xrdp/xrdp_chansrv_socket_7210
+
+
+;
+; Session types
+;
+
+[Xorg]
+name=Xorg - Resizing.
+lib=libxup.so
+username=ask
+password=ask
+ip=127.0.0.1
+port=-1
+code=20
+
+#[X11rdp]
+#name=X11rdp
+#lib=libxup.so
+#username=ask
+#password=ask
+#ip=127.0.0.1
+#port=-1
+#xserverbpp=24
+#code=10
+
+[Xvnc]
+name=Xvnc - Screen Sharing.
+lib=libvnc.so
+username=ask
+password=ask
+ip=127.0.0.1
+port=-1
+xserverbpp=16
+#delay_ms=2000
+
+[Reconnect]
+name=Reconnect
+lib=libvnc.so
+ip=127.0.0.1
+port=ask5910
+username=ask
+password=ask
+#delay_ms=2000
+
+#[vnc-any]
+#name=vnc-any
+#lib=libvnc.so
+#ip=ask
+#port=ask5900
+#username=na
+#password=ask
+#pamusername=asksame
+#pampassword=asksame
+#pamsessionmng=127.0.0.1
+#delay_ms=2000
+
+#[sesman-any]
+#name=sesman-any
+#lib=libvnc.so
+#ip=ask
+#port=-1
+#username=ask
+#password=ask
+#delay_ms=20