アマゾンAWSでサーバーを使用して、公開鍵の.pemファイルを送信しました。SSHで接続する場合は、次の操作を行うだけです。
ssh -i key.pem user@server
私は今、自分のサーバーを持っており、sshを介してサーバーへのコマンドを自動化できるように、サーバーでこれを行う方法を見つけようとしています。
サーバーでこのキーを生成し、クライアントマシンにコピーする必要があると思います。このキーを生成するにはどうすればよいですか?
ログインしたいクライアントマシンで、を実行しますssh-keygen
。すばやく簡単なキーを表示するには、すべての質問でEnterキーを押すだけです。これにより、〜/.sshにキーペアが作成されます。具体的には、〜/ .ssh / id_rsaが秘密鍵(これは安全に保管してください)であり、〜/ .ssh / id_rsa.pubは公開鍵(配布してもかまいません)です。
ログインしたいサーバーに公開鍵(〜/ .ssh / id_rsa.pub)をコピーします(例:scp ~/.ssh/id_rsa.pub me@myserver:
サーバー上で実行します。サーバーでcat id_rsa.pub >> .ssh/authorized_keys
正しい権限を持っていることを確認するために、実行できますchmod 644 ~/.ssh/authorized_keys
。また、次のことができます。ここで、コピーしたid_rsa.pubファイルを削除します。
それでおしまい!クライアントからサーバーへのパスワードなしのログインが必要です。サーバーからクライアントへのパスワードなしのログインが必要な場合は、クライアントとサーバーを入れ替えてプロセスを繰り返す必要があります。
ノート:
ssh-keygen
ログインするたびにそのパスワードを入力する必要があります。この問題の解決策は、 ssh-agent。