You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This will ensure we don't error out when a ssh-add fails due to a bad passphrase |
12 years ago | |
|---|---|---|
| LICENSE | 12 years ago | |
| README.md | 12 years ago | |
| systemd-user-pam-ssh | 12 years ago | |
README.md
Systemd User PAM SSH script
This script has a rather specific use case. If you fit the following demographic then this script might just be for you!
- You use systemd as a user session manager (either this, or this)
- You're systemd --user instance default target doesn't start a graphical environment, i.e. you still need to login to activate your graphical session
- You have a
systemd --userservice calledssh-agent.servicethat starts your ssh agent. - You have to type your password a second time after logging in in order to decrypt your SSH key.
This script allows you to only type your password once. When logging in, your SSH key will be decrypted and added to your ssh-agent for you.
Usage
There are a few pre-requisites to this script:
- Your systemd --user session needs to be running during login time. This won't be a problem if you use one of the user-session services mentioned above.
- Your systemd --user instance needs to know about the
SSH_AUTH_SOCK. If you're using my systemd-user-sessions package mentioned above then you will want to add this to your~/.config/bash/environmentfile as something likeSSH_AUTH_SOCK=$XDG_RUNTIME_DIR/ssh-agent.
To enable the script you will want to add this to your pam configuration
(probably /etc/pam.d/system-login or /etc/pam.d/login
auth optional pam_exec.so expose_authtok /path/to/the/systemd-user-pam-ssh
Installation
I would recommend placing the script under /usr/lib/systemd/. If you are using
Arch Linux you can use the PKGBUILD located
here.