Skip to content

Commit

Permalink
📝 updates
Browse files Browse the repository at this point in the history
  • Loading branch information
kaityo256 committed Sep 23, 2023
1 parent 4104525 commit 1a92b35
Showing 1 changed file with 8 additions and 2 deletions.
10 changes: 8 additions & 2 deletions ssh/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,12 @@ GitHubはネットワークの向こうにあるため、物理的な鍵を使

GitHubは不特定多数がネットワーク越しにアクセスする関係上、ネットワークのどこからでも見える状態になっていなければならない。すると、Gitのコマンドにより、データがローカルリポジトリからGitHubに送られてきた時、GitHubは「そのデータを送ってきたのは、確かにそのリポジトリにアクセスする権利を持つ人である」ことをなんらかの方法で認証しなければならない。そのために利用されるのがSSH公開鍵認証である。なお、以下の説明はかなり簡略化されたものであり、実際に行われている認証プロセスとは異なることに注意されたい。

SSH公開鍵認証のポイントは、秘密鍵と公開鍵という、2つの鍵を用意することにある。秘密鍵と公開鍵はペアになっており、対応する鍵でなければぴったり一致しない。そこで、予めなんらかの方法で公開鍵をGitHubのサーバに登録しておき、「登録した公開鍵とぴったり合う秘密鍵を持っている人」が、そのリポジトリにアクセスする権利のある人である、という形で認証を行うことにする。
![公開鍵](fig/ssh-keys.png)

初めてSSH公開鍵を使う場合は、`ssh-keygen`で鍵を作ることができる。
SSH公開鍵認証のポイントは、秘密鍵と公開鍵という、2つの鍵を用意することにある。秘密鍵と公開鍵はペアになっており、対応する鍵でなければぴったり一致しない。そこで、予めなんらかの方法で公開鍵をGitHubのサーバに登録しておき、「登録した公開鍵とぴったり合う秘密鍵を持っている人」が、そのリポジトリにアクセスする権利のある人である、という形で認証を行うことにする。これがSSH公開鍵認証の仕組みであり、認証のタイプとしては所持認証にあたる。

初めてSSH公開鍵を使う場合は、`ssh-keygen`で鍵を作ることができる。ターミナルから以下のコマンドを実行する。

```sh
$ ssh-keygen
```

0 comments on commit 1a92b35

Please sign in to comment.