Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve PAM authentication #49527

Open
rosstimothy opened this issue Nov 27, 2024 · 0 comments
Open

Improve PAM authentication #49527

rosstimothy opened this issue Nov 27, 2024 · 0 comments
Labels
PAM Label related to Pluggable Authentication Module (PAM) Submethod.

Comments

@rosstimothy
Copy link
Contributor

Today, PAM authentication modules are invoked in response to a shell request, and any resulting instructions or prompts are fed back to the user via stdin/stdout of the ssh.Session. This can causes a deadlock, see #49028, if PAM is trying to read/write via the ssh.Session prior to replying the the shell request. Instead PAM authentication should occur during the SSH handshake via the ssh.KeyboardInteractiveCallback similarly to how PAM works with OpenSSH. The main challenge with adding support for this out of the box lies in how the ssh_service handles user connections. Instead of reexec-ing multiple subprocesses to handle various SSH requests, Teleport should use a single process to handle user connections, allowing a single PAM context for the duration of each connection.

@rosstimothy rosstimothy added bug PAM Label related to Pluggable Authentication Module (PAM) Submethod. and removed bug labels Nov 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
PAM Label related to Pluggable Authentication Module (PAM) Submethod.
Projects
None yet
Development

No branches or pull requests

1 participant