linux에서 다른 계정에 접속할때 주로 사용하는 ssh에서 패스워드 없이 로그인이 되도록 설정하는 방법입니다.

다음은 pound (username:ezra) 가 eliot (usename:tom) 에 접속하는 과정을 패스워드없이 설정되도록 하는 방법입니다.

1. pound에서 ssh authentication key를 만들어야 합니다.

$ssh-keygen -t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/home/ezra/.ssh/id_dsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/ezra/.ssh/id_dsa.
Your public key has been saved in /home/ezra/.ssh/id_dsa.pub.
The key fingerprint is:
30:a5:15:13:3f:30:d6:ba:3e:71:c4:a2:19:93:19:0d ezra@pound

엔터키를 눌러서 키값이 기본 위치에 저장되도록 합시다. 기본값 대로라면 private key는 ~/.ssh/id_dsa에 저장되고 public key는 ~/.ssh/id_dsa.pub 에 저장됩니다.

2. 다음은 public key를 pound에서 eliot으로 전송해야 합니다.(private key가 아님) public-key를 복사하는 방법은 다음의 명령으로 간단하게 수행될 수 있습니다.

$ssh-copy-id -i ~/.ssh/id_dsa.pub tom@192.168.0.25

이제 ssh 'tom@192.168.0.25' 로 접속한 다음, .ssh/authorized_keys 파일을 보고 혹시나~ 우리가 추가하지 않은 값이 추가되어 있는지 검사해봅니다.

3. 자 이제 pound에서 eliot으로 접속해봅시다.

$ ssh tom@192.168.0.25
Linux eliot 2.6.12-10-386 #1 Mon Jan 16 17:18:08 UTC 2006 i686 GNU/Linux
Last Login: Mon Feb 6 22:40:31 2006 from 192.168.0.15

자 이제 우리가 기대한대로 패스워드를 물어보지 않는지 확인해봅니다.

참고 : Linux Phrasebook - Scott Granneman
Posted by kkckc
,