OpenSuse 16 - VNC problems

After updating my OpenSuse 15.6 system to OpenSuse 16, I’m experiencing two serious problems. Both are related to remote desktop access via TigerVNC. The client is TigerVNC Viewer version 1.15 or 1.16.
Problem 1.
After selecting “xdm” as the display manager, I get a black login screen.
Problem 2.
I changed the login manager to lightdm. This time, the login screen displays correctly. I log in to the Mate desktop correctly. Everything works fine until the session ends. I set the “Persistence and Visiblity” option using the “VNC Manager Controller” option. I close the connection. When I log in again, I get a login window with the option to select an existing session. After selecting this option, I enter the username and password correctly. However, I always receive an “Authentication failed” login error.
I checked the PAM configuration and found no errors. What should I do?
In version 15.6 everything was fine.

Speculating a bit here: The existing session option in TigerVNC tries to reconnect using the session’s original authentication Xauthority token and the X socket in /tmp/.X11-unix . In openSUSE 16, when you close a VNC connection or log out, systemd / X server handling may regenerate or remove these files. That is likely why selecting “existing session” triggers an “Authentication failed” error.

I assume that you have the VNC session on the host is configured to be persistent? Can you directly access the host to check vncserver -list? For example, if it shows something like :1 123456 then you should be able to connect remotely using <host IP:1 instead of choosing “existing session".

Unfortunately, this isn’t the problem. The session is valid and doesn’t close when I exit the ‘VNC Viewer’ window. I can successfully open the background session if I select the ‘Persistent, visible’ and ‘No password required’ options in the ‘VNC Manager’ program.
I compared the configuration with that of a running VNC system in OpenSUSE 15.6, and they are identical. Something changed in OpenSUSE 16, but I can’t identify the cause of this behaviour.

If I get time, I’ll try to replicate the issue.

What does your working [Seat:*] section of ``lightdm.conf look like?

Examine the following for errors…

# LightDM logs
cat /var/log/lightdm/lightdm.log

# X server logs for the display used
cat /var/log/lightdm/x-*.log

# Journal for related messages
journalctl -xe | grep -E "lightdm|vnc|Xvnc|pam"

I checked the system logs.
Lightdm log – successful login (cat /var/log/lightdm/lightdm.log). The logs only contain a warning about a GDBus error. However, after logging in, everything is fine. The log does not contain any information about a repeated login attempt for an open session. The error occurs at the Xvnc daemon level:

[> +44985.03s] DEBUG: Got Query(authentication_names=) from 127.0.0.1:44702

