구글링한 많은 포스팅에서는 Master/Client라는 용어를 사용하였으나 헷갈려서 사용하지 않았음.
아래 표 순서로 작업 진행.
패스워드를 입력하던 시스템 | 접속 대상 시스템 |
rsa 혹은 dsa 암호화 방식 key를 생성 | |
생성된 키의 .pub 파일을 접속 대상 시스템으로 전송 | |
.pub 파일 내용을 authorized_keys 파일에 추가 (방법에 따라 B서버에 접속하여 작업할 필요가 없음) |
|
ssh 등의 명령어로 암호 없이 접속 되는지 확인 |
$ cd ~/.ssh
$ ssh-keygen -t rsa
Enter file in which to save the key (/root/.ssh/id_rsa): # enter입력
Enter passphrase (empty for no passphrase): # enter입력
Enter same passphrase again: # enter입력
rsa 암호화 방식의 공개키를 생성한다.
id_rsa와 id_rsa.pub라는 파일이 생성된다.
$ ssh-copy-id -i id_rsa.pub '-p 포트번호 계정@B서버ip'
$ ssh-copy-id -i id_rsa.pub 계정@B서버ip # B서버 ssh 포트가 22번일 경우 -p 옵션 생략 가능
위 명령어로 공개키를 접속 대상 서버의 authorized_keys 파일에 바로 편집해 넣을 수 있다.
다른 방법은 파일을 직접 전송 후에 B서버에서 홈디렉토리/.ssh/authorized_keys 파일에 직접 pub 파일 내용 전체를 복사해 붙여넣는 것이다(맨 밑줄에 추가).
위 작업 후에도 패스워드를 물어보는 경우 확인 사항
/etc/ssh/sshd_config 파일 확인
...(생략)
26 HostKey /etc/ssh/ssh_host_rsa_key
27 HostKey /etc/ssh/ssh_host_dsa_key
...(생략)
64 PasswordAuthentication yes
위 라인들에 주석처리가 되어 있지 않은지 확인.
수정 후엔 sshd 서비스를 restart 한다.
B서버의 .ssh 디렉토리 권한
권한이 700인지 확인한다.
/etc/ssh/ssh_host_rsa_key 파일 확인
거의 발생하지 않는 경우.
위 파일 및 같은 경로의 .pub 파일 내용이 ssh-keygen 명령어로 생성한 파일들과 같은지 확인한다.
(여러번 생성한 경우 몇가지 원인에 따라 다를 수 있으므로 같도록 수동으로 편집)
dsa 암호화 방식 고려
거의 발생하지 않는 경우.
OS에 따라 rsa 암호화 방식으로는 불가능한 경우가 있다고 한다.
'서버&시스템 > Linux' 카테고리의 다른 글
리눅스 tomcat 서비스에 등록 (0) | 2013.02.13 |
---|---|
명령어를 서비스에 등록하는 방법 (0) | 2013.02.07 |
yum 실행 시 Error: rpmdb open failed (1) | 2013.01.09 |
rsync 원격 서버 백업 설정 (0) | 2012.11.16 |
vsftpd 설치, 설정 (0) | 2012.11.16 |