SSHサーバの設定
まずインストールする。
#aptitude install ssh
設定ファイル
/etc/ssh/sshd_config
今回設定した箇所
- ListenAddress 0.0.0.0 ←コメントアウト。
- PermitRootLogin no ←ルートのログインの許可:拒否
- AuthorizedKeysFile %h/.ssh/authorized_keys ←コメントアウト。公開鍵置き場
- PasswordAuthentication no ←UNIXパスワードで接続:しない
- AllowUsers ユーザー1 ユーザー2 ←ログインできるユーザーを限定。
設定についての詳細はpenguin's campus noteがわかりやすい。
サーバは以上。
SSHクライアント
WindowsXPで、WinSCPとPoderosaの2つを使う。
(Cygwinは最近起動エラーばかりで使えないので使わない方向性。)
今までファイル転送のみの用途でWinSCPを使ってきたが、
初めてコマンドラインモードを使ってみたら落ちてしまって不安になったので
Poderosaも使ってみることにします。
公開鍵、秘密鍵(OpenSSH形式)のペアをサーバ(玄箱)のssh-keygenで
作ったら、OpenSSH形式が読めるはずのPoderosaでエラーが出てなぜか
使えなかった。
そこで、Poderosaで鍵を作成してサーバに渡す方法を取ります。
クライアントの設定(Poderosa)
http://ja.poderosa.org/index.html
1)最初に鍵を準備をする。
鍵を作成。2048ビット、DSA。秘密鍵、公開鍵ともに保存。
名前は、なんでもいいです。
- 秘密鍵:poderosa_dsa
- 公開鍵:poderosa_dsa.pub
2)公開鍵を玄箱の~/.ssh以下にパーミッション600で保存。このパーミッションは重要。
#chmod 600 poderosa_dsa.pub
3)公開鍵の名前を変更。
#cp poderosa_dsa.pub authorized_keys
authorized_keysは、サーバに設定した名前なのでこれで確定。
次にPoderosaの設定。
設定は、ファイル→新規接続から新規telnet/SSH接続で行う。
- 認証方法:「公開鍵」。
- 鍵ファイル:さっき作った秘密鍵、poderosa_dsaの場所。
クライアントの設定(WinSCP)
WinSCPはOpenSSH形式の鍵が読めないので、puttykeygenで読める形に変換する。
puttykeygen.exe
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
puttykeygen.exeを起動
ウィンドウが出るので、Loadボタンを押してpoderosa_dsaをロードする。
private key が生成できたら、名前を付けて保存。
WinSCPにはこの鍵を使う。
設定はセーブしておくと便利。
sshの設定は以上です!!!
おまけ:公開鍵・秘密鍵のペアの作成@玄箱
#cd ~/.ssh
#ssh-keygen -t dsa ←rsaにするとSSH1
id_dsa.pub が公開鍵なので、authorized_keysとしてコピーし、
これは~/.ssh/以下に置いておく。
#cp id_dsa.pub authorized_keys
id_dsaが秘密鍵。これをクライアントに送る。
(正確にはクライアントから玄箱にftp接続してgetする。)
おまけ:クライアントの設定(TeraTermPro SSH2には非対応!)
TTSSH日本語版
http://www.sakurachan.org/soft/teraterm-j/ttssh/
TeraTermProをインストール
環境変数TERATERM_EXTENSIONSを1にセット
「マイコンピュータ」を右クリック→プロパティ→詳細設定→環境変数
TTSSHの日本語版をDL、TeraTermProをインストールしたディレクトリに中身をコピー。