> For the complete documentation index, see [llms.txt](https://imarslo.gitbook.io/handbook/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://imarslo.gitbook.io/handbook/basic/system/x11.md).

# x11

* [xrdp](#xrdp)

### xrdp

> \[!NOTE|label:references:]
>
> * centos
>   * [How to Install XRDP on CentOS and RedHat Linux 8/7](https://docs.e2enetworks.com/guides/centos_xrdp.html)
>   * [How to Install Xrdp Server (Remote Desktop) on CentOS 8](https://linuxize.com/post/how-to-install-xrdp-on-centos-8/)
>   * [How to Install Xrdp Server on CentOS 8](https://vegastack.com/tutorials/how-to-install-xrdp-server-on-centos-8/)
>   * [How to Enable Remote Desktop on CentOS 8/RHEL8.x](https://www.enlinux.com/enable-remote-desktop-on-centos/)
> * ubuntu
>   * [How To Enable Remote Desktop Protocol Using xrdp on Ubuntu 22.04](https://www.digitalocean.com/community/tutorials/how-to-enable-remote-desktop-protocol-using-xrdp-on-ubuntu-22-04)
>   * [xRDP – Easy install xRDP on Ubuntu 20.04,22.04,23.XX (Script Version 1.4.8)](https://c-nergy.be/blog/?p=19228)
>   * [Access a remote desktop from Ubuntu](https://ubuntu.com/tutorials/access-remote-desktop#1-overview)

* install

  ```bash
  # centos
  $ sudo yum clean all
  $ sudo yum makecache fast
  # optinal
  $ sudo yum -y update
  $ sudo yum install epel-release
  $ sudo yum groupinstall -y "Server with GUI"
  $ sudo yum groupinstall -y "Xfce"
  $ sudo sudo yum install -y xrdp tigervnc-server

  # ubuntu
  $ sudo apt update
  $ sudo apt install xfce4 xfce4-goodies -y
  $ sudo apt install xrdp -y
  ```
* service

  ```bash
  $ sudo systemctl enable xrdp --now
  $ sudo systemctl start xrdp.service
  $ sudo firewall-cmd --add-port=3389/tcp --permanent
  $ sudo firewall-cmd --reload

  # centos
  $ sudo reboot
  $ echo "xfce4-session" > ~/.Xclients
  $ chmod a+x ~/.Xclients

  # ubuntu
  $ echo "xfce4-session" | tee ~/.xsession
  $ sudo systemctl restart xrdp
  ```
* xrdp.ini

  ```bash
  $ cat /etc/xrdp/xrdp.ini | sed -r '/(^[;#].*)|(^\s*)$/d'

  # or
  $ cat /etc/xrdp/xrdp.ini | sed -e '/^[;#]/ d' -e '/^$/ d'

  # or
  $ cat /etc/xrdp/xrdp.ini | sed -e '/^[;#]/ d' | sed '/^$/ d'
  [Globals]
  ini_version=1
  fork=true
  port=3389
  use_vsock=false
  tcp_nodelay=true
  tcp_keepalive=true
  security_layer=negotiate
  crypt_level=high
  certificate=
  key_file=
  ssl_protocols=TLSv1.2, TLSv1.3
  autorun=
  allow_channels=true
  allow_multimon=true
  bitmap_cache=true
  bitmap_compression=true
  bulk_compression=true
  max_bpp=32
  new_cursors=true
  use_fastpath=both
  blue=009cb5
  grey=dedede
  ls_top_window_bg_color=009cb5
  ls_width=350
  ls_height=430
  ls_bg_color=dedede
  ls_logo_filename=
  ls_logo_x_pos=55
  ls_logo_y_pos=50
  ls_label_x_pos=30
  ls_label_width=65
  ls_input_x_pos=110
  ls_input_width=210
  ls_input_y_pos=220
  ls_btn_ok_x_pos=142
  ls_btn_ok_y_pos=370
  ls_btn_ok_width=85
  ls_btn_ok_height=30
  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=INFO
  EnableSyslog=true

  [LoggingPerLogger]

  [Channels]
  rdpdr=true
  rdpsnd=true
  drdynvc=true
  cliprdr=true
  rail=true
  xrdpvr=true
  tcutils=true

  [Xvnc]
  name=Xvnc
  lib=libvnc.so
  username=ask
  password=ask
  ip=127.0.0.1
  port=-1
  ```
