Die Antwort von Andre de Miranda bietet eine gute Lösung mit pam_ssh_agent_auth , aber Teile sind veraltet. Insbesondere die /etc/pam.d/sudo
Anweisungen bei Verwendung vieler aktueller Linux-Versionen.
Wenn Sie Ubuntu 12.04 präzise ausführen, habe ich den Prozess tatsächlich vereinfacht, indem ich einen pam_ssh_agent_auth-Build aus einem ppa: ppa: cpick / pam-ssh-agent-auth bereitgestellt habe .
Sie können das Paket installieren, indem Sie Folgendes ausführen:
sudo add-apt-repository ppa:cpick/pam-ssh-agent-auth
sudo apt-get install pam-ssh-agent-auth
Wenn Sie dieses PAM-Modul nach der Installation mit sudo verwenden möchten, müssen Sie die Einstellungen und die PAM-Konfiguration von sudo konfigurieren. In Ubuntu 12.04 können Sie dies genau tun, indem Sie die folgenden zwei Dateien erstellen:
/etc/sudoers.d/pam-ssh-agent-auth:
Defaults env_keep+="SSH_AUTH_SOCK"
/etc/pam.d/sudo:
ent#%PAM-1.0
auth required pam_env.so readenv=1 user_readenv=0
auth required pam_env.so readenv=1 envfile=/etc/default/locale user_readenv=0
auth sufficient pam_ssh_agent_auth.so file=/etc/security/authorized_keys
@include common-auth
@include common-account
@include common-session-noninteractive
Wenn Sie Chef verwenden, kann der oben beschriebene Vorgang mit meinem Kochbuch automatisiert werden, das sich an einem der beiden folgenden Speicherorte befindet:
https://github.com/cpick/pam-ssh-agent-auth
http: //community.opscode .com / cookbooks / pam-ssh-agent-auth .
Das files
Verzeichnis des Kochbuchs enthält die oben beschriebenen /etc/pam.d/sudo
und /etc/sudoers.d/pam-ssh-agent-auth
Dateien, die mit Ubuntu 12.04 präzise funktionieren und ein hilfreicher Ausgangspunkt für die Verwendung anderer Versionen / Distributionen sein sollten.
/etc/sudoers
und es kann auch durch Ausführen bearbeitet werdensudo /usr/sbin/visudo