linux – 他のユーザのために ssh-copy-id を使って公開鍵をインストールする

linux ssh ubuntu ubuntu-12.04

ssh-copy-idは、リモートマシンのauthorized_keysに自分の公開鍵をインストールするために使うことができます。sudoの能力があれば、他のユーザの公開鍵をインストールするのにも同じコマンドを使うことができますか?

更新:ローカル、リモートともにUbuntu 12.04を使用しています

更新2:新規ユーザーアカウントの作成と公開鍵の追加の手順を記載しました

  1. (リモート) 新しいユーザーアカウントを作成し、ユーザー公開鍵アクセスのみに設定します
  2. (ローカル) 新しいユーザアカウントの公開鍵を生成します (ssh-keygen)
  3. 通常は、リモートサーバ上にディレクトリとファイル .ssh/authorized_keys を作成し、ローカルで生成された公開鍵を新しいユーザのアカウントにコピー&ペーストします。私が探しているのは、ssh-copy-idを使って、新しく作成したユーザの公開鍵を直接sshディレクトリにインストールできるかどうかということです。あといくつかのコマンドを保存するだけです

  34  None  2013-06-03


ベストアンサー

同じコマンドではありませんが、リモートホストにsudoがあれば、sshを使ってリモートで必要な手順を行うことができます。私は以下のコマンドを使って、自分のssh鍵をraspberryのrootユーザにプッシュしています

cat ~/.ssh/id_rsa.pub | \
ssh pi@192.168.1.25 \
"sudo mkdir /root/.ssh; sudo tee -a /root/.ssh/authorized_keys"
  • キャッツマイパブリックキー
  • sshにパイプする
  • ssh は私のラズベリーに ssh ユーザとして接続しています
  • リモートでは sudo を使って /root/.ssh を作成しています
  • そして、”tee -a” で sudo を使用して stdin (最初の cat の鍵を保持している) を /root/.ssh/authorized_keys に追加します

これをスクリプトとしてまとめて、リモート側で chmod/chown を追加すれば、必要なものが手に入ります

17  Michael Wyraz  2015-09-25


タイトルとURLをコピーしました