윈도우에서 리눅스 서버의 SSH로 원격 접속하기 위해서 주로 PuTTY를 주로 사용하는데요.
사용자 계정과 비밀번호를 직접 입력해 로그인한 다음 관리하는 것이 보통이지만 관리자가 여러명인 경우 암호를 공유하는 것이 보안상 취약해질 염려가 있는데 SSH 키를 이용해 SSH 접속 설정을 하면 간편하게 로그인이 가능합니다.
목차
PuTTYgen으로 SSH키 생성하기
윈도우에서 SSH 키를 생성하기 위해서는 PuTTYgen을 사용합니다. PuTTY 홈페이지에서 다운로드 받을 수 있으며 PuTTY를 인스톨러로 설치한 경우 설치된 경로에 포함되어 있습니다.
PuTTYgen.exe를 실행한 다음 Generate 버튼을 클릭해 SSH 키를 생성합니다.
약간의 시간이 지나면 RSA 2048로 암호화된 Public key(공개키)와 Private key(개인키) 두개가 생성됩니다. 우선 Save private key 버튼으로 개인키를 저장합니다.
참고로 Key passphrase 칸은 SSH 키로 접속시 암호를 사용하는 옵션으로 리눅스 계정에 대한 암호가 아닌 SSH 키에 대한 암호로 보안을 이중으로 하고 싶다면 사용할 암호를 입력해 설정합니다.
개인키 저장시 위와 같은 경고창이 뜨는데 이는 passpharase를 지정하지 않아 생기는 경고문구 입니다.
‘예’ 버튼을 클릭해 개인키를 저장한 다음 프로그램을 닫지 않은 상태에서 SSH 키를 적용할 리눅스 서버에 SSH로 접속합니다.
리눅스 서버 SSH 키 등록
root@URANUS:/home/pg# mkdir .ssh root@URANUS:/home/pg# vi .ssh/authorized_keys
/home/계정
디렉토리 하위에 .ssh 디렉토리를 만든 다음 authorized_keys 파일을 에디터로 생성합니다. (root 계정일 경우는 /root
)
PuTTYgen에서 생성한 Public key를 복사해 붙여넣은 다음 저장하면 공개키가 등록되어 SSH 키로 접속할 준비가 끝납니다.
PuTTY 접속 설정
Putty 왼쪽 옵션중 Connection > Data > Login-details에서 SSH 키를 설정한 계정을 입력합니다.
Connection > SSH > Auth 로 이동한 다음 Private key file for authentication에 Browse 버튼을 클릭한 다음 저장한 Private key를 선택합니다.
Session으로 돌아와 설정한 옵션을 Save 버튼을 눌러 저장한 다음 접속합니다.
암호 없이 SSH 키로 접속이 잘 되는지 확인하면 되겠습니다.
원상복구 설정
root@URANUS:/home/pg# sudo rm -rf /home/pg/.ssh
만일 더이상 SSH KEY로 로그인을 하지 않는 경우에는 설정시 생성했던 /home/계정/.ssh
폴더 및 공개키를 삭제하면 됩니다.