如何删除或重置用户的所有 xrdp 设置

如何删除或重置用户的所有 xrdp 设置

我在 Ubuntu 18.04 计算机上运行 xrdp。我有 3 个用户。两个运行良好。他们可以毫无问题地从 Windows 10 rdp 连接。但最后一个确实失败了,并显示“连接问题,放弃”消息。我自己使用的就是那个用户。

我花了很多时间研究和查看日志文件,但没有任何收获。我确实删除并再次安装了 xrdp - 没有变化。

我可能做了一些破坏此用户设置的事情。它确实工作了一段时间。如果我能以某种方式重置用户就好了。

用户未在本地登录。我使用 gnome 桌面。我从 inxi 中为其中一个正常运行的用户获取了以下信息:

桌面:Gnome 3.28.2 发行版:Ubuntu 18.04.1 LTS 显示服务器:X.Org 1.19.6

编辑

我通过查看 /var/log/xrdp.log 将正常用户与故障用户进行了比较。对于正常用户,日志在以下位置继续:

 [DEBUG] xrdp_wm_log_msg: started connecting

而另一个只得到一堆:

 [DEBUG] Closed socket 17 (AF_UNIX)

过了一会儿,出现了以下几行:

 xrdp_wm_log_msg: connection problem, giving up
 xrdp_wm_log_msg: some problem

.xorgxrdp.10.log 中存在一些差异

坏的:

  [ 22202.422] (II) Loading /usr/lib/x86_64-linux-gnu/nvidia/xorg/libglx.so
  [ 22202.425] (II) Module glx: vendor="NVIDIA Corporation"
  [ 22202.425]    compiled for 4.0.2, module version = 1.0.0
  [ 22202.425]    Module class: X.Org Server Extension
  [ 22202.425] (II) NVIDIA GLX Module  390.48  Wed Mar 21 23:42:56 PDT 2018
    ...
  [ 22202.428] (EE) Failed to initialize GLX extension (Compatible NVIDIA X driver not found)

[ 24242.838] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[ 24242.839] (II) Module glx: vendor="X.Org Foundation"
[ 24242.839]    compiled for 1.19.6, module version = 1.0.0
[ 24242.839]    ABI class: X.Org Server Extension, version 10.0
...
[ 24242.843] (II) AIGLX: Screen 0 is not DRI2 capable
[ 24242.843] (EE) AIGLX: reverting to software rendering
[ 24242.869] (II) IGLX: enabled GLX_MESA_copy_sub_buffer
[ 24242.870] (II) IGLX: Loaded and initialized swrast
[ 24242.870] (II) GLX: Initialized DRISWRAST GL provider for screen 0

编辑已添加 xrdp.ini

cat /etc/xrdp/xrdp.ini
[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
; 'port' above should be connected to with vsock instead of tcp
use_vsock=false
; 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=
key_file=
; 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=32
new_cursors=true
; 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=DEBUG
; 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
;

; Some session types such as Xorg, X11rdp and Xvnc start a display server.
; Startup command-line parameters for the display server are configured
; in sesman.ini. See and configure also sesman.ini.
[Xorg]
name=Xorg
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

[X11rdp2]
name=Custom
lib=libvnc.so
username=askallan
password=ask
ip=127.0.0.1
port=ask5901

[Xvnc]
name=Xvnc
lib=libvnc.so
username=ask
password=ask
ip=127.0.0.1
port=-1
#xserverbpp=24
#delay_ms=2000

[console]
name=console
lib=libvnc.so
ip=127.0.0.1
port=5900
username=na
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=2000

[neutrinordp-any]
name=neutrinordp-any
lib=libxrdpneutrinordp.so
ip=ask
port=ask3389
username=ask
password=ask

; You can override the common channel settings for each session type
#channel.rdpdr=true
#channel.rdpsnd=true
#channel.drdynvc=true
#channel.cliprdr=true
#channel.rail=true
#channel.xrdpvr=true

答案1

您的“好”用户正在选择 xorg 驱动程序而不是 nvidia 驱动程序,因此您需要检查用户特定的文件,例如~/.xsession与 xorg 或图形驱动程序相关的任何内容。

相关内容