ssh에 바로 접속하도록 키 만들기
- mac기준
기본 ssh 접속
ssh root@[ip] -p 22
- 위를 입력 후 다시 비밀번호를 입력해야한다.
- 이러한 과정이 귀찮을때 사용
ssh 키만들기
ssh-keygen
이라는것을 이용하여 생성- 접속하려는 컴퓨터에서 키를 만들어준다.
- 어디든 상관없을듯
ssh-keygen -t rsa
로 키 만들기Enter file in which to save the key (/Users/사용자/.ssh/id_rsa):
저장위치,파일명 지정Enter passphrase (empty for no passphrase):
해당 키의 비밀번호 지정, 없이도 가능- 만들면 파일이 두개 만들어진다.
- 위에서 지정한 파일과 ~.pub파일이 만들어진다.
- ~.pub파일이 서버에서 사용하는 공개키
- 따로 확장자 없는건 접속하려는 클라이언트에서 사용
- 로컬의 키 저장 위치
~/.ssh
폴더에 저장하면된다.- 없으면 만들기
- 위에서 ssh-keygen으로 기본적으로 저장 될것이다.
- 서버에게 공개키(pub파일)넘기기
vi ~/.ssh/authorized_keys
- 없으면 .ssh폴더와 authorized_keys파일 만들기
- 위에서 생성한 ~.pub파일의 내용을 서버의 authorized_keys를 만들어서 붙여넣어준다.
ssh 키를 이용해 접속
ssh -i [키 파일 이름] root@[주소] -p [포트번호]
키 파일 이름
은~/.ssh/
에 존재하는 키의 파일명을 맞춰주면 된다.- 해당 키를 생성할때 비밀번호를 작성하였으면 비밀번호를 추가적으로 입력하면 접속가능
ssh config를 이용해 바로 접속
vi ~/.ssh/config
- 클라이언트의
.ssh
폴더내에config
라는 파일을 생성 또는 수정 - 아래의 내용을 붙여넣는다.
- 클라이언트의
Host [ssh이름]
HostName [ip주소]
User [사용자명]
Port [포트번호]
IdentityFile ~/.ssh/[키 파일 이름]
- 접속 방법
ssh [ssh이름]
하게되면 알아서 config내의 host내용에 맞게 키 파일을 이용해 접속해준다.
예시
ssh -i rsakey root@127.0.0.1 -p 22
의 내용이라면 아래와 같은 내용을 적어준다.~/.ssh/rsakey
라는 키 파일이 존재
Host ssh1
HostName 127.0.0.1
User root
Port 22
IdentityFile ~/.ssh/rsakey
ssh ssh1
로 위의 긴 접속하는 방식을 줄일 수 있다.