1. tetymd

    No comment

    tetymd
Changes in body
Source | HTML | Preview
@@ -1,82 +1,87 @@
#環境
- 端末A(Ubuntu17) ー接続する側
- 端末B(CentOS7) ー接続される側
#公開鍵認証で接続するための4ステップ
+![スライド2.JPG](https://qiita-image-store.s3.amazonaws.com/0/237938/114fe3ae-4376-ad9d-2014-da61891007ac.jpeg)
+
1. 「接続する側」で秘密鍵と公開鍵を作る。
2. 1で作った公開鍵を「接続される側」に送る。
3. 「接続される側」で、送られてきた公開鍵をauthorized_keysファイルに追記する。
4. 「接続する側」から「接続される側」にSSH接続し、パスフレーズを入力。
これ以降はSSHなどで接続した時、パスワードを聞かれなくなります。
#公開鍵認証で使用する3つのファイル
+![スライド1.JPG](https://qiita-image-store.s3.amazonaws.com/0/237938/4a3aadff-97b2-f38a-d128-c9d7eee57971.jpeg)
+
+
#実際にやってみる
##「接続する側」で秘密鍵と公開鍵を作る
まず端末A「接続する側」で秘密鍵と公開鍵を作るため、
以下のコマンドを実行します。
```shell
$ ssh-keygen -t rsa
```
コマンド実行後パスフレーズの入力を求められます。
```shell
Generating public/private rsa key pair.
Enter file in which to save the key (/home/user/.ssh/id_rsa): Enterキー
Created directory '/home/user/.ssh'.
Enter passphrase (empty for no passphrase): パスフレーズ入力
Enter same passphrase again: 再度パスフレーズ入力
```
パスフレーズは忘れたら鍵を作り直さないといけなくなるので注意。
以上の入力が終わって、こんなのが出たら秘密鍵と公開鍵の作成は終了です。
鍵は/home/user/.sshに保存されています。
```shell
Your identification has been saved in /home/user/.ssh/id_rsa.
Your public key has been saved in /home/user/.ssh/id_rsa.pub.
(フィンガープリント)
```
##「接続される側」に公開鍵を送る
端末A「接続する側」で作った公開鍵を端末B「接続される側」に送ります。
いろんな方法がありますが、今回はscpコマンドを使います。
```shell
$ scp ~/.ssh/id_rsa.pub user@host:/home/user
```
##「接続される側」で、公開鍵を登録する
端末Aから送られてきた公開鍵を登録します。
端末Bに.sshディレクトリがない場合はmkdirなどで作っておきましょう。
```shell
$ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
```
コマンド実行後は送られてきたid_rsa.pubを削除しても大丈夫です。
##接続する
鍵の登録が済んだので公開鍵認証で接続できるか確認しましょう。
最初の接続は鍵を作った際に入力したパスフレーズを聞かれるので入力します。
接続できたらexitで一旦抜けて、再度接続してみてください。
パスワードを聞かれなければ公開鍵認証成功です。
#補足
接続できない場合は以下の点を確認してください。
- [ディレクトリ・ファイルのパーミッション](https://www.pistolfly.com/weblog/2007/02/ssh.html)
- SELinux
#参考
[公開鍵暗号方式 - wikipedia](https://ja.wikipedia.org/wiki/%E5%85%AC%E9%96%8B%E9%8D%B5%E6%9A%97%E5%8F%B7)
https://www.pistolfly.com/weblog/2007/02/ssh.html