CuBoxのArch Linnuxをいつもどおりにpacmanで更新したところ、SSHでログインできなくなりました(>_<)
他の作業もしているうちにログインできなくなったので、バックアップから復旧して更新したら再現したので、何かしらのパッケージ更新でログインできなくなったものと思われます。余計なことを…と思いつつ調査開始です。
続きを読む Arch LinuxをアップデートしたらSSHログインできなくなった件
「SSH」タグアーカイブ
Arch LinuxでAuthorizedKeysCommandにLDAPに登録されている公開鍵を回答するスクリプトを設定する
LDAPで鍵認証させてSSHにログインする場合、CentOSなんかだと、AuthorizedKeysCommandにssh-ldap-wrapperを指定するのですが、Arch Linuxにこれが見当たらなかったので、下記のページを参考にして、独自のスクリプトを設定しました。
OpenSSH 6.2.x and LDAP authentication
my OpenSSH AuthorizedKeysCommand script
[bash]
#!/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}”
[/bash]
後はこのスクリプトを保存して、
/etc/ssh/sshd_config
に
AuthorizedKeysCommand [スクリプトへのパス]
を指定してやればOKです。
LDAP認証とSSHログイン
少しずつ構築してきたLDAPサーバと、それを用いたLDAP認証によるSSHログイン、しかも公開鍵方式。ようやく構築できました。
膨大な作業メモはあるものの、どっからどう記録していけばいいものか…
MacOS Xのターミナルから外部サーバへのsshログインが出来なかった場合
あるSUSE LinuxサーバにMacOS X Mavericsの標準ターミナルからSSHで接続しようとしたところ、
ssh_exchange_identification: read: Connection reset by peer
というエラーが出て接続できない。となりのWindowsのTeraTermからは何の問題もなくつながるのに、これは悔しい。そこで-vオプションでデバッグモードで接続したところ、
Are you sure you want to continue connecting (yes/no)?
といつもの質問が出てきた。vオプション無しでは出て来なかったのは何でか分からないけど、ここでyesとしたら当然のように接続できるようになり、その後はvオプション無しでも接続できるように。ぬなー。理由は分からないけど、接続先は自分で管理しているサーバじゃないから、原因よりは対処法として、デバッグモードの接続でうまく行くことがある、ということを覚えておくことにする。