つぶねこ
@もじらもーど。
要するに備忘録。そこら中に同じ情報は転がってるが(笑)
自宅から学校に繋げるので、それぞれlocal , serverと呼ぶことにする。
まずlocalのpublic/privateキーを作る。
local:$ ssh-keygen -t dsa
~/.ssh/id_dsaと~/.ssh/id_dsa.pubができるので、privateキーを登録。
local:$ echo "IdKey id_dsa" > ~/.ssh/identification
さて、OpenSSHとSSH2はキーの形式が違ってたりするので変換する。
local:$ ssh-keygen -x -f ~/.ssh/id_dsa > nekoneko.pub
次に、この変換したpublicキーをserverに転送する。
local:$ rsync -e ssh -a -v -c nekoneko.pub username@gandalf.lab.org:/home/username/.ssh2/
むろん他の方法でもいいし、そもそもこれってばgandalfにアカウント持ってにゃいとできねー・・・
ま、まぁともかく、転送できたら登録する。
server:$ echo "Key nekoneko.pub" >> ~/.ssh2/authorization
もちろん
local:$ echo "Key nekoneko.pub" | ssh -l username gandalf.laborg 'cat >>~/.ssh/authorization'
でもにゃんでもいい。
これで公開鍵認証で接続できるはず。
あとはいつも通り、
local:$ eval `ssh-agent`
local:$ ssh-add ~/.ssh/id_dsa
にゃどとしておけば、パス入力無しに接続できるようににゃる。
あ、そうそう、上で触ったファイルのパーミッションはちゃんとしておくこと。
ちにゃみに、逆の接続、つまりgandalfから自宅、SSH2からOpenSSHに繋ぐときは、
自宅:$ ssh-keygen -i -f id_dsa_1024_a.pub >> ~/.ssh/gandalf.pub
で変換できる。まー、OpenSSHのssh-keygenがあればいいということ。