OSS Fan ~OSSでLinuxサーバ構築~

このエントリーをはてなブックマークに追加

ssh-keygenで秘密鍵・公開鍵のペアを作成

カテゴリ:OSSセットアップ | ソフトウェア:OpenSSH | タグ:
最終更新日:2020/11/30 | 公開日:2017/04/09

目次

概要

 OpenSSHのssh-keygenコマンドで秘密鍵と公開鍵のペアを作成します。 作成した鍵のペアはサーバとのSSH接続での公開鍵認証などで利用できます。

構成

サーバ構成

OSバージョン

CentOS 7.2.1511 x86_64

ソフトウェア・パッケージ一覧

  • openssh-6.6.1p1-25.el7_2.x86_64.rpm

環境構築

設定

秘密鍵と公開鍵の作成

 ssh-keygenで公開鍵暗号の秘密鍵と公開鍵を作成します。 暗号化方式はRSAを選択し、鍵のビット数を2048とします。 コメントはデフォルトではssh-keygenを実行した「ユーザ名@ホスト名」となり、公開鍵のファイルの末尾に書き込まれます。 今回は明示的に自身のメールアドレスとして「hoge@example.com」を指定します。

# ssh-keygen -t rsa -C "hoge@example.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): ←何も入力せずに[Enter]キーを押す
Enter passphrase (empty for no passphrase): ←何も入力せずに[Enter]キーを押す
Enter same passphrase again: ←何も入力せずに[Enter]キーを押す
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
2d:86:09:4d:9f:a6:cd:01:7b:da:09:06:e6:ec:72:c6 hoge@example.com
The key's randomart image is:
+--[ RSA 2048]----+
|    o o          |
|   + + + .       |
|    + = *        |
|   o o % +       |
|  . E = S .      |
|   +   . .       |
|                 |
|                 |
|                 |
+-----------------+

作成した鍵の確認

 ssh-keygenで指定したディレクトリとファイル名で鍵が作成されます。 デフォルトでは鍵が作成されるディレクトリは「ユーザのホームディレクトリ/.ssh/」となります。 作成された秘密鍵と公開鍵は以下の通りです。

# ls -l /root/.ssh/
total 12
-rw-------. 1 root root 1679 Apr  8 19:13 id_rsa ←作成した秘密鍵
-rw-r--r--. 1 root root  398 Apr  8 19:13 id_rsa.pub ←作成した公開鍵
-rw-r--r--. 1 root root  347 Dec 25 17:42 known_hosts

秘密鍵の確認

 作成された秘密鍵はテキストファイルで、以下のような内容になっています。

# cat /root/.ssh/id_rsa
-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCAQEAzESl28YzM9ANID89z7y+1LWHq46FygaJtg/ohB8LNALdP6SE
8pTQZh2NcFZT86+lDhVjzfWhMCy21x4psSlmsoXF2oEzvzfBGz9OrddvEt8bUzlH
Yllvt9rij2Q8XrHFXoSWBmamu42dj3J8mXUnEeV+beNmozT71p5DXOPzIPf6nlzS
y1MQzNQZWkC7PGhyHvyHxK+jcU4o8rTljAY5ys4tZyJo9txAA06jsdxB7/VXZFly
lDIR1Go+3EGTg7YVLR/pgt9qDiM6dDzNtenGtb448eQQ7vmUTT2AkxDkAY/2MXvN
Djq4r2MKjETcpkyLJWjR253wMi0d0UFPeZgMbwIDAQABAoIBADQp07EsDCdPGgsC
G2bRbGolcV/+JWxR/xjfNyGGS/YcRSPbf5fzKMTrBxOI+Cdi02OlUrdl4qPKx2Zn
7X2wdOliAASsueo68rVilVUPju3iy7eVCQW0kTMCUpkLn98Oxrg8Y5N+41VB9NqN
AgSuRivrzz2AtNU40pccE1fFXnEsbYa95BxuO/2dK4mU83/MOW8w8q2HAx/4zWZe
v8cNGKa4RtmRiZI/QW3YZsupGII3yizrWSvo7CFggLm6beKg+MSVXjb4RDoOmOdO
5JKSWW/lszB+RCbWVu5Xb1tOh6r64KkIUKQ3+L65mn78wjuJ/TWgx98p5d3g2wcr
SFMj4AECgYEA78k3EBikOVEIaFh19qKDQqJLUliMCgCO/0e0wTupmuo+WGPgj+Ok
cfmZP02HIuzF8VHIGeOjP3rBNLYgHUujUONxEeAUehdVeDbO34zu3VqFiCmmEkbt
hOIFquT0j4QZ90GT0+LOpYpLE2vLFIMdLs4OsMyKIlbSWfOBTL/qbe8CgYEA2hSb
EhTJ4ReOXbEFD6oNbTtunDzBcqoUIN6zMujiQRUqynXpsV52pbMqECN6QhUL92CO
UP3dQsYh6PPJuk1iIi8I3VIsawigb6vu+OgEhH0CT4ZiY+bJCPvisyEr8rFOqLpq
RdOsPlydNWeVqehCj74spThpYwfLdHJ04fQ6yYECgYEAlMUdoaH4Ogt5kOvZfIUF
tVDmNJf1grsn/WCq1/zBVPkiZ0rIZ93QCFrY5rqeLmACy5927AEdJuRtfNvGfwaP
tD74xyNk8P8LK0OuBGr3RGTGVl2oyMwyz3BAHfBhf61xQsPwCNU+atyricgmPnq+
n2x/FthAl9+QMPjwbwLfWwcCgYBC3+jBvbA+n1uf7YXQzOP7KCt+K79iqzcq8T/g
j7u6G4SYu1njc0VNAMkYU9jM5OlbfbeGrKKqNFn3trKYt9wtAWFlhSpr1CRmukG5
AGVKP49y1ZHccswZPizBo513ednWMfwe149NPFdVJiOmC7xFmhrUu5zNqnlAh0zC
cYOJgQKBgQCUxIpbzwh07gS63MHpFoyfMzzehqB32Amb4O1Va0kPTskPvC0MFPcT
dHc692kVs729OSXpjkC1tH5G3Dx/UVxcX/v8TBUlMPzM28EkyH4i9NCaZqf4+Kbe
5giNT3ARDLXf9aUl3AYVxNizL1ap6k7/3YwdpyboCbyBKcFG8uoPjw==
-----END RSA PRIVATE KEY-----

公開鍵の確認

 作成された公開鍵もテキストファイルで、以下のような内容になっています。

# cat /root/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDMRKXbxjMz0A0gPz3PvL7UtYerjoXKBom2D+iEHws0At0/pITylNBmHY1wVlPzr6UOFWPN9aEwLLbXHimxKWayhcXagTO/N8EbP06t128S3xtTOUdiWW+32uKPZDxescVehJYGZqa7jZ2PcnyZdScR5X5t42ajNPvWnkNc4/Mg9/qeXNLLUxDM1BlaQLs8aHIe/IfEr6NxTijytOWMBjnKzi1nImj23EADTqOx3EHv9VdkWXKUMhHUaj7cQZODthUtH+mC32oOIzp0PM216ca1vjjx5BDu+ZRNPYCTEOQBj/Yxe80OOrivYwqMRNymTIslaNHbnfAyLR3RQU95mAxv hoge@example.com