안녕하세요. 달소입니다.
이번에는 실무에서도 많이 쓰이는 ssh key생성 후 그 ssh key값으로 접속하는 방법 입니다.
ssh key값 생성하기
먼저 키값으로 접속할 서버에 가서 ssh key를 생성해주겠습니다.
접근이 필요한 계정으로 아래 명령어를 통해 key를 생성해주세요.
ssk-keygen
처음은 key값이 저장될 위치(계정/.ssh/)
passphrase는 키값으로 로그인할 때 사용될 pw입니다
최종적으로 생기는 파일은 아래와 같습니다.
간단히 설명해드리면 id_rsa는 개인키로 클라이언트 에서 사용될 키이며 id_rsa.pub는 서버에서 인증으로 사용될 공개키 입니다.
공개키의 경우 저렇게 두면 사용이 안되기 때문에 mv명령어로 이름을 아래처럼 바꿔주세요.
mv id_rsa.pub authorized_keys
그리고 개인키의 경우 접속할 클라이언트에 옮겨주시거나 내용만 복사에서 클라이언트에 저장해주세요.
아래 내용만 복사해서 메모장에 저장해도됩니다.
리눅스서버에서 key로 접속하기
해당 서버로의 권한이 있다면 scp를 통해서 key파일을 이동해줘도 되고
아니면 cat id_rsa 해서 내용을 그대로 접속할 클라이언트 서버에서 내용을 복사해주세요.
아무튼 옮기고 권한을 600으로 바꾼뒤 ssh [계정명]@[서버ip] -i [파일이름] 으로 접속해보겠습니다.
파일권한을 변경하지않으면 오류가 발생합니다.
윈도우에서 key로 접속하기.
위 내용의 파일을 아래처럼 복사했습니다.
하지만 이상태로 윈도우에서 바로 접근하게 되면 아래처럼 Open SSH의 포맷이 맞지않아 에러가 발생하는데요.
puttygen을 이용해서 기존 key를 신규 key로 변경하면 됩니다.
Load로 아까 복붙한 키를 넣어주면 PW를 아래처럼 넣으라고합니다.
완료되면 Save Private key 로 키를 저장해주세요.
이제 이 윈도우용 ppk를 가지고 putty로 접속하면 됩니다.
이제 open을 통해접속하면
id를 치라고나오는데 아까 ssh-keygen을 했던 id
pw는 키값을 만들때 썼던 pw 입니다.(계정 pw 가 아님)
[Reference] : 달소, 「서버포럼 – 리눅스 서버 ssh key 생성하고 윈도우 및 리눅스 클라이언트에서 접속하기.」 https://svrforum.com/?document_srl=52035&mid=develop&act=dispBoardContent.