SSH Key
: 사용자 비밀번호 입력 방식 보다 높은 수준의 보안
: 젠킨스 등의 CI 툴로 배포 자동화를 할때 사용
: GitHub 계정에 2FA (Two-Factor Authentication)에 의해 이중 인증이 필요한 상황인 경우
SSH key 파일 확인
: 일반적으로 ~/.ssh 디렉터리에 존재
ㆍ없는 경우
1. mkdir ~/.ssh
2. chmod 700 ~/.ssh
3. cd ~/.ssh
SSH Key 생성
1. ssh-keygen -t rsa -b 4096 -C "github계정 이메일"
: rsa 암호화 방식으로 4096비트 크기의 키 생성
(SSH는 2048비트 혹은 4096비트의 키가 필요)
2. 아래와 같은 출력이 나오면 엔터
: 필요한 경우 경로 지정
: 키 생성이 완료 될때까지 계속 엔터
# Generating public/private rsa key pair.
# Enter file in which to save the key (/home/user/.ssh/id_rsa):
3. 키 생성 완료
Your identification has been saved in /home/user/.ssh/id_rsa.
Your public key has been saved in /home/user/.ssh/id_rsa.pub.
The key fingerprint is: SHA256:qYWyFlIUh/DxwRyzRj961ymIFyhgKchwpAy10YJcIIm your_email@example.com
The key's randomart image is:
+---[RSA 4096]----+
| =+. . o |
| +.= E = . |
| o + * * . |
| . * * o |
| .. o=..S+ |
|o .o =+.o |
| *. o... . |
|o=+..o |
|=o+++.o. |
+----[SHA256]-----+
4. 생성된 키 확인
: ls -al ~/.ssh
ㆍauthorized_keys : id_rsa.pub 키의 값 저장
ㆍid_rsa : 타인에게 노출되면 안되는 private key. 컴퓨터 내부에 저장. 이 키를 이용해 암호화된 메시지 해독 가능
ㆍid_rsa.pub : 공개되어도 괜찮은 public key. 이를 통해 메시지 전송전 암호화 진행
5. ssh agent 실행 여부 확인
: eval "$(ssh-agent -s)"
6. SSH-agent에 SSH key 등록
: ssh-add ~/.ssh/id_rsa
GitHub에 SSH key 등록하기 (공개키 등록)
1. 깃허브 접속 > 계정 클릭 > Settings > SSH and CPG keys > New SSH key
2. SSH 키 등록
ㆍTitle : 사용자 지정 키 이름
ㆍkey
: 공개 키 내용
: bcopy < ~/.ssh/id_rsa.pub
: 혹은 cat ~/.ssh/id_rsa.pub
3. 내용 입력 후 Add SSH Key 클릭 후 저장
4. 레포지터리의 SSH 접근 주소 복사
: 레포지터리에 접속하여 Code 클릭 > Use SSH 클릭 > 복사
5. 로컬 레포지터리 설정
: git init
: git remote add origin 복사한_Use_SSH_코드
ㆍ이미 https로 연결한 경우
: git remote remove origin
: git remote add origin 복사한_Use_SSH_코드
: git remote show
Refference
'Devops > Git' 카테고리의 다른 글
깃허브 commit 포함하여 레포지터리 합치기 (0) | 2021.10.21 |
---|---|
깃허브 간단하게 commit 취소하기 (0) | 2021.10.21 |
CI/CD 구축하기 -1 [Jira와 Github 연동] (0) | 2021.09.24 |
Support for password authentication was removed on August 13, 2021. Please use a personal access token instead. (0) | 2021.09.08 |
[git hub] git conflict 없이 브랜치 병합하기 (0) | 2021.08.22 |