Git 서버들은 SSH public key 방식으로 인증을 합니다.


이 SSH public key 를 생성하는 방법에 대해 알아보겠습니다.


 - public key 위치


$ cd ~/.ssh/
$ ls
id_rsa  id_rsa.pub  known_hosts
$


이중 id_rsa 와 id_rsa.pub 이 key 파일들인데, id_rsa 는 개인 키 파일이고, id_rsa.pub 가 공개키 파일입니다.


만약 없다면 생성할 수 있습니다.


 - public key 생성


$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/woong/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/woong/.ssh/id_rsa.
Your public key has been saved in /home/woong/.ssh/id_rsa.pub.
The key fingerprint is:
7c:44:b1:25:4c:94:b4:31:6c:63:3d:a2:cf:d6:b1:6c woong@idea
The key's randomart image is:
+--[ RSA 2048]----+
|         *X+.    |
|         .OBo    |
|         ++o .   |
|       ...  .    |
|        So.o o   |
|         .+ E    |
|         . .     |
|                 |
|                 |
+-----------------+
$ ls
id_rsa  id_rsa.pub  known_hosts
$


중간에 물어보는 부분은 그냥 Enter 로 넘어가도 괜찮습니다.


그리고 key 파일들이 생성된 것을 볼 수 있습니다.


이제 git 서버에 public key 를 넣어야 할 경우 id_rsa.pub 의 내용을 넣어주면 됩니다.


$ cat id_rsa.pub 
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDV8QpLgV/fZu/D1IxgE/0vDcZjdAta6Jg0497u3FC2fX3aIntoUMB3hfNsJJ6VvR8m9s0ottjTifUmRP0nu7udDwuKoyjTiy98/F5L5AN8EFpIGsW8sTWBu3stTJG7wsOhv56XuhuY32eSjDCKr8nLP3T0ZVFAvkS3DGIhHuwNpDIIRxwUR6MlIwBPUBXGd1eeawIvW+RSLUX5rltf7+HxM9Jeq0d9bX9YyRemQyg4alC9vsM+FooLVcfL5dYRTn2yuJ9S1gyL7qwjMKW+W+p3wDpci/qt8upk99F7qG08nvnr18KJ1kZ6WTdWhOdyA+zv9x4gOADBr2JE+AM6qLSb woong@idea
$