質問編集履歴

1 タイトルの修正

ikuwow

ikuwow score 455

2015/02/10 20:17  投稿

sudo -u someuserした場合にsudoコマンドを打ったユーザーの秘密鍵の鍵を使いたい
sudo -u someuserした場合にsudoコマンドを打ったユーザーの秘密鍵を使いたい
例えば以下のように、SSHでログインした後にsudoでroot権限でコマンドを使う場合を考えます。
ホストOS ==(1)SSH==> ゲストOS vagrantユーザー ==(2)sudo==> ゲストOS rootユーザー
(1)のSSHした後もホストOSの秘密鍵を引き継ぐためには、`~/.ssh/config`のゲストOS vagrantユーザーでのログインのセクションに`ForwardAgent yes`を追加すればよいです。
また(2)のsudo後に秘密鍵を引き継ぐためには、`/etc/sudoers`に`Defaults env_keep += "SSH_AUTH_SOCK"`を追加すればよいです。
どちらも`ssh-add -l`コマンドで、現在利用できる秘密鍵を確認できます。
現在以下の様な場合で煮詰まっています。
ホストOS ==(1)SSH==> ゲストOS vagrantユーザー ==(3)sudo -u someuser==> ゲストOS someuserユーザー
この(3)の場合、`sudo -u someuser ssh-add -l`を行ってももとのvagrantユーザーで使っている秘密鍵(=ホストOSの秘密鍵)は表示されず、出力は`Could not open a connection to your authentication agent.`となります。
`sudo`にてroot以外のユーザーの権限でコマンドを実行する場合、秘密鍵を引き継ぐ方法はあるのでしょうか?
  • Linux

    7456 questions

    Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

  • SSH

    1352 questions

    SSH(Secure Shell)は、セキュアチャネルを通してデータを交換するためのネットワークプロトコルです。リモートサーバーへのコマンド実行やファイル転送を行う時に一般的に使用されます。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る