[+44985.03s] DEBUG: Send Willing(authentication_name=‘’ hostname=‘XXX’ status=‘’) to 127.0.0.1:44702
[+44985.10s] DEBUG: Got Request(display_number=1 connections=[192.168.200.4 172.16.0.37] authentication_name=‘’ authentication_data= authorization_names=[‘MIT-MAGIC-COOKIE-1’ ‘XDM-AUTHORIZATION-1’] manufacturer_display_id=‘’) from 127.0.0.1:44702
[+44985.10s] DEBUG: Send Accept(session_id=36364 authentication_name=‘’ authentication_data= authorization_name=‘MIT-MAGIC-COOKIE-1’ authorization_data=0398549DAE4C99F17DB93C9C034C69B5) to 127.0.0.1:44702
[+44985.10s] DEBUG: Got Manage(session_id=36364 display_number=1 display_class=‘MIT-unspecified’) from 127.0.0.1:44702
[+44985.10s] DEBUG: Seat xdmcp0: Loading properties from config section Seat:*
[+44985.10s] DEBUG: Seat xdmcp0: Starting
[+44985.10s] DEBUG: Seat xdmcp0: Creating greeter session
[+44985.10s] DEBUG: Seat xdmcp0: Creating display server of type x
[+44985.10s] DEBUG: DisplayServer: Connecting to XServer xxx.xxx.xxx.xxx:1
[+44985.11s] DEBUG: Seat xdmcp0: Display server ready, starting session authentication
[+44985.11s] DEBUG: Session: Not setting XDG_VTNR
[+44985.11s] DEBUG: Session pid=70188: Started with service ‘lightdm-greeter’, username ‘lightdm’
[+44985.11s] DEBUG: Registering seat with bus path /org/freedesktop/DisplayManager/Seat1
[+44985.13s] DEBUG: Session pid=70188: Authentication complete with return value 0: Success
[+44985.13s] DEBUG: Seat xdmcp0: Session authenticated, running command
[+44985.13s] DEBUG: Launching process 70192: /usr/etc/X11/xdm/Xsetup
[+44985.14s] DEBUG: Process 70192 exited with return value 0
[+44985.14s] DEBUG: Seat xdmcp0: Exit status of /usr/etc/X11/xdm/Xsetup: 0
[+44985.14s] DEBUG: Session pid=70188: Not setting XDG_VTNR
[+44985.14s] DEBUG: Session pid=70188: Running command /usr/sbin/lightdm-gtk-greeter
[+44985.14s] DEBUG: Session pid=70188: Logging to /var/log/lightdm/xdmcp0-greeter.log
[+44985.17s] DEBUG: Activating login1 session 14
[+44985.17s] WARNING: Error activating login1 session: GDBus.Error:org.freedesktop.DBus.Error.NotSupported: Operation not supported
[+44985.26s] DEBUG: Greeter connected version=1.32.0 api=1 resettable=false
[+44985.70s] DEBUG: Greeter start authentication for username
[+44985.70s] DEBUG: Session: Not setting XDG_VTNR
[+44985.70s] DEBUG: Session pid=70228: Started with service ‘lightdm’, username ‘username’
[+44985.70s] DEBUG: Session pid=70228: Got 1 message(s) from PAM
[+44985.70s] DEBUG: Prompt greeter with 1 message(s)
[+44989.92s] DEBUG: Continue authentication
[+44989.94s] DEBUG: Session pid=70228: Authentication complete with return value 0: Success
[+44989.94s] DEBUG: Authenticate result for user username: Success
[+44989.94s] DEBUG: User username authorized
[+44989.94s] DEBUG: Greeter sets language pl_PL.utf8
[+44989.96s] DEBUG: Greeter requests session mate
[+44989.96s] DEBUG: Seat xdmcp0: Stopping greeter; display server will be re-used for user session
[+44989.96s] DEBUG: Terminating login1 session 14
[+44989.96s] DEBUG: Session pid=70188: Sending SIGTERM
[+44989.97s] DEBUG: Greeter closed communication channel
[+44989.97s] DEBUG: Session pid=70188: Exited with return value 0
[+44989.97s] DEBUG: Seat xdmcp0: Session stopped
[+44989.97s] DEBUG: Seat xdmcp0: Greeter stopped, running session
[+44989.98s] DEBUG: Launching process 70239: /usr/etc/X11/xdm/Xstartup
[+44989.98s] DEBUG: Process 70239 exited with return value 0
[+44989.98s] DEBUG: Seat xdmcp0: Exit status of /usr/etc/X11/xdm/Xstartup: 0
[+44989.98s] DEBUG: Registering session with bus path /org/freedesktop/DisplayManager/Session1
[+44989.98s] DEBUG: Session pid=70228: Not setting XDG_VTNR
[+44989.98s] DEBUG: Session pid=70228: Running command /usr/etc/X11/xdm/Xsession mate-session
[+44989.98s] DEBUG: Session pid=70228: Logging to .xsession-errors
[+44990.01s] DEBUG: Activating login1 session 15

cat /var/log/lightdm/x-*.log No critical errors. However, there are keyboard warnings, which may affect key mapping. I tested the settings for the us and pl keyboards. In both cases, the result is the same - authorization error:

X.Org X Server 1.21.1.15
X Protocol Version 11, Revision 0
Current Operating System: Linux d25 6.12.0-160000.26-default #1 SMP PREEMPT_DYNAMIC Thu Feb 5 00:00:11 UTC 2026 (f762390) x86_64
Kernel command line: BOOT_IMAGE=/boot/vmlinuz-6.12.0-160000.26-default root=UUID=7f8d42b8-ec9f-4e53-aec2-519be15131fe splash=silent preempt=full quiet security=apparmor mitigations=auto

