▷ SSH는 secure shell의 줄임말로 보안이 강화된 안전한 방법으로 정보 교환 하는 방식
▷ 기본적으로 프라이빗 키(사용자 컴퓨터만 저장)와 퍼블릭 키(외부 공개)를 한 쌍으로 묶어서 컴퓨터를 인증
▷ 사용자 컴퓨터에서 SSH 키 생성기를 실행하면 프라이빗 키와 퍼블릭 키가 만들어집니다.
▷원격 저장소에 파일 올리는 등 작업을 하려면 ID, PW 를 입력해 깃허브에게 자신이 해당 저장소를 만든 주인임을 인증해야 합니다.
▷이에 비해 SSH 원격 접속은프라이빗 키와 퍼블릭 키를 이용해 사용하는 기기를 깃허브에 인증하는 방식입니다.
▷서브 환경에서 깃허브 저장소에 접속해야 한다면 서버 자체를 깃허브에 등록하고 개인 노트북이라면 노트북을 등록
▶터미널 창에서 따로 인증하지 않아도 깃허브에 접속할 수 있습니다.
▷터미널 창에서 깃허브를 사용하다 보면 ID와 PW를 요구하는 경우가 많은데,
SSH 접속 방법을 사용하면자동 로그인기능을 통해 번거로움을 줄일 수 있습니다.
◎ SSH 키 생성하기
secure shell : SSH → 보안 원격 접속 SSH 접속을 위한 SSH 키 생성
퍼블릭키 : 문서의 내용을 암호화 프라이빗키 : 암호화된 문서를 복호화
ssh-keygen으로 SSH 키를 생성합니다.
id_rsa 파일 : 비밀키(프라이빗) : 절대 공유 금지 id_rsa.pub 파일 : 공개키(퍼블릭) → 깃허브 서버에 공개키 등록
◎ 참고사항 : 다르게 키 생성하는 방법 ed25519 알고리즘을 사용하는 SSH키 생성 ssh-keygen -t ed25519 -C "your_email@example.com"
◎ 깃 허브에 퍼블릭 키 전송하기
1. SSH로 접속하려면 우선 만들어 놓은 퍼블릭 키를 깃허브에 올려야 합니다. $ cat id_rsa.pub을 통해 나타난 것을 복사합니다.
이때, $ clip < ~/.ssh/id_rsa.pub를 해줘야 아래의 key에 등록할 수 있습니다.
2. 깃 허브 접속 후 로그인 → 화면 오른쪽 위 사용자 아이콘의 [setting] → [SSH and GPG keys]를 선택 → [New SSH key] 클릭 → 아래와 같은 형식에 TITLE을 붙이고 아까 복사했던 Key 값을 넣습니다.(SSH에는 퍼블릭 키를 여러개 등록할 수 있습니다.) → [Add SSH key]로 등록
3. 퍼블릭 키를 추가할 때 비밀번호 확인, 깃 허브 비밀번호 입력 후 [confirm password] 클릭 4. 만들었던 SSH 퍼블릭 키는 깃허브 서버에 올라가고 깃허브 저장소의 SSH 주소만 알면 따로 로그인 정보를 입력하지 않고도 깃허브 저장소에 접속할 수 있습니다.
◎ SSH 주소로 원격 저장소 연결하기
1. 깃허브에 새로운 원격 저장소를 만듭니다. ▷ 깃허브 화면 오른쪽 위에 있는 + 클릭 후 [New repository] 선택, 저장소 이름을 입력한 후 [Create repository]를 클릭해 저장소를 만듭니다.(test-2)
2. 저장소가 만들어지면 기본적으로 HTTPS 주소가 나타나고 SSH를 클릭해 SSH 주소를 표시하고 SSH 주소를 복사
3. 퍼블릭 키도 추가했고 SSH 주소도 알아냈으니 지역 저장소를 연결할 수 있음. ▷ 새로운 지역 저장소를 만듬(connect-ssh) 그리고 디렉터리로 이동 ▷ 새로운 파일도 생성하고 커밋 합니다.
▷ $ git remote -v를 통해 어떤 원격 저장소가 연결되었는지 확인 할 수 있습니다.