HTTPS & SSH protocol with Git
Git 저장소에 접근하는 주요 방법은 HTTPS와 SSH 두 가지가 있다.
우리가 clone할 때도 많이 봤을 것이다.

HTTPS
- 웹 브라우저에서 사용하는 것과 동일한 보안 프로토콜
- Git 서버와 통신할 때 사용자 이름과 비밀번호 또는 개인 접근 토큰(PAT)을 사용하여 인증
- 장점: 설정이 간단하고 방화벽 친화적입니다. 대부분의 환경에서 별도의 설정 없이 바로 사용가능
- 단점: 매번 인증 정보를 입력해야 할 수 있으며, SSH에 비해 속도가 느림
SSH
- SSH는 암호화된 네트워크 프로토콜
- 보안 키 쌍(개인 키와 공개 키)을 사용하여 인증다. 공개 키를 Git 서버에 등록하고, 개인 키를 로컬 시스템에 보관
- 장점: 보안성이 높고, 매번 인증 정보를 입력할 필요가 없어 편리하며, HTTPS에 비해 속도가 빠름
- 단점: SSH 키를 생성하고 서버에 등록하는 설정 과정이 필요하며, 일부 환경에서는 방화벽 설정이 필요
HTTPS와 SSH 차이점
특징 | HTTPS | SSH |
---|---|---|
인증 방식 | 사용자 이름/비밀번호 또는 PAT | SSH 키 쌍 (개인 키, 공개 키) |
보안 | SSL/TLS 암호화 | SSH 암호화 |
속도 | SSH보다 느릴 수 있음 | HTTPS보다 빠름 |
설정 | 간단 | 키 생성 및 등록 필요 |
편의성 | 매번 인증 정보 입력 필요할 수 있음 | 키 설정 후 인증 정보 입력 불필요 |
방화벽 친화성 | 높음 | 일부 환경에서 방화벽 설정 필요할 수 있음 |
Git Credential
Git Credential 설정은 Git이 사용자 인증 정보를 안전하게 저장하고 관리하도록 하는 기능
HTTPS를 사용할 때 매번 사용자 이름과 비밀번호를 입력하는 번거로움을 줄이고, 보안성을 높이기 위해 Credential 설정을 사용할 수 있다.
Git Credential 설정을 위해 여러가지 옵션이 있다.
1. cache helper
cache
helper는 인증 정보를 메모리에 임시로 저장하는 방법이다. 기본적으로 15분 동안 유효하며, 이 시간 내에는 인증 정보를 다시 입력할 필요가 없다.
git config --global credential.helper cache
더 긴 시간 동안 캐시를 유지하고 싶다면 --timeout
옵션을 사용하면 된다.(단위: 초).
git config --global credential.helper "cache --timeout=3600"
2. store helper
store
helper는 인증 정보를 일반 텍스트 파일 (~/.git-credentials
)에 저장한다. 간편하게 사용할 수 있지만, 보안에 취약할 수 있으므로 개인 환경에서만 사용하는 것이 좋다.
git config --global credential.helper store
이를 다른 위치에 저장하려면 --file
옵션을 사용하여 원하는 파일 경로를 지정해 주면 된다.
git config --global credential.helper "store --file ~/.my-git-credentials"
Reference
Git - Credential Storage
Given that git-credential-store and friends are separate programs from Git, it’s not much of a leap to realize that any program can be a Git credential helper. The helpers provided by Git cover many common use cases, but not all. For example, let’s say
git-scm.com
'알쓸신잡' 카테고리의 다른 글
vLLM 소개 및 설치 가이드 (0) | 2025.03.28 |
---|---|
Chrome 텍스트 커서 깜박임 오류 해결 가이드 (0) | 2025.03.27 |
OpenSource Contribute (0) | 2025.03.14 |
Vscode Local Port Forwarding (0) | 2025.03.07 |
ngrok 사용법 (0) | 2025.03.07 |