/////
Search
🖥️

SSH

SSHSecure Shell Protocol의 약자로 컴퓨터와 컴퓨터가 Public Network를 통해 통신을 할 때 보안 환경 속에서 안전하게 통신을 하기 위해 사용하는 프로토콜이다.

 How to work

SSH를 활용하여 다른 컴퓨터와 통신을 할 때 일반적으로 사용하는 비밀번호의 입력을 통한 접속 방법을 사용하지 않는다.
SSH는 한 쌍의 Key를 통해 인증 과정을 거치게 되는데, 이 한 쌍의 키는 Private KeyPublic Key로 이루어져 있다.
암호화는 가능하지만 복호화는 불가능한 특징을 갖고 있는 Public Key는 공개 되어도 비교적 안전한 Key이다. 이와 한 쌍을 이루는 Private Key는 암호화 된 데이터의 복호화를 위해 쓰여지는데 절대로 노출 되어서는 안된다.
SSH는 Public Key와 Private Key가 서로 한 쌍인지의 여부를 통해 통신 가능 여부를 판단하는데, 먼저 통신을 하고자 하는 Client side 컴퓨터에 Server side의 Public Key를 복사한 뒤 나중에 Client side PC가 통신 요청을 할 때 Client side가 갖고 있는 Public KeyServer sidePrivate Key가 일치하는지 판단한다.

→ Step

1.
openssh server가 실행 중인지 확인
$ systemctl status ssh
Shell
복사
만약 설치가 안 되어 있으면 sudo apt install openssh-server 입력하여 설치
2.
4242 포트 허용
$ sudo ufw allow 4242/tcp
Shell
복사
sudo ufw status numbered 를 사용하여 확인
3.
/etc/ssh/sshd_config 수정
변경 전
변경 후
#Port 22 Port 4242 . . . PermitRootLogin no # SSH를 이용한 root 연결을 허용할지 결정 (no -> 비허용)
Shell
복사
4.
sudo systemctl restart ssh 로 시스템을 재시작하여 변경 사항을 적용

→ 실습

1.
Debian의 가상 머신 IP 주소 확인
$ ip addr
Shell
복사
2.
내 iMac에서 연결 시도
ssh <계정 이름>@<Host ip> -p <포트 번호>
Shell
복사
Time out 발생
→ 현재 내 로컬에서 가상머신을 실행 시켰기 때문에 내가 내 자신에게 연결 해버리는 꼴이 되어버림.
3.
내 iMac의 IP 확인 → 포트포워딩
4.
가상 머신 설정 [ Virtual Box → Settings → Network ]
하단의 Port Forwarding 클릭
우측의 + 버튼 클릭
Name
자유롭게
Protocol
TCP
Host IP
Mac IP
Host Port
맥에서 입력 할 포트
Guest IP
Debian IP
Guest Port
4242
또는
이런 식으로 어느 IP든 4242 포트로만 접근하게 하면 되게끔 할 수 있다.
$ ssh <name>@<Host address> -p <port>
Shell
복사

Reference