[Mac] GitHub push token 오류 해결

이현정·2022년 6월 9일
1

에러 탐험기

목록 보기
2/4
post-thumbnail

에러 발생

6/7 수 저녁, 갑자기 git push가 안 되는 현상을 겪었다. 오류의 첫 줄이 무슨 말이냐면 Password 인증방식이 일시적으로 brownout(shutdown?)되었다. Password 대신에 personal access token을 사용..

에러 해결

해결이 우선인 분들을 위해 내가 찾은 2가지 해결법을 소개한다:

📌 첫 번째 해결 방법: 토큰 설정

여기 블로그에 너무 잘 정리되어 있어서 그대로 따랐다.

+추가)

위의 방식대로해도 푸쉬 접근 문제 해결 안되서 다시 키체인을 열어봤더니(command + space를 누르고 keychain 을 검색하자)

github.com (Password not saved) 라고 되어있었다.

그래서 마우스 오른쪽 클릭 > 클립보드에 암호 복사하기 > 맥북 로그인 비번 입력 2번
하니 접근 권한이 완전히 설정되었다.

📌 두 번째 해결 방법: SSH 키 설정

두 번째 방법은 여기 블로그를 참고했다.

간단히 요약하면:
ssh 키를 설정하고(공개키), 공개키를 깃헙에 등록 후 > ssh 방식으로 git을 사용해주면 된다.

위 블로그에 자세한 방법이 너무 잘 정리되어 있으므로 설명 생략.

원인 분석

git 이 2021.8.13 을 이후로 인증 방식을 바꿨기 때문이었다.

내가 이해한 바에 따르면, 개인 컴퓨터(로컬)와 원격 저장소(깃헙)간의 통신을 할 때는 인증 작업이 이뤄지는데(이 사용자가 원격 저장소의 사용자가 맞는지), 기존에는 비밀번호를 설정해두고 입력하면 되는 비밀번호 인증 방식이었다.

그런데 비밀번호 인증 방식은 보안성이 떨어진다고 한다. 그래서2021년 비밀번호 인증에서 더 안전한 인증 방식들로 바꿨다고.

📌 깃에서 제공하는 2가지 인증 방식: 토큰 vs. SSH 키

둘의 차이는 뭐고 뭐가 더 좋지?

스택오버 플로우에 따르면 보안성 순서토큰 > SSH > 비밀번호 인증 방식 순인 듯하다.

ssh 는 읽기 전용 또는 읽기-쓰기만 가능하고 한정된 레포지토리만 가능한 반면 토큰은 허용 방식이 더 잘 정리되어 있다(고 하는데 솔직히 지금 단계에서는 다 이해 안된다.)

깃에서는 이러한 이유로 ssh키보다 토큰 사용을 더 권장한다고 한다.

에러에서 배운 것

  • ssh 에 대해 알게되었다.

    SSH(Secure Shell)원격 컴퓨터에 안전하게 엑세스하기 위한 유닉스 기반의 명령 인터페이스 및 프로토콜. 강력한 암호화 기능을 구현해 모든 데이터가 암호화 되기에 높은 보안을 지원 포트 22 사용. 클라이언트 인증도 필요하다.

  • 다른 인증 방식들에 대해 궁금해지는 계기가 되었다.

    1) 인증 방식의 종류이 비밀번호, 토큰, ssh 이정도가 다인가? 더 있나?

    2) 프로토콜 방식: HTTPS 방식 vs. SSH 방식도 찾다보니 나왔는데 이건 뭐지?

    3) 1)과 2)는 어떤 관계?

    나중 포스팅에서 인증방식들의 종류와 차이, 장단점에 대해 정리해 봐야겠다.

참고 및 출처

토큰으로 해결 방법 > https://hyeo-noo.tistory.com/184
ssh로 해결 방법 > https://hankyeolk.github.io/2021/08/15/githubSSH.html
토큰 vs. ssh > 스택오버플로우
다른 인증 방식들 > https://algoroot.tistory.com/16

2개의 댓글

ㅋㅋ해결한거 보니 뿌듯하네요!

1개의 답글