LDAPで鍵認証させてSSHにログインする場合、CentOSなんかだと、AuthorizedKeysCommandにssh-ldap-wrapperを指定するのですが、Arch Linuxにこれが見当たらなかったので、下記のページを参考にして、独自のスクリプトを設定しました。
OpenSSH 6.2.x and LDAP authentication
my OpenSSH AuthorizedKeysCommand script
#!/bin/bash LDAP_SERVER="ldap://localhost" BASE_DN="ou=People,dc=example,dc=com" BIND_DN="cn=Manager,dc=example,dc=com" BIND_PW="パスワード" SSH_USER=$1 KEY=$(ldapsearch -LLL -x -w ${BIND_PW} -o ldif-wrap=no -D "${BIND_DN}" -b "${BASE_DN}" -H "${LDAP_SERVER}" -S sshPublicKey "uid=${SSH_USER}" sshPublicKey | grep -v 'dn:' | perl -pe 's/sshPublicKey: //;') echo "${KEY}"
後はこのスクリプトを保存して、
/etc/ssh/sshd_config
に
AuthorizedKeysCommand [スクリプトへのパス]
を指定してやればOKです。