Linux Desktops and User Land Infrastructure
Configuring Systemd-Logind to Secure Virtual Consoles on Multi-User Desktop Nodes
Virtual consoles on multi-user desktops are a security boundary that is often overlooked. A user who switches to another console can access a session left unlocked or escalate privileges. Systemd-logind controls seat assignment, session tracking, and console switching. This guide hardens it.
נקודות עיקריות
- Disable unused virtual consoles. Reduce the number of getty instances to limit attack surface.
- Configure console switching. Restrict Ctrl+Alt+Fx switching to prevent unauthorized console access.
- Set idle session timeouts. Automatically lock sessions that have been idle too long.
- Manage seat assignment. Ensure each user gets a dedicated seat with isolated devices.
- Enable session tracking. Logind tracks sessions for audit and policy enforcement.
- Configure polkit rules. Restrict who can reboot, suspend, or change system settings.
- Protect the graphical session. Ensure the display manager starts on a dedicated VT.
- Audit sessions. Use loginctl to review active sessions and seats.
Architecture
Logind manages seats, sessions, and virtual consoles. Each physical console maps to a seat, and sessions are tracked per user. Console switching is mediated by logind, which can restrict or disable it. Polkit provides additional authorization.
Production configuration
Edge cases from production
- Disabling all VTs breaks emergency recovery; keep at least one reserved.
- IdleAction=lock requires a screen locker; ensure one is installed and configured.
- Some applications expect VT switching; test before restricting.
- Logind changes require a daemon restart or reboot to take full effect.
שאלות נפוצות
Can I disable virtual consoles entirely?
Yes, but keep at least one for recovery.
How do I lock idle sessions?
Set IdleAction=lock and IdleActionSec in logind.conf.
What is a seat?
A collection of input and output devices assigned to a user.
How do I audit sessions?
Use loginctl list-sessions and loginctl show-session.
Does this affect SSH?
No, SSH sessions are separate from virtual consoles.
איך Kinetikatech מסייעת לך ב-linux desktops and user land infrastructure
זה מה שאנחנו עושים כל יום: Hardening compositors, sandboxing desktop apps, and tuning the user land that developers and operators actually touch. שירות ניהול שרתים ותחזוקה שלנו מכסה את זה מקצה לקצה — הערכה, יישום, ניטור 24/7, ותגובה לחירום בתוך 30 דקות.