Current version of pixman: 0.43.4
Before reporting problems, check xxxxxxxxx
to make sure that you have the latest version.
Markers: (–) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: “/var/log/Xorg.0.log”, Time: Sun Mar 15 21:56:02 2026
(==) Using config directory: “/etc/X11/xorg.conf.d”
(==) Using system config directory “/usr/share/X11/xorg.conf.d”
pci id for fd 14: 102b:0532, driver (null)
pci id for fd 15: 102b:0532, driver (null)
kmsro: driver missing
The XKEYBOARD keymap compiler (xkbcomp) reports:
Warning: Could not resolve keysym XF86RefreshRateToggle
Warning: Could not resolve keysym XF86Accessibility
Warning: Could not resolve keysym XF86DoNotDisturb
Errors from xkbcomp are not fatal to the X server
The XKEYBOARD keymap compiler (xkbcomp) reports:
Warning: Could not resolve keysym XF86RefreshRateToggle
Warning: Could not resolve keysym XF86Accessibility
Warning: Could not resolve keysym XF86DoNotDisturb
Errors from xkbcomp are not fatal to the X server

journalctl -xe | grep -E “lightdm|vnc|Xvnc|pam”. By analyzing the logs, you can trace the entire login process. Successfully opening an Xvnc and lightdm session for user username, and then, after closing the session, another login attempt ended with an authentication error [lines 70185]:

