ssh

最終更新日:2009-12-15

ssh コマンド周りの覚え書きです。

key生成

ssh-keygen

色々と質問されるので答えていくと、keyが生成されます。

別ユーザ相手にキーを作成する場合は、

sudo -u username ssh-keygen

とすれば、そのユーザの ~/.ssh にキーが作成されます。 ホームディレクトリが通常と違うパスに設定されているサービスのユーザ用のキー生成に便利です。

設定ファイル ssh_config

/etc/ssh/ssh_config
~/.ssh/config

接続先ごとのパラメータを設定できます。

特定接続先にのみデフォルトでagentを飛ばすようにする場合などに便利です。

特定コマンド実行専用の鍵の作り方

公開鍵に実行したいコマンドを追記したものを authorized_keys として登録します。 詳細は man sshd を参照のこと。

man からサンプルを以下に引用。

# Comments allowed at start of line
sh-rsa AAAAB3Nza...LiPk== user@example.net
from="*.sales.example.net,!pc.sales.example.net" ssh-rsa AAAAB2...19Q== john@example.net
command="dump /home",no-pty,no-port-forwarding ssh-dss AAAAC3...51R== example.net
permitopen="192.0.2.1:80",permitopen="192.0.2.2:25" ssh-dss AAAAB5...21S==
tunnel="0",command="sh /etc/netstart tun0" ssh-rsa AAAA...== jane@example.net