VirtualBox 네트워크별 SSH 접속 가이드
다음 문서는 당신이 올려준 스크린샷과 VM 설정(3개 어댑터: Host-Only, NAT, Bridged)을 바탕으로 세 가지 방식으로 SSH 접속하는 방법을 정리한 문서입니다. 각 방식의 차이점,
설정 요건, 접근 범위, 테스트/문제 해결 방법, 보안 권장 사항까지 포함합니다.
cat /etc/netplan/50-cloud-init.yaml
network:
  version: 2
  renderer: networkd  
  ethernets:
    enp0s3:
      dhcp4: false
      addresses:
        - 192.168.56.200/24
      # 내부 전용 네트워크 - 게이트웨이 없음
    enp0s8:
      dhcp4: true
      nameservers:
        addresses: [8.8.8.8, 1.1.1.1]
      # 필요시 유지
    enp0s9:
      dhcp4: true
      addresses:
        - 192.168.0.16/24
      routes:
        - to: default
          via: 192.168.0.1
      # 브리지 어댑터 - 외부망, 인터넷 연결 담당
적용:
sudo netplan apply
그 다음 다시 확인:
ip a



1) 각 방식별 상세 설정 & 접속 방법
A. Bridged (예: 192.168.0.16:22) — LAN 내부 접근
설명: VM을 물리 LAN에 직접 연결. 공유기가 VM을 하나의 장치로 보고 IP를 할당.
VirtualBox 설정:
- VM 종료 → 설정 → 네트워크 → 원하는 어댑터(예: 어댑터 3) 선택 
- Attached to(연결 방식) → Bridged Adapter 선택 
- Name(이름) → 실제 사용하는 물리 NIC 선택(예: Intel Ethernet, Wi‑Fi) 
- Cable connected 체크 
Guest(Ubuntu) 설정:
- ip a로 IP 확인 (예: enp0s9: 192.168.0.16) 
- SSH 서버 설치 및 활성화: - sudo apt update sudo apt install openssh-server -y sudo systemctl enable --now ssh sudo systemctl status ssh 
- 방화벽(ufw) 사용 시: - sudo ufw allow 22/tcp sudo ufw reload 
호스트/네트워크 쪽 설정:
- NAT 포워딩 불필요(로컬 LAN 접근 전용) 
- 외부(인터넷)에서 접속하려면 공유기에서 포트포워딩: 외부포트 → 내부 192.168.0.16:22 
접속 예:
- 같은 LAN 내부 장치에서: ssh user@192.168.0.16 
- 외부에서: 공유기 공인IP + 포트포워딩 후 ssh -p 외부포트 user@공인IP 
장단점:
- 장점: 설정이 직관적, LAN 내 다른 기기에서 바로 접근 가능 
- 단점: 외부 접근 시 공유기에서 포트포워딩 필요, 회사망 등에서 브리지 사용 제한 가능 
B. NAT + Port Forwarding (예: 127.0.0.1:2222 or 호스트IP:2222) — 호스트를 통한 포트포워딩
설명: VM은 NAT 네트워크로 외부에 나가고, VirtualBox가 호스트 포트를 VM의 포트로 포워딩 해준다.
VirtualBox 설정 (NAT 포트포워딩 규칙 예):
- VM 설정 → 네트워크 → 어댑터 (NAT) → Advanced → Port forwarding 
- 규칙 예: 이름 ssh, 프로토콜 TCP, 호스트 IP (비워두거나 127.0.0.1), 호스트 포트 2222, 게스트 IP 10.0.3.15, 게스트 포트 22 - 호스트 IP을 127.0.0.1로 설정하면 호스트 로컬에서만(127.0.0.1:2222) 접속 가능 
- 호스트 IP를 비워두면 호스트의 모든 NIC(예: 192.168.0.5:2222)에서 접근 가능 
 
