| 방식 | 사용자 수준 | 사용 목적 |
|---|---|---|
| Windows SMB 방식 | 일반 사용자 | 간단한 파일 공유, 프린터 공유 |
| WSL2 + SSH 방식 | 고급 사용자 | 커맨드 제어, 자동화, 서버 접속, 개발환경 구성 |
1. Windows 환경에서 Home network 연결 후 파일 공유 (SMB 방식)
로컬 네트워크(Local Network)에서 Windows PC끼리 통신하는 가장 일반적인 방식은 SMB (Server Message Block) 프로토콜을 기반으로 한 파일 공유(File Sharing)입니다. SMB는 네트워크를 통해 파일, 프린터, 기타 자원을 공유하고 접근할 수 있도록 하며, Windows 환경에서 주로 사용됩니다. 이는 단순한 파일 공유를 넘어, 네트워크 기반 서비스 전반에 활용됩니다.
- Windows OS가 설치된 PC 모두: Setting (Win + i 또는 Win+x → 네트워크 및 인터넷) → 고급 네트워크 설정 → 고급 공유 설정 → 프라이빗 네트워크 → 네트워크 검색 “켬”
- File Explorer (Win+r → explorer.exe) → 개별 폴더 → 속성 → 공유 → 네트워크 파일 및 폴더 공유 → 공유
상대 PC에서 접근
파일 탐색기의 주소창에 다음과 같이 입력하면 공유된 폴더 목록을 볼 수 있습니다:
plain text
\\상대PC이름
또는
\\192.168.X.X필요 시 자격 증명 입력: 상대방 PC의 Windows 사용자 계정과 비밀번호
Remote Desktop 이용한 Controlled PC 제어
- Controlled PC (Windows 11 OS Pro):
- Controlling PC:
2. Windows + WSL2 + Ubuntu 환경에서의 SSH 방식
실험 흐름
plain text
mini-us PC (WSL2 Ubuntu)
↓ SSH
mini PC (WSL2 Ubuntu)
- 두 PC 모두 Windows에서 WSL2를 실행하고 있으며, 그 내부에 Ubuntu가 설치되어 있음
- mini PC에는 SSH Server를 설치하고 실행
- mini-us PC에서는 SSH Client를 통해 접속
주의: WSL2는 NAT(Network Address Translation) 기반 가상 네트워크를 사용하므로, WSL2 내부의 IP는 외부에서 직접 접근할 수 없습니다. 따라서 Windows 호스트 IP를 통해 WSL2의 SSH 포트에 포트포워딩(portproxy)을 설정해야 외부 접속이 가능합니다.
mini PC (WSL2 Ubuntu): SSH 서버 설정
shell
# SSH 서버 설치 및 실행
sudo apt update && sudo apt install openssh-server -y
sudo service ssh start
# SSH 설정 파일 수정
sudo nano /etc/ssh/sshd_config
mini PC (WSL2 Ubuntu): sshd_config 예시 설정
root 계정으로 SSH 접속하지 않을 경우 PermitRootLogin은 기본값 유지 (prohibit-password) 권장
plain text
Port 22
PasswordAuthentication yes
PermitRootLogin prohibit-passwordshell
# SSH 서버 재시작
sudo service ssh restart
# SSH 서버 상태 확인
sudo service ssh statusmini PC (Windows): 포트포워딩 설정 (WSL2용)
shell
# WSL2 Ubuntu 내부 IP 확인
ip addr show eth0 | grep inet
# 예시: inet 172.29.144.1/20
# Windows PowerShell에서 포트포워딩 설정 (WSL IP를 위에서 확인한 값으로 대체)
netsh interface portproxy add v4tov4 listenport=22 listenaddress=0.0.0.0 connectport=22 connectaddress=WSL_IP
# 포트포워딩 확인
netsh interface portproxy show all
mini PC (Windows): Windows 방화벽 설정
powershell
# PowerShell (관리자 권한)에서 실행
# Windows 호스트의 22번 포트를 외부에서 열어줌
New-NetFirewallRule -DisplayName "Allow SSH" -Direction Inbound -Protocol TCP -LocalPort 22 -Action Allow
# Windows 호스트 IP 확인
ipconfig
# 'Ethernet 어댑터 vEthernet (WSL)' 항목의 IPv4 주소 사용 (예: 192.168.100.50)
mini-us PC (WSL2 Ubuntu)에서 SSH 접속
shell
# 접속
ssh 사용자명@192.168.100.50
# 텍스트 파일 생성
echo "Hello from mini-us at $(date)" > /home/sam/hello_from_mini_us.txt
# 내용 확인
cat /home/sam/hello_from_mini_us.txt
# 종료
exit # 또는 Ctrl + DSSH 키 페어 설정 (비밀번호 없이 접속)
shell
# SSH 키 생성
ssh-keygen
# 공개 키를 상대방에 복사
ssh-copy-id 사용자명@192.168.100.50
# 이후에는 비밀번호 없이 접속 가능
ssh 사용자명@192.168.100.50