514ばんの日誌

2017-05-11

sshとかputtyとかあらためてメモ

久しぶりにこのへんの整理とか更新したんで次忘れたとき用にメモ
【sshの鍵を作る】
% ssh-keygen -t rsa -b 4096 -C "(コメント)"
鍵ファイルの保存先聞いてくるので、デフォ(~/.ssh/id_rsa)でいいならEnter
パスフレーズを入力
確認でもう一度入力
コメントは任意。ユーザー名@PC名とかでよいかと
(putty用の秘密鍵作っちゃうと見る機会ない)
保存先に以下が生成
id_rsa … 秘密鍵
id_rsa.pub … 公開鍵
id_rsa.pubを、authorized_keysに追加
authorized_keysがなければ、id_rsa.pubを丸々コピー
% chmod 600 authorized_keys
とかも一応
鍵はputtyのputtygen.exeでも作れるが、opensshの方で作って
それをputty用にconvertする方がしっくりくるというか
(puttygen.exeからopenssh鍵にconvertも可能)
生成した秘密鍵はコピーして、他のPCでも使えるので、いちいち使うPCごとにコンバートする必要はない
使うPCごとに鍵生成するなら、puttygen.exeで鍵ペア作って、公開鍵をauthorized_keysに追加の方が手っ取り早い
【putty】
端末エミュ
いつから使ってんのかわからんくらい前から使ってる
本家以外にも日本語環境とかに合わせた改変版がある
「ICE IV + putty」というところで配布されてるputty GUIとD2D/DWを使用
D2D/DWだと全角フォントが別で指定できる
本家はUTF-8だとフォントリンクがうまくいかないようなので、これが使用理由
「x64」フォルダ内に64ビット版も同梱してある
「ja-JP」フォルダ内のlngファイルを各exeと同位置に置けば日本語メニュー化
「ini」フォルダ内のputty.iniをputty.exeと同位置に置けばレジストリではなくiniファイルに設定保存
(UseIniFile=1 の設定)
設定の使い回しなど、iniファイルで扱う方が楽
【puttygen.exe】
Win10で起動しようとしたら、なぜか警告画面が出たが
気にせず詳細かなんか押して許可
メニュー欄「conversions」→「import key」で、さっき作った「id_rsa」を読み込む
既にsamba共有してるので、ネットワーク経由で読めばいい
してないならUSBに移すとかでWin機の方に持ってくる
RSAにチェック入れて、ビット数を4096とかにして(別に2048でもいいけど)
「Save Private key」ボタンを押せば、*.ppk(putty用秘密鍵)に出力できる
こっちのコメント欄が接続時に端末内に表示されるんで、鍵の数があるなら変えておくといい
【puttyの接続設定に鍵ファイルを指定】
設定ごとに「セッション一覧」で個別保存
pageant.exe経由で開くようにするときにこのセッション設定名を@で指定する
「セッション」カテゴリ
SSHで繋げるので、接続タイプのところのSSHにチェック
ホスト名はサーバ機のIP(名前引きできるなら名前)
ポートは普通は22
「接続」カテゴリの「データ」
自動ログインのユーザ名(U) … サーバ機上のログインユーザ名
「接続」カテゴリの「SSH」→「認証」
プライベートキーファイル(K) … さっき作ったputty用の鍵ファイル(*.ppk)
繋げるだけならこれだけでもなんとかなるかと
文字コードや日本語表示に関する部分の設定(「ウィンドウ」の「変換」とか)もしておく
セッション設定を保存してから、とりあえず開いてみて
端末内で「login・password」ではなく、パスフレーズを聞いてくるようならOK
【pageant経由でputtyを開くようにする】
pageant.exeを右ドラッグとかでショートカットアイコン作成(場所は任意)
ショートカットアイコンのプロパティを開き、「リンク先(T)」の「pageant.exe」の後に続けて
pageant.exe 《作ったppkファイルをフルパスで》 -c 《putty.exeをフルパスで》 @《putty設定のセッション名》
のように書き換える
pageantは、パスフレーズ自体も記憶しておけるが
初回起動時くらいはパスフレーズを入力するようにしておかないと
パスフレーズを忘れてしまうので記憶させない
%HOME%を作っておいて、設定内の鍵ファイルの指定にうまいこと使えば
ユーザー単位で共用できるかもしれない
pageant自体に鍵登録があるが、レジストリを見にいってるのか
登録しても残らないんでやらなくていい
作ったショトカから開けば、指定した鍵が一時的に登録されて
ちゃんと2回目以降も省略処理してくれるんで
【おまけ】
Androidアプリの「JuiceSSH」でも、ここで作ったopensshの鍵(id_rsa)はインポートできる
どうにかして、作成したid_rsaをスマホ上に持ってきて
JuiceSSHの「認証情報」で作ったユーザの「プライベートキー」項目でインポートするだけ
接続設定は、SSHにして、認証情報のところにそのユーザを入れてやる
(ポートは22とか、アドレスはサーバIPとか名前)
ローカルサーバで外向けにしてないから、WiFiルータ繋いでる間だけになるが
スマホ上で端末接続できるのは、ちょっと面白い(キー打つのがしんどいがw)