Table of Contents
- ssh 설치
apt update
apt install openssh-server
(양쪽 다 서버로 설치하면 됨)
- 접속을 시도할 클라이언트에서 개인키/공용키를 만든다
- 클라이언트:
ssh-keygen -t rsa
- 클라이언트:
- 만약 접속할 서버의 종류가 점점 늘어난다면 config 파일로 관리하는 것도 좋은 방법이다
- 클라이언트:
vim ~/.ssh/config
Host spark-worker1 (ssh 명령어 뒤에 붙일 호스트 ex. ssh spark-worker1) HostName worker1 (실제 호스트명) IdentityFile ~/.ssh/id_rsa (내가 가지고 있는 개인키)
- 클라이언트:
- 이제 서버에 .ssh 폴더를 만들고 그 안에 authorized_keys 라는 파일에 공용키를 복사해 붙여넣는다
- 접속할 서버:
mkdir ~/.ssh
- 접속할 서버:
vim authorized_keys
- 접속할 서버: 클라이언트의
~/.ssh/id_rsa.pub
(공용키) 복사해 붙여넣는다
- 접속할 서버:
- 이제 클라이언트에서
ssh <호스트>
또는ssh <호스트명>:<포트번호>
로 접속되면 성공 - 에러가 나면 일단 양쪽 다
.ssh
폴더는 700,authorized_keys
는 600 권한을 맞춰준다 - 만약 ssh:
connect to host 192.168.0.6 port 22: Connection refused
에러가 뜬다면 서버의 22번 포트를 열어줘야 한다- 접속할 서버:
/etc/ssh/sshd_config
파일에서 Port 22 앞에 #을 제거한다 - 접속할 서버:
netstat -ntl
로 22번 포트 LISTEN 중인지 확인 (설치는apt update
후apt install net-tools
) - 접속할 서버:
/etc/init.d/ssh restart
로 ssh 재시작
- 접속할 서버:
- 만약 패스워드를 물어본다면 서버의 PubkeyAuthentication 설정을 바꿔줘야 한다
- 접속할 서버:
/etc/ssh/sshd_config
파일에서PubkeyAuthentication yes
를 추가해 준다 - 접속할 서버:
/etc/init.d/ssh restart
로 ssh 재시작
- 접속할 서버: