本記事は、GitHubにログインしていることが前提となります。
(1) 右上のリポジトリ作成ボタンをクリック
(2) リポジトリ名と公開/非公開設定、そして「READMEファイルをどうするか」を設定
(3) リポジトリが作成されていることを確認
(4) SSHにてGitにアクセスする情報を確認
(5) git cloneするサーバでSSHのキーを作成
# cd
# cd .ssh/
# ssh-keygen -C suz-lab-centos-ami@suz-lab.com
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
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:
xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx suz-lab-centos-ami@suz-lab.com
The key's randomart image is:
+--[ RSA 2048]----+
| oo |
| E . |
| * + . |
| = X . |
| . OS+ |
| +.o o |
| . o.. |
| .o+ |
| .o. |
+-----------------+
※途中で入力したパスフレーズはGitHubに公開鍵を設定する時にも必要となります。
(6) 作成された鍵を確認
# ls -1
authorized_keys
id_rsa
id_rsa.pub
- id_rsa : 秘密鍵
- id_rsa.pub : 公開鍵 (後でGitHubに登録します)
(7) 秘密鍵の確認
# cat id_rsa
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,2C57B454EEAB0A3F
o8LbCiHhB7ME6/+eYXyQ/g/3bpzZi1aFgA4/BaMIvZWRs9UkPI12fJZI95zuqIqB
...
2mM0KOFDe3fP0W/fe7j1sa/bRqfTx+YQ5n7yscQGTbVVM2j3Nld8yA==
-----END RSA PRIVATE KEY-----
(8) 公開鍵の確認
# cat id_rsa.pub
ssh-rsa AAAAB3Nz...== suz-lab-centos-ami@suz-lab.com
(9) GitHubにテストアクセス
# ssh git@github.com
The authenticity of host 'github.com (xxx.xxx.xxx.xxx)' can't be established.
RSA key fingerprint is xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'github.com,xxx.xxx.xxx.xxx' (RSA) to the list of known hosts.
Permission denied (publickey).
※GitHubに公開鍵が登録されてないので、Permission denied (publickey)となります。
尚、この時GitHubの公開鍵がknown_hostsに登録されます。
# ls -1
authorized_keys
id_rsa
id_rsa.pub
known_hosts
登録内容は下記のようになります。
# cat known_hosts
github.com,xxx.xxx.xxx.xxx ssh-rsa AAAAB3Nz...==
(10) 公開鍵の登録も右上のアカウント設定をクリック
(11) 左メニューのSSH Keysをクリック
(12) 公開鍵を追加する為にAdd SSH keyをクリック
(13) タイトルと公開鍵を入力
(14) パスフレーズを入力
(15) 公開鍵が追加されたことを確認
(16) 再度GitHubにテストアクセス
# ssh git@github.com
Enter passphrase for key '/root/.ssh/id_rsa':
PTY allocation request failed on channel 0
Hi suz-lab! You've successfully authenticated, but GitHub does not provide shell access.
Connection to github.com closed.
※GitHubに公開鍵が登録されたので、Permission denied (publickey)は表示されません。
(17) git cloneでリポジトリのコピーを取得
# cd /opt/
# git clone git@github.com:suz-lab/suz-lab-centos-ami.git suz-lab
Initialized empty Git repository in /opt/suz-lab/.git/
Enter passphrase for key '/root/.ssh/id_rsa':
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (3/3), done.
(18) リポジトリのコピーができていることを確認
# ls -1
aws
suz-lab
# cd suz-lab/
# ls -1a
.
..
.git
README.md
suz-lab
以上でSUZ-LAB CentOS AMIに組み込むツールをGitHubで管理できるようになりました。