Drift Diary XV

ssh keyを一発でホストに登録するスクリプト

Posted by drikin on 2007年9月23日 11:20

今日はマニアック記事

が便利そうだったので、改めて転記メモ
SSHでノーパスワードログインしたいときとかに、よく空パスフレースのssh-keyをリモートサーバーに登録するんですが、なにげに面倒でセットアップがおろそかになりがち。地味に毎回パスワード打ってたりするので、そんなときに便利そうなスクリプト。
下記のスクリプトに名前を付けて引数に登録したいサーバー名を渡して実行するだけ。
事前にkeyを生成しておく必要があるので注意してください。
まぁ、このスクリプトを配置することすら面倒だったりするんですけどね、、、汗


#!/bin/sh

KEY="$HOME/.ssh/id_dsa.pub"

if [ ! -f ~/.ssh/id_dsa.pub ];then
echo "private key not found at $KEY"
echo "* please create it with "ssh-keygen -t dsa" *"
echo "* to login to the remote host without a password, don't give the key you create with ssh-keygen a password! *"
exit
fi

if [ -z $1 ];then
echo "Please specify user@host.tld as the first switch to this script"
exit
fi

echo "Putting your key on $1... "

KEYCODE=`cat $KEY`
ssh -q $1 "mkdir ~/.ssh 2>/dev/null; chmod 700 ~/.ssh; echo "$KEYCODE" >> ~/.ssh/authorized_keys; chmod 644 ~/.ssh/authorized_keys"

echo "done!"


Powered by ScribeFire.

このエントリーをはてなブックマークに追加
comments powered by Disqus