mar 16 10:16:36 d25 sshd-session[69927]: Accepted keyboard-interactive/pam for username from 172.16.0.41 port 17979 ssh2
mar 16 10:16:36 d25 sshd-session[69927]: pam_unix(sshd:session): session opened for user username(uid=1000) by username(uid=0)
mar 16 10:16:41 d25 su[69987]: pam_unix(su-l:session): session opened for user root(uid=0) by username(uid=1000)
mar 16 10:17:33 d25 with-vnc-key.sh[2080]: Accepted client 93931974919264.
mar 16 10:17:34 d25 with-vnc-key.sh[70185]: Xvnc TigerVNC 1.15.0 - built ??? ?? ??? ??:??:??
mar 16 10:17:34 d25 with-vnc-key.sh[70185]: Copyright (C) 1999-2025 TigerVNC team and many others (see README.rst)
mar 16 10:17:34 d25 with-vnc-key.sh[70185]: See xxxxxx for information on TigerVNC.
mar 16 10:17:34 d25 with-vnc-key.sh[70185]: Underlying X server release 12101015
mar 16 10:17:34 d25 Xvnc[70185]: vncext: VNC extension running!
mar 16 10:17:34 d25 Xvnc[70185]: vncext: inetd wait
mar 16 10:17:34 d25 Xvnc[70185]: vncext: Created VNC server for screen 0
mar 16 10:17:34 d25 with-vnc-key.sh[2080]: Spawned Xvnc (id: #3, pid: 70185, display: 1)
mar 16 10:17:34 d25 with-vnc-key.sh[2080]: Opening connection to Xvnc #3
mar 16 10:17:34 d25 Xvnc[70185]: Connections: Accepted: ::0
mar 16 10:17:34 d25 Xvnc[70185]: SConnection: Client needs protocol version 3.8
mar 16 10:17:34 d25 Xvnc[70185]: SConnection: Client requests security type None(1)
mar 16 10:17:34 d25 Xvnc[70185]: VNCSConnST: Server default pixel format depth 24 (32bpp) little-endian rgb888
mar 16 10:17:34 d25 systemd-logind[1625]: New session 14 of user lightdm.
░░ Subject: Utworzono nową sesję 14 dla użytkownika lightdm
░░ lightdm.
mar 16 10:17:34 d25 systemd[1]: Started Session 14 of User lightdm.
mar 16 10:17:34 d25 lightdm[70188]: pam_unix(lightdm-greeter:session): session opened for user lightdm(uid=442) by lightdm(uid=0)
mar 16 10:17:34 d25 lightdm[4196]: Error activating login1 session: GDBus.Error:org.freedesktop.DBus.Error.NotSupported: Operation not supported
mar 16 10:17:38 d25 systemd[1]: session-14.scope: Killing process 70188 (lightdm) with signal SIGTERM.
mar 16 10:17:38 d25 systemd[1]: session-14.scope: Killing process 70200 (lightdm-gtk-gre) with signal SIGTERM.
mar 16 10:17:38 d25 systemd[1]: Stopping Session 14 of User lightdm…
mar 16 10:17:38 d25 lightdm[70188]: pam_unix(lightdm-greeter:session): session closed for user lightdm
mar 16 10:17:38 d25 systemd[1]: Stopped Session 14 of User lightdm.
mar 16 10:17:38 d25 lightdm[70228]: pam_unix(lightdm:session): session opened for user username(uid=1000) by username(uid=0)
mar 16 10:17:38 d25 lightdm[70228]: gkr-pam: couldn’t unlock the login keyring.
mar 16 10:17:38 d25 lightdm[4196]: Error activating login1 session: GDBus.Error:org.freedesktop.DBus.Error.NotSupported: Operation not supported
mar 16 10:17:40 d25 with-vnc-key.sh[2080]: Accepted controller 93931975064656.
mar 16 10:17:40 d25 with-vnc-key.sh[2080]: Controller 93931975064656 approved for session #3.
mar 16 10:17:42 d25 with-vnc-key.sh[2080]: Accepted controller 93931975074112.
mar 16 10:17:43 d25 with-vnc-key.sh[2080]: Controller 93931975074112 approved for session #3.
mar 16 10:17:47 d25 with-vnc-key.sh[2080]: Disconnected controller 93931975074112.
mar 16 10:17:51 d25 with-vnc-key.sh[2080]: Disconnected client 93931974919264.
mar 16 10:17:51 d25 with-vnc-key.sh[2080]: Closing connection to Xvnc #3
mar 16 10:17:51 d25 Xvnc[70185]: VNCSConnST: Closing ::0: Clean disconnection
mar 16 10:17:51 d25 Xvnc[70185]: EncodeManager: Framebuffer updates: 472
mar 16 10:17:51 d25 Xvnc[70185]: EncodeManager: Tight:
mar 16 10:17:51 d25 Xvnc[70185]: EncodeManager: Solid: 1.283 krects, 7.25757 Mpixels
mar 16 10:17:51 d25 Xvnc[70185]: EncodeManager: 20.0469 KiB (1:1414.93 ratio)
mar 16 10:17:51 d25 Xvnc[70185]: EncodeManager: Bitmap RLE: 1.078 krects, 158.919 kpixels
mar 16 10:17:51 d25 Xvnc[70185]: EncodeManager: 28.8223 KiB (1:21.9764 ratio)
mar 16 10:17:51 d25 Xvnc[70185]: EncodeManager: Indexed RLE: 2.716 krects, 2.79507 Mpixels
mar 16 10:17:51 d25 Xvnc[70185]: EncodeManager: 424.864 KiB (1:25.7731 ratio)
mar 16 10:17:51 d25 Xvnc[70185]: EncodeManager: Tight (JPEG):
mar 16 10:17:51 d25 Xvnc[70185]: EncodeManager: Full Colour: 429 rects, 2.94621 Mpixels
mar 16 10:17:51 d25 Xvnc[70185]: EncodeManager: 1.26319 MiB (1:8.9011 ratio)
mar 16 10:17:51 d25 Xvnc[70185]: EncodeManager: Total: 5.506 krects, 13.1578 Mpixels
mar 16 10:17:51 d25 Xvnc[70185]: EncodeManager: 1.72582 MiB (1:29.12 ratio)
mar 16 10:17:51 d25 Xvnc[70185]: Connections: Closed: ::0
mar 16 10:17:51 d25 Xvnc[70185]: ComparingUpdateTracker: 119.925 Mpixels in / 12.722 Mpixels out
mar 16 10:17:51 d25 Xvnc[70185]: ComparingUpdateTracker: (1:9.42657 ratio)
mar 16 10:18:25 d25 with-vnc-key.sh[2080]: Accepted client 93931974919264.
mar 16 10:18:25 d25 with-vnc-key.sh[70813]: Xvnc TigerVNC 1.15.0 - built ??? ?? ??? ??:??:??
mar 16 10:18:25 d25 with-vnc-key.sh[70813]: Copyright (C) 1999-2025 TigerVNC team and many others (see README.rst)
mar 16 10:18:25 d25 with-vnc-key.sh[70813]: See xxxxxxxx for information on TigerVNC.
mar 16 10:18:25 d25 with-vnc-key.sh[70813]: Underlying X server release 12101015
mar 16 10:18:25 d25 Xvnc[70813]: vncext: VNC extension running!
mar 16 10:18:25 d25 Xvnc[70813]: vncext: inetd wait
mar 16 10:18:25 d25 Xvnc[70813]: vncext: Created VNC server for screen 0
mar 16 10:18:25 d25 with-vnc-key.sh[2080]: Spawned Xvnc (id: #4, pid: 70813, display: 2)
mar 16 10:18:25 d25 with-vnc-key.sh[2080]: Spawned greeter (pid: 70816, display: :2)
mar 16 10:18:25 d25 with-vnc-key.sh[2080]: Opening connection to Xvnc #4
mar 16 10:18:25 d25 Xvnc[70813]: Connections: Accepted: ::0
mar 16 10:18:25 d25 Xvnc[70813]: SConnection: Client needs protocol version 3.8
mar 16 10:18:25 d25 Xvnc[70813]: SConnection: Client requests security type None(1)
mar 16 10:18:25 d25 Xvnc[70813]: VNCSConnST: Server default pixel format depth 24 (32bpp) little-endian rgb888
mar 16 10:18:25 d25 vncmanager-greeter[70816]: QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to ‘/tmp/runtime-vnc’
mar 16 10:18:27 d25 with-vnc-key.sh[2080]: Opening connection to Xvnc #3
mar 16 10:18:27 d25 Xvnc[70185]: Connections: Accepted: ::0
mar 16 10:18:27 d25 Xvnc[70185]: SConnection: Client needs protocol version 3.8
mar 16 10:18:27 d25 Xvnc[70185]: SConnection: Client requests security type VeNCrypt(19)
mar 16 10:18:27 d25 Xvnc[70185]: SVeNCrypt: Client requests security type Plain (256)
mar 16 10:18:36 d25 Xvnc[70185]: pam_unix(vnc:auth): authentication failure; logname= uid=455 euid=455 tty= ruser= rhost= user=username
mar 16 10:18:38 d25 Xvnc[70185]: SConnection: Authentication error: Authentication failed
mar 16 10:18:38 d25 Xvnc[70185]: VNCSConnST: Closing ::0: Authentication failed
mar 16 10:18:38 d25 Xvnc[70185]: EncodeManager: Framebuffer updates: 0
mar 16 10:18:38 d25 Xvnc[70185]: EncodeManager: Total: 0 rects, 0 pixels
mar 16 10:18:38 d25 with-vnc-key.sh[2080]: Closing connection to Xvnc #3
mar 16 10:18:38 d25 with-vnc-key.sh[2080]: Client 93931974919264 failed to switch connection: Connection failed, reason: Authentication failed
mar 16 10:18:38 d25 Xvnc[70185]: EncodeManager: 0 B (1:-nan ratio)
mar 16 10:18:38 d25 Xvnc[70185]: Connections: Closed: ::0
mar 16 10:18:38 d25 Xvnc[70185]: ComparingUpdateTracker: 0 pixels in / 0 pixels out
mar 16 10:18:38 d25 Xvnc[70185]: ComparingUpdateTracker: (1:-nan ratio)
mar 16 10:18:40 d25 with-vnc-key.sh[2080]: Disconnected client 93931974919264.
mar 16 10:18:40 d25 with-vnc-key.sh[2080]: Terminating greeter (pid: 70816)
mar 16 10:18:40 d25 with-vnc-key.sh[2080]: Closing connection to Xvnc #4
mar 16 10:18:40 d25 Xvnc[70813]: VNCSConnST: Closing ::0: Clean disconnection
mar 16 10:18:40 d25 Xvnc[70813]: EncodeManager: Framebuffer updates: 34
mar 16 10:18:40 d25 Xvnc[70813]: EncodeManager: Raw:
mar 16 10:18:40 d25 Xvnc[70813]: EncodeManager: Full Colour: 43 rects, 153.735 kpixels
mar 16 10:18:40 d25 Xvnc[70813]: EncodeManager: 601.031 KiB (1:1 ratio)
mar 16 10:18:40 d25 Xvnc[70813]: EncodeManager: RRE:
mar 16 10:18:40 d25 Xvnc[70813]: EncodeManager: Solid: 19 rects, 804.749 kpixels
mar 16 10:18:40 d25 Xvnc[70813]: EncodeManager: 380 B (1:8471.64 ratio)
mar 16 10:18:40 d25 Xvnc[70813]: EncodeManager: Indexed RLE: 24 rects, 34.486 kpixels
mar 16 10:18:40 d25 Xvnc[70813]: EncodeManager: 6.77344 KiB (1:19.9296 ratio)
mar 16 10:18:40 d25 Xvnc[70813]: EncodeManager: Total: 86 rects, 992.97 kpixels
mar 16 10:18:40 d25 Xvnc[70813]: EncodeManager: 608.176 KiB (1:6.3794 ratio)
mar 16 10:18:40 d25 Xvnc[70813]: Connections: Closed: ::0
mar 16 10:18:40 d25 Xvnc[70813]: ComparingUpdateTracker: 3.26451 Mpixels in / 1.03883 Mpixels out
mar 16 10:18:40 d25 Xvnc[70813]: ComparingUpdateTracker: (1:3.14248 ratio)
mar 16 10:18:45 d25 Xvnc[70813]: VNCServerST: MaxDisconnectionTime reached, exiting
mar 16 10:18:45 d25 Xvnc[70813]: ComparingUpdateTracker: 0 pixels in / 0 pixels out

I tested all the available login managers in OpenSUSE 16: GDM, SDDM, XDM and LightDM. Of these, only LightDM works when working remotely via VNC. The others display a black screen. In OpenSUSE 15.6, xdm still worked correctly. I understand that SuSE has decided to switch to Wayland, which is why GDM shouldn’t work (unfortunately, not even with WaylandEnable=false), but why has XDM, which theoretically uses the pure X protocol, stopped working?
Remote work with a graphical interface is crucial for me. Some of my users perform very complex, lengthy calculations using Ansys software in graphical mode. They suspend sessions and return to open sessions as needed. In older versions of OpenSUSE, everything worked fine. I would log in using xdm, log out, and then return to the open session.

I would like to repeat it. The bugs appeared in the new version of OpenSuSE 16. Something has been changed or is missing. Unfortunately, I don’t know how to contact the software manufacturer.

There is likely to be tightened security defaults and authentication handling. LightDM still supports XDMCP, whereas other DMs have dropped support for it.

The logs show authentication failure during the reconnect attempt…

SConnection: Client requests security type VeNCrypt
SVeNCrypt: Client requests security type Plain
pam_unix(vnc:auth): authentication failure

Xvnc is trying to authenticate through the PAM service vnc. Check if there is a PAM configuration in the /etc/pam.d/ directory.

I also noted the following…

SConnection: Client requests security type VeNCrypt(19)
SVeNCrypt: Client requests security type Plain (256)

The client and server negotiated VeNCrypt first, which then hands authentication off to PAM instead of using the older simple VNC password method, which they may have previously done in older versions.

Maybe also check which vnc packages you have installed…
zypper se -s vnc

OpenSUSE 16 does not include dedicated VNC configuration files for PAM. The /etc/pam.d directory contained only basic system configuration files. Therefore, while configuring VNC, I created a VNC configuration file based on the one from OpenSUSE 15.6. Unfortunately, this did not solve the problem.

/etc/pam.d/vnc

#%PAM-1.0
auth include common-auth
account include common-account
password include common-password
session include common-session

A bug report may be needed to help progress this then.

https://en.opensuse.org/openSUSE:Submitting_bug_reports
https://bugzilla.opensuse.org/index.cgi

Not sure what your current VNC config looks like. Maybe a config tweak needed?

# ~/.vnc/config

# Force TigerVNC to use PAM authentication
SecurityTypes=VeNCrypt

# Tell TigerVNC which PAM service to use
PAMService=vnc

Unfortunately, it still doesn’t work. I tried adding the suggested entries to the /etc/tigervnc/vncserver-config-defaults file (the default tigervnc server configuration) and to ~/.vnc/config.
I’m still getting the same error message.

Submit a bug report: TigerVNC fails PAM authentication on reconnect with LightDM on openSUSE 16. Include the config and logs gathered.