web-dev-qa-db-ja.com

Openssl .pemファイルの生成方法と配置場所

OpenSSL .pemファイルを生成して、パスワードの場所で.pemファイルを使用してssh経由でリモートログインできるようにします。

次を使用して、キーと.crtおよび.pemファイルを生成できます。

Sudo openssl genrsa -des3 -out server.key 2048
openssl req -new -key server.key -out server.csr
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
openssl x509 -inform DER -outform PEM -in server.crt -out server.crt.pem

しかし、問題は、サーバー側に配置する必要がある場所、または/etc/ssh/sshd_configファイルを使用してssh経由でリモートログインできるように.pemファイルに変更する必要がある場所です。

クライアントが次の方法でマシンを接続するようにします。

ssh -i server_crt.pem username@my_ip

実装のために正確に変更する必要があるもの。

ありがとう

12
Farman Ali

最初に、接続するサーバーに公開鍵をアップロードする必要があります。公開鍵は.pubファイルにあります。

例:

# ssh-copy-id -i ~/my-certificate.pub [email protected]

この後、動作するはずであり、次を使用してログインできるはずです。

$ Sudo ssh -i ~/my-certificate.pem [email protected]

変更は、サーバーマシンの〜/ .ssh/authorized_keysファイルで行われ、nanoなどのテキストエディターで開くと、次のような行で始まる行が表示されます:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAX ...

$ ssh-keygen -t rsa -b 2048 -vを使用してキーファイルを個人的に生成します。これにより、.pemおよびpubファイルが生成されます。尋ねられたら:

キーを保存するファイルを入力します(/home/user/.ssh/id_rsa):

.pemファイルの名前を入力します。例:my-certificate.pem

キーの生成からログインまでのステップバイステップ:

  1. $ ssh-keygen -t rsa -b 2048 -vでキーを生成し、キーを保存するファイルの入力を求められたらmy-certificateを入力し、パスフレーズの入力を求められたらEnter(空のパスフレーズ)を押し、Enterで確認します。
  2. 2つのファイルが生成されます。1つはmy-certificate、もう1つはmy-certificate.pubで、my-certificateの名前をmy-certificate.pemに変更すると、my-certificate.pubとmy- certificate.pem
  3. パブリック証明書をサーバーにアップロードします:ssh-copy-id -i ~/my-certificate.pub username@ip
  4. コンピューター上の.pemファイルを読み取り専用にするSudo chmod 400 my-certificate.pem
  5. $ Sudo ssh -i /path/to/my-certificate.pem user@ipでログイン
16
Mike