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

정보/뉴스

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

담운 0 1,719 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 2086
71 [해외선물] 실시간 시세신청 안내-지… 담운 2020.05.11 646
70 해외선물 실시간 시세 무료로 볼 수 … 담운 2020.05.10 1090
69 DB금융투자, 수수료 혜택 등 해외선… 담운 2020.04.02 575
68 위험 고지 담운 2020.03.31 574
67 리스크 고지 담운 2020.03.11 557
66 해외선물 증거금 담운 2019.10.20 843
65 CME E-micro 담운 2019.10.20 827
64 파생상품 양도소득세 확정신고 안내 담운 2019.09.25 863
63 주식, 암호화폐, 해외주식 세금 비교 담운 2019.09.13 886
62 해외선물옵션 API 시세 유료화 정책… 담운 2019.08.28 1873
61 Github에 ssh키 생성하고 등록… 담운 2019.06.08 1200
60 github-white-logo-70… 담운 2019.06.08 1233
열람중 ssh-key 생성 및 github,… 담운 2019.06.08 1720
58 Git 서버 - SSH 공개키 만들기 담운 2019.06.08 1367
57 Nodejs로 구현한 서비스를 Caf… 담운 2019.06.08 3028
56 GitHub SSH 키 생성 및 등록… 담운 2019.06.08 1537
55 기타 Git 명령어(cherry-pi… 담운 2019.06.08 1020
54 Merge와 Rebase 담운 2019.06.08 1112
53 Git 브랜치(Branch) 관리 담운 2019.06.08 1344
52 Git commit 수정하기, dif… 담운 2019.06.08 1173
51 Github 사용하기, remote,… 담운 2019.06.08 1646
50 Git 저장소 생성(init), 최초… 담운 2019.06.08 1250
49 Git 설치와 사용법(Git Bash… 담운 2019.06.08 1306
48 node.js git 사용법 담운 2019.06.08 1460
47 Windows에서 git 및 node… 담운 2019.06.08 1394
46 Nodejs로 구현한 서비스를 Caf… 담운 2019.06.08 1265
45 Git 활용 (기본적인 사용법) 담운 2019.06.08 1265
44 cafe24 nodejs git 저장… 담운 2019.06.08 1873
43 카페24 node.js 접속준비 담운 2019.06.08 1814
42 cafe24 node.js git 사… 담운 2019.06.08 3448
41 GitHub - 소스트리(Source… 담운 2019.06.07 1831
40 Sourcetree 설치 가이드 담운 2019.06.07 1114
39 [Git] 소스트리 (SourceTr… 담운 2019.06.07 1402
38 GitLab 업무환경 구성 가이드 담운 2019.06.07 1347
37 Git :: 소스트리(SourceTr… 담운 2019.06.07 1269
36 cafe24 에서 nodejs hos… 담운 2019.06.06 1767
35 카페24 node.js 접속준비 담운 2019.06.06 2725
34 카페24에서 Node.js 서버로 A… 담운 2019.06.06 1484
33 ssh 키 인증 방식으로 로그인하기 담운 2019.06.06 1449