ssh를 사용하면서 가장 귀찮은 것 중 하나가 비밀번호 입력이다.
물론 대부분의 사람들이 해킹당하면 변명의 여지조차 없는 비밀번호를 즐겨 사용하는 것은 맞지만
그래도 형식상으로는 입력해줘야 하니까.
다행(?)스럽게도, 바로 전 글의 ssh 서버에 닉네임 붙여 사용하는 법과 함께 적용하면
비밀번호 입력 없이 한 번에 ssh 접속을 할 수 있게 하는 설정 방법이 있다.
쉽게 말해서 연구실에 출입 카드를 찍고 드나드는 느낌인데
해당 출입 카드를 내 로컬 PC에 저장해 놓는다는 컨셉이다.
아래와 같은 명령어로 출입 카드를 만들 수 있다.
$ ssh-keygen -t rsa -b 2048
이는 RSA 타입의 2048비트 키를 만들겠다는 의미이다.
우리가 원하는 것은 보안을 희생한 일방적인 편의성이기 때문에, 뒤에 몇 가지를 물어보면 엔터로 일관해주면 된다.
해당 명령어의 실행을 마치면 .ssh 폴더 아래에 id_rsa와 id_rsa.pub라는 파일 두 개가 생긴다.
여기서 id_rsa.pub라는 파일이 내 신원 정보를 가지고 있고, id_rsa가 내 출입 카드라고 생각하면 된다.
당연히 id_rsa는 나만 가지고 있어야 한다.
출입 카드를 사용하려면 내 신원 정보를 서버에 등록할 필요가 있다.
사실 id_rsa.pub 파일은 그냥 텍스트이기 때문에
해당 내용을 서버의 어딘가에 잘 붙여 넣으면 등록이 완료된다.
하지만 이는 굉장히 번거로운 작업이기에 아래 명령어로 한 번에 처리하도록 하자.
$ ssh-copy-id [닉네임]
# 혹은,
$ ssh-copy-id -p [Port 번호] [사용자 이름]@[IP 주소 혹은 도메인]
해당 명령어를 입력하면 .
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: - key(s) remain to be installed -- if you are prompted now it is to install the new keys
같은 내용이 나오며 비밀번호를 입력하라고 하는데,
이전에 서버 접속을 위해 사용하던 비밀번호를 입력하면 신원 등록이 완료된다.
이제
$ ssh [닉네임]
으로 비밀번호 입력마저 없이 한 번에 서버에 접속할 수 있다.
여담으로 접속한 서버에서
$ vi ~/.ssh/authorized_keys
로 파일을 열어보면, 내 id_rsa.pub의 내용이 잘 복사되어 있는 것을 확인 할 수 있다.
'잡기술 > Ubuntu' 카테고리의 다른 글
터미널에서 함수 사용하기 (0) | 2021.04.24 |
---|---|
우분투 파일에서 특정 단어 찾기 - grep (0) | 2021.04.24 |
우분투 터미널 출력 로그 파일로 저장하기 - tee (0) | 2021.04.24 |
매트랩 MATLAB 코드와 함수 터미널에서 실행하기 (0) | 2021.04.23 |
SSH 쉽게 사용하기 (1) - .ssh/config (0) | 2021.04.23 |