ssh-key 생성 및 github, gitlab에 추가

정보/뉴스

ssh-key 생성 및 github, gitlab에 추가

담운 0 1,713 2019.06.08 16:33

여러 git서버들 (github, gitlab 등)은 SSH공개키를 통해서 인증할 수 있습니다. 즉 SSH공개키를 통해서 로그인 한것과 같은 효과를 낼 수 있습니다.

이는 매번 git config credential.helper store 등의 명령어로 비밀번호를 저장하는 번거로움을 덜어줄 수 있습니다. 또한 저의 경우는 github과 gitlab을 동시에 사용하는데 계정이 달라서 하나의 ssh key로 두 서버에 동시사용하는 중입니다. (보안에 문제가 될지 모르겠지만 편리합니다. 필요하다면 여러개의 ssh key를 생성하여 서버마다 다른 ssh key를 적용하는것도 가능합니다. 밑에서 설명)

1. ssh key 생성

ssh-keygen 명령어를 통해 생성 가능합니다.

ssh key를 생성할 경로와 passphrase를 입력하라고 합니다. 경로는 원하는곳에 지정하면 됩니다. 보통의 경우 default인 ~/.ssh 의 내부에 저장합니다. passphrase는 비밀번호를 통해 ssh key를 한번 더 암호와 합니다.

생성 후 ~/.ssh 경로에 들어가면 id_rsa, id_rsa.pub 이렇게 2개의 파일이 생성되어 있습니다. 이름에서 알 수 있듯이 id_rsa파일이 secret key, id_rsa.pub이 public key입니다.

2. ssh key 등록(github)

github로그인 -> Settings -> SSH and GPG keys -> New SSH key에 Title과 Key를 입력하면 됩니다. Title은 해당 key를 구별하기위한 이름을 쓰면 되고 Key에 실제 key를 쓰면 됩니다. 옅은 글씨로 나와있는 것처럼 ‘ssh-rsa’로 시작하는 id_rsa.pub파일의 내용을 복사해서 붙이면 됩니다. vi ~/.ssh/id_rsa.pub을 하면 아주 긴 1line의 내용이 있으므로 cat ~/.ssh/id_rsa.pub을 통해 커맨드라인에 띄운 후 드래그해서 복사하면 됩니다.

3. ssh key 등록(gitlab)

gitlab로그인 -> Settings -> SSH Keys에 Title과 Key를 입력하면 됩니다. 위의 github과 마찬가지로 Title은 이름, Key에는 Public Key(~/.ssh/id_rsa.pub)를 입력하면 됩니다.

4. ssh config 설정

특정 서버에 특정 ssh key를 사용하고 싶을 경우 ~/.ssh/config에서 설정하면 됩니다. 저의 경우에는 github과 gitlab에 동시에 같은 ssh key를 사용하려고 합니다. github.com과 gitlab.com에 대하여 사용할 ssh key를 설정해줍니다.

Host github.com, gitlab.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
view raw ssh_config hosted with ❤ by GitHub
 

Comments

번호 제목 글쓴이 날짜 조회
72 과연 양방향매매로 수익낼 수가 있는가… 댓글+1 담운 2020.05.14 2068
71 [해외선물] 실시간 시세신청 안내-지… 담운 2020.05.11 639
70 해외선물 실시간 시세 무료로 볼 수 … 담운 2020.05.10 1083
69 DB금융투자, 수수료 혜택 등 해외선… 담운 2020.04.02 567
68 위험 고지 담운 2020.03.31 569
67 리스크 고지 담운 2020.03.11 552
66 해외선물 증거금 담운 2019.10.20 832
65 CME E-micro 담운 2019.10.20 824
64 파생상품 양도소득세 확정신고 안내 담운 2019.09.25 857
63 주식, 암호화폐, 해외주식 세금 비교 담운 2019.09.13 881
62 해외선물옵션 API 시세 유료화 정책… 담운 2019.08.28 1864
61 Github에 ssh키 생성하고 등록… 담운 2019.06.08 1195
60 github-white-logo-70… 담운 2019.06.08 1229
열람중 ssh-key 생성 및 github,… 담운 2019.06.08 1714
58 Git 서버 - SSH 공개키 만들기 담운 2019.06.08 1351
57 Nodejs로 구현한 서비스를 Caf… 담운 2019.06.08 3000
56 GitHub SSH 키 생성 및 등록… 담운 2019.06.08 1527
55 기타 Git 명령어(cherry-pi… 담운 2019.06.08 1017
54 Merge와 Rebase 담운 2019.06.08 1104
53 Git 브랜치(Branch) 관리 담운 2019.06.08 1339
52 Git commit 수정하기, dif… 담운 2019.06.08 1167
51 Github 사용하기, remote,… 담운 2019.06.08 1642
50 Git 저장소 생성(init), 최초… 담운 2019.06.08 1237
49 Git 설치와 사용법(Git Bash… 담운 2019.06.08 1298
48 node.js git 사용법 담운 2019.06.08 1454
47 Windows에서 git 및 node… 담운 2019.06.08 1387
46 Nodejs로 구현한 서비스를 Caf… 담운 2019.06.08 1250
45 Git 활용 (기본적인 사용법) 담운 2019.06.08 1258
44 cafe24 nodejs git 저장… 담운 2019.06.08 1865
43 카페24 node.js 접속준비 담운 2019.06.08 1804
42 cafe24 node.js git 사… 담운 2019.06.08 3433
41 GitHub - 소스트리(Source… 담운 2019.06.07 1824
40 Sourcetree 설치 가이드 담운 2019.06.07 1103
39 [Git] 소스트리 (SourceTr… 담운 2019.06.07 1395
38 GitLab 업무환경 구성 가이드 담운 2019.06.07 1339
37 Git :: 소스트리(SourceTr… 담운 2019.06.07 1261
36 cafe24 에서 nodejs hos… 담운 2019.06.06 1758
35 카페24 node.js 접속준비 담운 2019.06.06 2712
34 카페24에서 Node.js 서버로 A… 담운 2019.06.06 1466
33 ssh 키 인증 방식으로 로그인하기 담운 2019.06.06 1437