SSHの公開キーをエクスポートする方法は?


12

2台のサーバー間でsshセッションをセットアップする必要があり、スクリプトに毎回ユーザー名とパスワードを入力させたくありません。

ただし、SSHサーバーがその構成を使用している場所を見つけることができないようです。

bash-2.05# ssh -V
Sun_SSH_1.1, SSH protocols 1.5/2.0, OpenSSL 0x0090700f

/ etc / ssh /と〜/ .ssh /の両方に証明書ファイルがあります。SSHの構成ファイルは1つしか見つかりません。/etc/ssh/ssh_configにありますが、データは含まれていません(すべてコメント化されています)。

証明書が保存されている場所を見つける方法、または他のサーバーに転送できるようにエクスポートする方法を知っている人はいますか?構成ファイルから答えが得られることを期待していましたが、ほとんど何の助けにもなりません。

回答:


17

「証明書」によるユーザーレベルでの公開鍵認証を意味ssh-keygenし、デフォルトの場所を使用して作成したと仮定すると、sshクライアントがそれらを見つける場所にあるはずです。キーは、通常はに格納されるプライベート部分~/.ssh/id_rsaとにあるパブリック部分で構成され~/.ssh/id_rsa.pubます。最後の1つは通常リモートサーバーに転送する必要があります~/.ssh/authorized_keys

キーを別のサーバーに転送する最も簡単な方法はssh-copy-id、ターゲットマシンで使用することです。作成時にデフォルトの場所を使用した場合、このキーが自動的に使用されます。

これ/etc/ssh/ssh_configはクライアント向けです。サーバーでは、を確認する必要があります/etc/ssh/sshd_config。セットアップでは、両方のサーバーがssh-clientとssh-serverの両方として機能するため、両端で両方のファイルを確認する必要があります。


動作しました。ありがとうございました。私が余分にやらなければならなかったのは、秘密鍵を指す-i(identity)paramを指定しなければならなかった私のクライアントでした。
クリスデール

2

スクリプトのログインユーザーとなるユーザーのssh公開キーを見つける必要があります。

たとえば、serverAとserverBがある場合、次のようにします。

sudo adduser scriptrunner
...
sudo su - scriptrunner
ssh-keygen
...
cat .ssh/id_rsa.pub
ssh-rsa AAAAB3Nza...... scriptrunner@serverA

その後、ServerBで同様の操作を行います

次に、serverAで、serverBのscriptrunnerユーザーの公開キーを /home/scriptrunner/.ssh/authorized_keys

そして、serverBで反対の操作を行います(serverAのscriptrunnerユーザーを使用してserverBのauthorized_keys /home/scriptrunner/.ssh/authorized_keysに入れます)

次にssh scriptrunner@serverA、キーを使用してserverBから、またはその逆を行うことができるはず です。

ssh-copy-idauthorized_keysビットを使用することもできます。


1

公開キー認証を使用してssh接続を確立するには、接続を開始するユーザーに公開キーと秘密キーのペアが必要です。多くのLinuxディストリビューションでは、これらのキーはデフォルトでは生成されず、ユーザー自身(または管理者が代わりに)によって生成する必要があります。

関連するユーザーとしてログインしている場合は、ホームディレクトリに移動して実行します

ssh-keygen

すべてのデフォルトを受け入れ、新しいキーペアが〜/ .ssh / id_rsaおよび〜/ .ssh / id_rsa.pubに作成されます。次に、公開鍵をコピーして、ターゲットマシンのターゲットユーザーアカウントの〜/ .ssh / authorized_keysファイルに貼り付けます。次に、ターゲットマシン(/ etc / ssh / sshd_config内)で公開キー認証を有効にすると、準備が整います。

:このプロセスを初めて実行する場合、このプロセスには多くの落とし穴があります。すべての権限が正しくなければならず、ファイルは適切な場所になければなりません。このようなHowToをフォローするのがおそらくベストです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.