ubuntu -- 공개키 ssh 접속 ( 암호없이 접속 )


환경 : ubuntu 14.04 LTS server 64bit.   


참고 : https://help.ubuntu.com/lts/serverguide/openssh-server.html

       http://blog.pincoin.co.kr/2013/01/09/%EC%95%84%EC%9D%B4%EB%94%94%EB%B9%84%EB%B0%80%EB%B2%88%ED%98%B8-%EC%97%86%EC%9D%B4-%EA%B3%B5%EA%B0%9C%ED%82%A4%EA%B0%9C%EC%9D%B8%ED%82%A4%EB%A1%9C-putty-%EC%A0%91%EC%86%8D/



<< ubuntu client 에서 ubuntu server 접속하기 >>


1. client ubuntu  에서 key 생성하기 


   **  passphrase 에서 그냥 enter 치면, 암호없이 private key 만으로 접속가능 

        --> private key 분실시 보안문제 발생


  **  passphrase 에 암호입력하면, private key 로 접속시 암호 입력해야함

      --> private key 분실해도 암호 모르면 접속못함.




 -- 키 생성 확인하기 (client ubuntu)

     id_rsa ; private key

     id_rsa.pub ; public key


-- 공개키 내용 확인해보기 (client ubuntu)



2. 생성한 키중 public key 서버로 보내기  ( client ubuntu )

$ ssh-copy-id username@remotehost




3. 서버 ubuntu 에서, 사용자 홈 디렉토리 내부에 .ssh 디렉토리 생기고, authorized_keys 파일 생성됨을 볼수있다.

   -- authorized_keys 내용으로 client ubunt 에서 생성한 public key 값이 그대로 들어가 있다.

   -- authorized_keys 는 permission 600 으로, 사용자만 읽고 쓸수있게 되어있다.





4. client ubuntu 에서 server ubuntu 에 접속하기 (private key - public key  이용하여)

   -- 로그인 암호없이, 바로 접속됨을 확인할수 있다.






<< windows client 에서 ubuntu server 접속하기 >>


1. puttygen.exe 를 실행시켜 public key, private key 를 만들자 

  --  Key 영역에서 마우스 계속 움직여야함 --> 이를 근거로 키 생성한다.

      ( 안그러면 키 생성 안함... )







2. 서버에 public key 내용을 붙여 넣고 저장한다.

 -- 나만 읽고 쓸수 있게 permission 변경한다.


$ chmod 600 .ssh/authorized_keys




3. 이제 윈도우즈 에서 putty 로 서버에 접속해보자.

 -- 저장한 private key 파일을 불러온후 접속하면 ok!




4. 접속 성공 





<< 로그인 id 도 자동입력하기 >>











*** 참고  http://webdir.tistory.com/200   


디렉토리와 파일 권한


chmod 700 ~/.ssh

chmod 600 ~/.ssh/id_rsa

chmod 644 ~/.ssh/id_rsa.pub  

chmod 600 ~/.ssh/authorized_keys

chmod 644 ~/.ssh/known_hosts


Posted by 자유프로그램