Development/Environment

Obsidian에서 Git 플러그인 사용 시 SSH 키 암호 문제 해결하기 (macOS 환경)

고고마코드 2024. 12. 27. 09:11
반응형

Obsidian에서 Git 플러그인을 활용할 때, SSH 키에 암호가 설정되어 있다면 매번 암호 입력을 요구하거나 플러그인이 정상적으로 작동하지 않을 수 있습니다. 이 문제는 SSH 에이전트와 macOS 키체인을 활용하여 간단히 해결할 수 있습니다. 아래는 이를 설정하는 방법을 단계별로 정리한 가이드입니다.


1. SSH 에이전트 실행 및 SSH 키 추가

SSH 에이전트는 SSH 키를 메모리에 저장하고, 이후 Git 작업에서 암호를 다시 입력하지 않도록 도와줍니다.

(1) SSH 에이전트 실행

터미널에서 아래 명령어를 실행합니다:

eval "$(ssh-agent -s)"
실행 결과로 Agent pid가 출력되면 SSH 에이전트가 활성화된 상태입니다.

(2) SSH 키를 SSH 에이전트에 추가

SSH 키를 에이전트에 추가하고 암호를 입력합니다:

ssh-add ~/.ssh/your_key_file
your_key_file는 사용하는 SSH 키 파일 이름(예: id_rsa)입니다.


2. SSH 키를 macOS 키체인에 저장

macOS 키체인에 SSH 키를 추가하면 재부팅 후에도 SSH 에이전트가 키를 기억합니다.

(1) 키체인에 SSH 키 추가

다음 명령어를 실행하여 키체인에 SSH 키를 추가합니다:

ssh-add --apple-use-keychain ~/.ssh/your_key_file

(2) SSH 에이전트와 키체인을 연동

~/.ssh/config 파일을 수정하거나 새로 생성합니다:

Host *
    AddKeysToAgent yes
    UseKeychain yes
    IdentityFile ~/.ssh/your_key_file

이 설정은 모든 SSH 연결에서 SSH 에이전트와 키체인을 사용하도록 지정합니다.


3. Obsidian Git 플러그인 설정 확인

Obsidian Git 플러그인이 SSH를 사용하도록 설정되어 있는지 확인합니다.

(1) .git/config 파일 확인

Git 저장소의 .git/config 파일에서 원격 저장소 URL이 SSH 형식인지 확인합니다:

[remote "origin"]
    url = git@github.com:username/repository.git

HTTPS URL로 설정되어 있다면 위와 같이 SSH URL로 변경합니다.

(2) Obsidian Git 플러그인 설정

Obsidian의 Git 플러그인은 터미널 환경을 상속받기 때문에, SSH 에이전트가 활성화되어 있다면 추가 암호 입력 없이 동작해야 합니다.


4. 터미널 세션 없이 SSH 에이전트 유지 (선택 사항)

macOS에서 SSH 에이전트를 자동으로 활성화하여 매번 설정하지 않도록 구성할 수 있습니다.

(1) 로그인 시 SSH 에이전트 활성화

~/.zshrc 또는 ~/.bash_profile 파일에 아래 코드를 추가합니다:

eval "$(ssh-agent -s)"
ssh-add --apple-use-keychain ~/.ssh/your_key_file

(2) 자동 추가 확인

로그인 후 ssh-add -l 명령어를 실행하여 SSH 키가 자동으로 로드되었는지 확인합니다.

반응형