약칭
[ssh 서버]
- 최소한 openssh-server 패키지가 설치되어 있어야 함
- ssh 데몬이 돌아가는 쪽
[ssh 클라이언트]
- 최소한 openssh-clients 패키지가 설치되어 있어야 함
- ssh 클라이언트를 이용하여 ssh 서버로 접속을 시도하는 쪽
*주의1)
설정 작업은 ssh 클라이언트에서
하는것 좋음.
이유는 ssh 클라이언트에 반드시 개인키가 반드시 있어야
하므로
굳지 ssh 서버에서 개인키를 만들어 ssh 클라이언트로 전송할
필요는 없기 때문(나중에 public키만 ssh 서버로 전송함)
1. SSH2 DSA 키 만들기
[user @clinets]$ ssh-keygen -b 1024 -t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/home/user/.ssh/id_dsa): [ENTER]
Enter passphrase (empty for no passphrase): 암호구문
Enter same passphrase again: 암호구문
...
[user @clinets]$
*주의2)
'암호구문'는 현재 ssh 서버나 클라이언트에서
사용하고 있는
계정(사용자) 암호가 아니고, 별개의 새로운 암호이다.
이 '암호구문'과 나중에 생성된 두개의 키 파일을 이용해서
ssh 서버에 접속할 뿐이다.
만약 암호없이 접근하려면 '암호구문' 구문에 그냥 [ENTER]를
입력하면 된다.
*주의3)
암호키 파일중에서 개인키는 절대적으로 중요하므로 이
파일만
유출되지 않는다면, 설상 '암호구문'이 유출되었다고
하더라고 결정적인 개인키가 없음로 '암호구문' 만으로 접근할
수 없다.
2. 확인
[user @clinets]$ cd .ssh
[user @clinets]$ ls
id_dsa id_dsa.pub known_hosts
[user @clinets]$
3. public키를 ssh 서버로 전송
[user @clinets]$ scp id_dsa.pub ruser@ssh.server:.ssh/authorized_keys2
*ruser는 ssh 서버의 계정 ID
*ssh.server 는 ssh 서버의 호스트이름이나
IP 주소
*오타주의)
authorized_key (X)
authorized_key2 (X)
authorized_keys (X) SSH1
authorized_keys2 (O)
4. 접속 테스트
[user @clinets]$ ssh rsuer@ssh.server
Enter passphrase for key '/home/user/.ssh/id_dsa': 암호구문 입력
ruser@ssh.server's password: <--
이렇게 나오면 잘못된 설정
-----------------------
SSH v1
- RSA(public key) : identity.pub --> remote:$HOME/.ssh/authorized_keys
- RSA(private key) : local:$HOME/.ssh/identity
SSH v2
- RSA(public key) : id_rsa.pub --> remote:$HOME/.ssh/authorized_keys
- RSA(private key) : local:$HOME/.ssh/id_rsa
- DSA(public key) : id_dsa.pub --> remote:$HOME/.ssh/authorized_keys
- DSA(private key) : local:$HOME/.ssh/id_dsa
|