頻出SSHメモ ~/.ssh/configと認証鍵まわりのこと
Posted: Updated:
SSHはちゃんとconfigしておくと便利
SSHを使うときはちゃんとconfig書いておきなよ,って偉い人が言っていました.現在日常的に使えている範囲のことをメモしておきます.ほんの少し,簡単な記述を行うだけで手数が圧倒的に減ります.
これらの設定は,SFTPを利用する際にも適用されるので便利です.多段SFTPが必要なときは,他のひとの端末に以下の設定を仕込むことがあります.そのとき,端末の利用者はTransmit等のGUIのFTPクライアントを利用します.
sshと,~/.ssh/config
まったくプレーンなSSH
`
plain
% ssh 192.168.0.1 -l username
`
自分の.ssh/configを編集
`
plain
% emacs ~/.ssh/config
`
ホスト名のエイリアスとポートの指定
`
plain
Host myserver
HostName 192.168.0.1
Port 22
% ssh username@myserver
`
ユーザー名も省略しちゃう
`
plain
Host myserver
HostName 192.168.0.1
Port 22
User username
% ssh myserver
`
多段SSH (よく言って踏み台)
`
plain
Host myserver
HostName 192.168.0.1
ProxyCommand ssh humidaiuser@humidai nc %h %p
% ssh username@myserver
`
上の設定で,自端末でmyserverにSSHすると,暗黙でhumidaiuserでhumidaiサーバーにログインしてから,humidai経由でmyserverに接続されます.
client → humidai → myserver という経路になります.踏み台とか,カコイイ.
追記: sshを使いこなすための7つの設定 - 射撃しつつ前転 で紹介されてる内容が,目から鱗( Д ) ゚ ゚だったので,併せてURLを紹介しときます.コネクションの使い回しとか,認証鍵の指定とかいろいろ.
認証鍵の取り扱い周り
SSHする際のパスワード入力をサボれるようにすると,もっとラクになります.サーバー側のauthorized_keysに,自分の公開鍵を追加するだけです.取り扱いは自己責任で.
ssh-keygenとかssh-addとか,cat >> authorized_keysとか
id_rsa以外で認証鍵を作成
`
plain
% ssh-keygen -f my_key
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in my_key..
Your public key has been saved in my_key.pub.
The key fingerprint is:....
`
任意の認証鍵をssh-agentに追加
`
plain
% ssh-add ~/.ssh/my_key
`
現在,ssh-agentが抱えている鍵を確認
`
plain
% ssh-add -L
authorized_keysに公開鍵を追加
<small>※誤って既存の鍵を壊してしまうことは防げるが,>が1つになると惨事になるので要注意</small>
サーバーにmy_key.pubをあげておいて % cat my_key.pub >> authorized_keys
または,クリップボードにいれておいて
% cat >> authorized_keys
(paste)
`