git bash로 ssh 생성하기

2022. 10. 4. 16:13

github page는 일반적으로 static한 화면을 보여주기 때문에 일반적으로는 ssh가 딱히 필요가 없다.

굳이 쓰려면 github의 id/pw 없이 push하기..?

 

deeplink를 사용하려면 ssh가 꼭 필요하다는 슬픈 사실..😥

 

1. ssh key 생성하기🆕

실행은 git bash에서!

ssh-keygen -t ed25519 -C "YOUR_EMAIL@HOST.COM"

 

두번째 argv로 있는 ed25519는 key의 암호화 방식을 의미한다.

이 속성 말고도 RSA라는 오래된 방식도 있는데, 암호학이 뭔지도 모르겠고.. 두 방식의 차이는 이렇다.

ed25519방식이 rsa에 비해 속도도 빠르고, 파일크기도 작고, 공개 키/개인키도 작다. (공개키는 400 bytes : 100 byes 정도)

 

그러니 ed25519가 지원된다면 해당 방식을 사용하고, 그렇지 않다면 RSA를 사용하면 된다.

 

ssh-keygen -t rsa -b 4096 -C "YOUR_EMAIL@HOST.COM"

 

실행하고 나면 key나 복호구문같이 뭘 많이 물어보는데 그냥 엔터치고 다 넘어가면 된다.

 

2. ssh-agent에 ssh 등록하기🪢

ssh-agent없어도 ssh로 원격 접속이 가능하다.

다만 이러면 매번 ssh 비밀번호를 매번 입력을 해줘야하는데..

ssh 없이도 아이디나 비밀번호를 입력해줘야하는데 이러면 굳이 ssh를 쓸 필요가 있을까..?

웬만하면 ssh-agent를 써주는게 좋다는 뜻!

 

eval "$(ssh-agent -s)"

 

이 다음으로 ssh-agent에 ssh 개인키를 추가해주는 작업을 해줘야하는데,

넣기 위해서 config 파일 설정을 바꿔줘야한다.

 

vim ~/.ssh/config
Host *
  AddKeysToAgent yes
  UseKeychain yes
  IdentityFile ~/.ssh/id_ed25519

 

vim으로 config 파일에 설정을 추가해주자!

vim에 파일을 쓰기 위해선 i를 입력해주면 넣을 수 있고, 저장을 위해선 !wq를 입력한다.

(만약, 저장이 안된다면 git bash를 관리자 모드로 실행해보자!)

 

3. Github Repo에 ssh key를 넣어주기🗝️

pbcopy < ~/.ssh/id_ed25510.pub

키를 복사해준다.

 

이어서 내 github profile의 [setting]-[SSH and GPG keys]에서 넣어주면 된다.

 

[New SSH key] 버튼을 눌러서 입력을 해줍시다.

 

타이틀에는 목적에 맞게 넣어주면 되고,

아까 복사했던 값을 Key안의 내용에 넣어준 뒤, [Add SSH Key]를 눌러서 등록한다.

입력 하기 전에 암호를 입력해줘야하는데 이 암호는 자신의 github 비밀번호를 넣어주면 끝!

 

이제 git page에 ssh가 넣어졌기 때문에 deeplink를 사용할 수 있다.

클라이언트의 환경에 따라서 플랫폼에서 생성된 deeplink로 강제로 이동시켜주자.

 

일단 내 앱에서는 잘 되는 듯!

 

가지고 있는 핸드폰으로 아래에 접속 한뒤, 상단 우측에 있는 Link With MetaMask를 눌러보면 설치된 메타마스크가 자동 실행 되는 걸 볼 수 있다.

(2022.10.04 - 미디어 쿼리나 callback으로 주소로 바꿔주는 함수는 해당 콜백에 아직 반영이 안된 상태라 아무일도 일어나지 않는 게 맞다.)

 

https://howdyfrom2019.github.io/mintty/doc/en

 

Mintty

The Littest And Easiest NFT Guide.

howdyfrom2019.github.io

 


 

그럼 이만!

여담으로 모바일에서 뭐가 되는건지 디버깅이 참 힘들다..ㅠㅠ 내 콘솔 어디갔어