Guest(Ubuntu): 위와 동일하게 sshd 활성화 및 ufw 허용
접속 예:
- 호스트에서 로컬: ssh -p 2222 user@127.0.0.1 
- 같은 LAN의 다른 PC(호스트 IP에 바인딩 하지 않았다면): ssh -p 2222 user@192.168.0.5 
- 외부에서(공유기 뒤에 있다면): 공유기에서 외부포트 → 호스트IP:2222 포워딩 후 ssh -p 외부포트 user@공인IP 
장단점:
- 장점: 호스트 내부 포트 하나만 열면 VM에 접근 가능(여러 VM을 서로 다른 포트로 포워딩 가능) 
- 단점: 호스트를 경유하므로 약간의 복잡성, 호스트 IP에 바인딩 설정에 따라 접근 범위가 달라짐 
C. Host-Only (예: 192.168.56.200:22) — 호스트 전용 네트워크
설명: VM과 호스트 간 전용 가상 네트워크. 외부 네트워크나 공유기에서는 보이지 않음.
VirtualBox 설정:
- 어댑터를 Host-Only Adapter로 설정 
- Windows 호스트 내부에 VirtualBox Host-Only Ethernet Adapter (예: 192.168.56.1)이 존재함 
접속 방법:
- 호스트에서만: ssh user@192.168.56.200 
- 다른 기기에서는 접근 불가 (특별한 라우팅/포워딩 없으면) 
장단점:
- 장점: 호스트와 안전하게 내부 통신(개발/테스트 목적)에 적합 
- 단점: 외부 접근 불가(공유기 포워딩이 동작 안 함) 
2) 포트포워딩: 호스트 IP 필드의 의미
- 호스트 IP에 127.0.0.1을 입력하면: 포트는 오직 로컬 호스트에서만 바인딩. 같은 LAN의 다른 PC는 접근 불가. 
- 호스트 IP를 비워둠: 호스트의 모든 NIC(예: 192.168.0.5, 10.0.0.2 등)에 바인딩되어 호스트의 다른 IP로도 접근 가능. 
- 호스트 IP를 특정 NIC IP로 지정 (예: 192.168.0.5): 해당 NIC에서만 접근 가능. 
3) ipTIME 공유기에서 외부(인터넷) 접속 허용 예시
- 라우터 관리 페이지 접속: http://192.168.0.1 → 포트포워드(또는 NAT/포트포워딩) 
- 규칙 예: - 외부포트: 2222 
- 내부 IP: 192.168.0.16 (VM의 브리지 IP) 
- 내부포트: 22 
- 프로토콜: TCP 
 
- 외부에서 연결: ssh -p 2222 user@공인IP 
- 공인IP가 동적이라면 DDNS(예: iptime DDNS) 등록 권장 
5) 확인·문제해결 체크리스트
VM 내부에서
- ip a — 인터페이스와 IP 확인 
- sudo systemctl status ssh — sshd 실행 상태 확인 
- sudo ufw status — 방화벽 규칙 확인 
- sudo ss -tlnp | grep :22 또는 sudo netstat -tlnp | grep :22 — 포트 리스닝 확인 
호스트(Windows)에서
- ipconfig /all — 호스트의 IP(192.168.0.5 등) 확인 
- 포트가 열렸는지 확인: telnet 192.168.0.16 22 또는 ssh user@192.168.0.16 
- NAT 포워딩 테스트: ssh -p 2222 user@127.0.0.1 (호스트에서) 
네트워크 트래블(공유기/외부)
- 공유기 포트포워딩이 정확한지 확인 
- 외부에서 접속이 안 되면 공유기 방화벽/ISP 차단 여부 확인 
- tcpdump 또는 Wireshark로 패킷이 들어오는지 확인(심화) 
6) 보안 권장사항
- root 직접 로그인 비활성화: /etc/ssh/sshd_config 에 PermitRootLogin no 설정 
- 비밀번호 대신 공개키 인증 사용: ~/.ssh/authorized_keys 
- 포트 변경(기본 22 → 다른 포트), ufw로 허용 포트만 오픈 
- fail2ban 같은 도구로 무차별 대입 차단 
- 외부 포트포워딩시 가능한 경우 VPN을 통해 접속 (더 안전) 
7) 권장 구성 (상황별)
- 개발/로컬 테스트: Host-Only(192.168.56.200) + 필요시 NAT 포워딩(127.0.0.1:2222) 
- LAN에서 서비스/접속 필요: Bridged(192.168.0.16) — 같은 네트워크에서 직접 접속 가능 
- 외부(인터넷)에서 안정적으로 접속 필요: Bridged + 공유기 포트포워딩 or VPN (DDNS 적용 권장) 
문서로 정리해 두었습니다. 우측 캔버스에서 확인하세요. 필요하시면 이 문서를 기반으로 ipTIME 설정 스텝 바이 스텝, sshd_config 변경 예시,
ufw 규칙 스니펫, 또는 공유기 포트포워딩 스크린샷 가이드(모델별) 도 만들어드릴게요.

 
									













 
댓글 ( 0)  
댓글 남기기