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

정보/뉴스

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

담운 0 1,721 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 cafe24 node.js git 사… 담운 2019.06.08 3448
71 Nodejs로 구현한 서비스를 Caf… 담운 2019.06.08 3029
70 카페24 node.js 접속준비 담운 2019.06.06 2726
69 cafe24 node.js호스팅 (완… 담운 2019.06.06 2287
68 과연 양방향매매로 수익낼 수가 있는가… 댓글+1 담운 2020.05.14 2090
67 주식자동매매 프로그램 환불요청 담운 2019.04.17 1949
66 cafe24 nodejs git 저장… 담운 2019.06.08 1875
65 해외선물옵션 API 시세 유료화 정책… 담운 2019.08.28 1875
64 Cafe24 node.js 호스팅 담운 2019.06.06 1844
63 GitHub - 소스트리(Source… 담운 2019.06.07 1832
62 카페24 node.js 접속준비 담운 2019.06.08 1814
61 cafe24 에서 nodejs hos… 담운 2019.06.06 1769
60 월 승률 90% 올리는 사람이, 수익… 담운 2019.04.28 1738
59 PuTTY 로 비밀번호 없이 ssh … 담운 2019.06.05 1729
열람중 ssh-key 생성 및 github,… 담운 2019.06.08 1722
57 Github 사용하기, remote,… 담운 2019.06.08 1646
56 불법거래 유형 담운 2018.08.31 1590
55 Generate a Public/Pr… 담운 2019.06.06 1584
54 [리눅스] ssh-key를 생성하여 … 담운 2019.06.06 1544
53 GitHub SSH 키 생성 및 등록… 담운 2019.06.08 1539
52 PuTTY를 사용하여 SSH 키 쌍 … 담운 2019.06.05 1489
51 카페24에서 Node.js 서버로 A… 담운 2019.06.06 1486
50 아마존( Amazon ) AWS 윈도… 담운 2019.06.05 1485
49 주가지수 관련 모든 파생상품에 양도세… 담운 2019.01.08 1466
48 node.js git 사용법 담운 2019.06.08 1461
47 해외선물거래의 장점과 특징을 알아보자 담운 2019.05.19 1453
46 ssh 키 인증 방식으로 로그인하기 담운 2019.06.06 1451
45 pem을 .ppk로 변환하기 담운 2019.06.06 1442
44 [AWS] EC2 인스턴스 Putty… 담운 2019.06.06 1414
43 [Git] 소스트리 (SourceTr… 담운 2019.06.07 1402
42 Windows에서 git 및 node… 담운 2019.06.08 1395
41 이베스트 투자증권은 담운 2019.04.14 1372
40 해외파생상품 장중 반대매매(Cash … 담운 2019.04.27 1371
39 Git 서버 - SSH 공개키 만들기 담운 2019.06.08 1368
38 Github와 로컬 환경 설정 담운 2019.06.05 1362
37 Converting SSH keys … 담운 2019.06.06 1359
36 GitLab 업무환경 구성 가이드 담운 2019.06.07 1348
35 모의투자 안내 담운 2019.01.22 1346
34 Git 브랜치(Branch) 관리 담운 2019.06.08 1345
33 입출금/환전안내 담운 2019.04.27 1326