32a52394a5f79b7b3c8ffc32f4a163c18e48bb06
git/\346\211\213\345\205\203\343\201\256ssh\351\215\265\343\202\222\344\275\277\343\201\243\343\201\246\343\200\201\344\273\226\343\201\256\343\203\236\343\202\267\343\203\263\343\201\213\343\202\211GitHub\343\201\270\343\202\242\343\202\257\343\202\273\343\202\271\343\201\231\343\202\213.md
... | ... | @@ -0,0 +1,37 @@ |
1 | +参考: [ssh-agentを利用して、安全にSSH認証を行う](https://zenn.dev/naoki_mochizuki/articles/ce381be617cd312ffe7f) |
|
2 | + |
|
3 | +## 想定する状況 |
|
4 | +手元のマシン(例えば、Macbook)のssh鍵は、既にGtHubの自身のアカウントへ登録してある。サーバにて、GitHubからプライベートリポジトリを`git clone`したい。しかし、サーバ上では鍵を生成したくない。 |
|
5 | + |
|
6 | +## 方針 |
|
7 | +手元のマシンのSSH鍵を`ssh-agent`を用いてサーバへ転送する。サーバでは転送された`ssh-agent`を用いてGitHubへアクセスする。 |
|
8 | + |
|
9 | +## 方法 |
|
10 | +手元のマシンをMacbook、GitHubにアクセスしたいサーバのホスト名をserver.example.comとする。 |
|
11 | + |
|
12 | +1. Macbook: ssh-agentを起動する |
|
13 | +```bash |
|
14 | +$ eval `ssh-agent` |
|
15 | +``` |
|
16 | + |
|
17 | +1. Macbook: ssh-agentに鍵を登録する |
|
18 | +``` |
|
19 | +$ ssh-add |
|
20 | +``` |
|
21 | + |
|
22 | +1. Macbook: ssh-agentの接続を転送する |
|
23 | +``` |
|
24 | +$ ssh -A server.example.com |
|
25 | +``` |
|
26 | + |
|
27 | +1. この時点で既にサーバからsshを用いてGitHubにアクセスできるようになっている。sshによるGitHubへのアクセスをテストしてみる。 |
|
28 | +参考: [SSH 接続をテストする](https://docs.github.com/ja/authentication/connecting-to-github-with-ssh/testing-your-ssh-connection) |
|
29 | +サーバ: GitHubへの接続をテストする |
|
30 | +``` |
|
31 | +$ ssh -T [email protected] |
|
32 | +``` |
|
33 | + |
|
34 | +1. サーバ: GitHubからレポジトリをクローンする |
|
35 | +``` |
|
36 | +$ git clone ... |
|
37 | +``` |
|
... | ... | \ No newline at end of file |