ssh 연결할 때 마다 패스워드 입력으로 불편하면서도 유출되거나 유추될까봐 항상 걱정이 든다. 이럴 때 ssh key 를 이용해 보안도 유지하고 패스워드 입력없이 빠르게 로그인해 들어갈 수 있으니 이를 간단하게 정리한다. private key/public key에 대한 개념이 근간에 있기는 하나 깊은 이해없이 단순히 아래와 같이 사용하면 빠르게 적용해 볼 수 있다.
ssh-keygen
cat id_rsa.pub
출력된 내용을 서버에 등록할 수 있도록 전달 또는 아래와 같은 명령어로 자동등록
ssh-copy-id username@server_ip
openssh-server 설치
sudo apt-get install openssh-server
sudo vi /etc/ssh/sshd_config
다음과 같이 파일의 내용 수정
PasswordAuthentication no
PubkeyAuthentication yes
sshd 재시작
sudo systemctl restart sshd
전달받은 public키를 등록
vi ~/.ssh/authorized_keys
혹시나 public키가 유출됐을 것 같거나 보안상 바꿔야겠다면 클라이언트쪽에서 ssh-key를 다시 실행해서 새 키를 만들어 서버의 authorized_keys 파일에 다시 적용하면 보다 안전하게 이용할 수 있다.