반응형
Bitbucket에서 **Repository에 SSH Key(Deploy Key)**를 설정하는 방법은 다음과 같습니다.
이 기능은 일반적으로 배포 서버나 자동화 시스템이 특정 리포지토리에만 접근하도록 제한하고 싶을 때 사용합니다.
1. 목적
- 특정 서버 또는 스크립트가 repository에 read-only 또는 read/write로 접근하도록 허용
- 사용자는 개인 계정 키를 사용하지 않음 (보안 강화를 위해)
2. 설정 순서
1. SSH 키 생성 (서버에서)
배포 서버나 자동화 시스템에서 SSH 키를 생성합니다:
ssh-keygen -t rsa -b 4096 -f ~/.ssh/deploy_key_repo_xxx
- deploy_key_repo_xxx = 개인 키
- deploy_key_repo_xxx.pub = 공개 키 (이걸 Bitbucket에 등록)
- ⚠️ 비밀번호 없이 생성하는 것이 일반적입니다 (자동화 목적이므로).
2. Bitbucket에서 Repository에 SSH Key 등록
- Bitbucket 웹사이트 접속
- 해당 리포지토리로 이동
- 왼쪽 메뉴에서 Repository settings 클릭
- Access keys 클릭
- Add key 버튼 클릭
- 다음 항목 입력:
- Label: 키 설명 (예: "Deploy server A")
- Key: 위에서 만든 deploy_key_repo_xxx.pub의 내용 복사
3. 배포 서버에서 .ssh/config 설정 (선택)
서버에서 이 키를 사용할 수 있도록 SSH 설정을 추가합니다:
Host bitbucket-deploy-repo-x
HostName bitbucket.org
User git
IdentityFile ~/.ssh/deploy_key_repo_xxx
IdentitiesOnly yes
4. Git clone 시 Host alias 사용
git clone git@bitbucket-deploy-repo-x:<workspace>/<repository>.git
이렇게 하면 다른 키와 충돌 없이 이 리포지토리에만 이 SSH 키를 사용할 수 있습니다.
3. 주의사항
항목 설명
Access(Deploy) Key는 리포지토리 단위 | 다른 리포지토리에서는 재사용 가능 (Bitbucket 기준, not cloud) |
하나의 키는 하나의 리포에만 등록 가능 | 같은 키를 여러 리포에 재사용하려면 Workspace 수준 Key 필요 |
보안 | 반드시 배포용 서버 전용 키를 사용하고, 개인 키와 혼용하지 말 것 |
반응형
'개발 도구 > Bitbucket' 카테고리의 다른 글
[ Bitbucket ] workspace, project, repository의 의미와 역활 (1) | 2025.07.13 |
---|---|
[ Bitbucket ] Access Key와 Access Token의 차이는? (0) | 2025.07.13 |
[ Bitbucket ] SSH keys 설정 위치 (0) | 2025.07.13 |
[ Bitbucket ] 다양한 Pipeline 설정하기 (0) | 2025.07.12 |
[ Bitbucket ] Pipeline 설정하기 (0) | 2025.07.12 |