본문 바로가기

Server/Ubuntu

[펌] ssh-keygen -t rsa

ssh-keygen 후 키 복사 방법으로 편한게 있어서 내용 발췌 함.



암호를 물어보는 과정을 거치지 않게 인증키를 사용하는 방법이 있다. 주의할 점은 authorized_keys는 폴더가 아니라 파일이라는 점이다. id_rsa.pub 안의 내용을 authorized_keys 파일에 붙여 넣으면 된다. 영어로 잘 나와 있는 설명은 SSHOpenSSHKeys 다.

나도 설명을 하겠다. 나는 영어 설명을 기준으로 한다.

일단 상황을 가정하자. 나는 Server 컴퓨터에서 Target 컴퓨터로 파일을 전송하는 스크립트를 만들려고 한다. Server에 있는 파일들을 백업한 다음 전송하는 스크립트다. (Target 컴퓨터의 IP는 192.168.0.100 이고, url은 mytarget.local 이라고 하자. 로그인 이름은 mytory다.)

이 경우 일단 Server 컴퓨터에서 다음 명령을 실행한다.

mkdir ~/.ssh chmod 700 ~/.ssh ssh-keygen -t rsa

.ssh 폴더에는 중요한 정보가 저장되므로 반드시 퍼미션을 700으로 해 줘야 한다.

ssh-keygen -t rsa 명령을 실행하면, 아래 질문들이 나오는데, 그냥 다 엔터치는 게 제일 속편하다.

Generating public/private rsa key pair. 
Enter file in which to save the key (/home/b/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/b/.ssh/id_rsa.
Your public key has been saved in /home/b/.ssh/id_rsa.pub.

패스프레이즈는 암호키를 여는 암호인 듯하다. 이걸 입력해 주면 연결할 때 또 암호를 입력하게 되므로 그냥 아무것도 입력하지 않는다. 그러면 어떤 보안 문제가 생기는지는 잘 모르겠다.

여튼 다 엔터치고 나면 Server 컴퓨터에 개인키와 공개키가 생성된다. 그러면 이제 공개키를 Target 컴퓨터에 심어야 한다.

이를 위해 아래 명령어를 입력한다.

ssh-copy-id mytory@192.168.0.100

이렇게 하면 Target 컴퓨터의 /home/.ssh 폴더에 authorized_keys 라는 파일이 생기고 공개키가 복사된다.

이러면 모두 끝! 이제 Server 컴퓨터에서 Target 컴퓨터에 ssh 접속을 할 때나, scp 명령을 쓸 때나 암호를 묻지 않게 된다.


 

'Server > Ubuntu' 카테고리의 다른 글

apt-get으로 sun-java 를 설치하고자 할 경우  (0) 2012.11.06
add-apt-repository를 사용할 수 없을때  (0) 2012.11.06
linux hdd 읽기 속도 확인.  (0) 2011.11.23
Block Size 확인.  (0) 2011.10.28
rsync 설정  (0) 2011.10.28