ssh-keygenを使用して秘密公開鍵を生成し、それを許可する方法は?


19

サーバー1で公開鍵と秘密鍵を生成し、デフォルトの場所ではない場所に保存したい。

その後、公開キーをサーバー2に保存します。もう一度、デフォルトの場所ではありません。

次に、このキーを認証キーにします。

ただし、フォルダ内にauthorized_keysファイルが見つかりません~/.ssh。承認するにはどうすればよいですか?


1
ssh-keygenは、キーを生成するためのコマンドです。作成中にキーファイルの場所を要求します。私はあなたがお持ちでない場合は、キーを承認したファイルを作成するために持っていると思う
sagarchalise

回答:


22
  1. を実行しますssh-keygen -f filename
  2. 走る scp filename username@server:filename-on-server
  3. サーバーにログインして実行する cat filename-on-server >> ~/.ssh/authorized_keys

手順2と3をに置き換えることもできますssh-copy-id -i filename username@server


エラーが発生します:引数が多すぎます
-IgorGanapolsky

@イゴールはどのステップで?
ミケル

1
filenameではなくfilename.pubを追加しないでください(これは秘密鍵になりますか?)
Samuel

1

ssh-keygenコマンドを使用します。サーバー(sshが必要な場所)で、公開鍵をfileに保存します~/.ssh/authorized_keys。あなたの家の中にまだ.sshディレクトリがない場合(〜)、それを作成します(また注意してください:sshdは、セキュリティ上の理由から、他のユーザーがそのファイル/ディレクトリを読むことができないので、発行するのが良いようです.sshディレクトリのchmod 700と、その中のファイルのchmod 600)。

sshするマシン(「クライアント」)で、秘密鍵を使用してサーバーにsshできます。どこにでも保存でき-i、ssh のスイッチを使用して、使用する公開鍵を提供できます。あなたが「デフォルトの場所に保存しない」と述べたので、私はこれを書きます。デフォルトの場所はfile id_dsa、.sshディレクトリ内の(DSAキー用)です。その後-i、キーは自動的に選択されるため、キーを指定するためのスイッチは必要ありません。


1

すでにキーを作成しているようです。そうでない場合は、ssh-keygenを実行してデフォルトを受け入れます。authorized_keysファイルを自分で作成します。touch authorized_keys

秘密鍵を標準以外の場所に保管する場合は、必ず-iを使用してください。 ssh -i /path/to/privatekey user@host

ssh-keygenとauthorized_keysを使用してsshログインを簡素化する良い記事を次に示します。

http://www.debuntu.org/secure-your-ssh-server-with-publicprivate-key-authentification/

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