테크에 밝은 아빠 DDlab · 직접 구축하고 삽질한 기록
NAS도 미니PC도 안 사고, 왜 가상머신이었나
홈랩을 시작하려고 알아보니 가장 먼저 걸리는 게 '장비값'이었습니다. 시놀로지 NAS는 디스크 빼고도 수십만 원이고, 요즘 유행하는 N100 미니PC도 결국 한 대를 새로 들여야 합니다. 2025년 말부터 시작된 메모리 가격 폭등에 새로운 장비를 들여서 공부한다는게 내키지 않았습니다. Docker가 뭔지, 셀프호스팅이 나한테 맞는지도 모르는데 장비부터 지르는 건 순서가 틀렸다고 생각했습니다.
그래서 눈을 돌린 게 가상머신(VM)이었습니다. 지금 쓰는 윈도우 PC 안에 '가상의 컴퓨터'를 한 대 만들어, 거기에 서버용 리눅스를 올리는 방식입니다. 핵심은 이겁니다. 진짜 서버와 화면도, 명령어도 똑같은데, 망가뜨려도 몇 분이면 되돌립니다. 스냅샷이라는 기능으로 특정 시점을 저장해두면 언제든 그 상태로 복구되니까요. 입문자가 마음 놓고 부수고 다시 만들기에 이만한 환경이 없습니다. 게다가 제 PC는 RAM이 넉넉한 편이라, VM에 8GB를 떼어줘도 본체가 전혀 버벅이지 않았습니다. 장비를 새로 사기 전에 '내가 이걸 계속할 사람인지'부터 확인하는 용도로, VM은 가장 합리적인 선택이었습니다.
VirtualBox에 우분투 서버 올리기
가상화 프로그램은 무료인 VirtualBox를 골랐습니다. 자료가 많고 한글 설명도 풍부해서 처음 하는 사람에게 무난합니다. 여기에 얹을 리눅스는 Ubuntu Server LTS 버전을 받았습니다. 데스크톱 버전이 아니라 '서버' 버전을 쓰는 이유는 분명합니다. 실제 홈서버는 모니터 없이 까만 화면으로 돌아가는데, 서버 버전이 그 환경과 가장 비슷하고 훨씬 가볍기 때문입니다.
설치 전에 한 가지 확인할 게 있습니다. CPU 가상화 기능(인텔 VT-x, AMD SVM)이 켜져 있어야 VM이 돌아갑니다. 윈도우 작업 관리자의 성능 탭에서 CPU를 보면 '가상화: 사용'이라고 떠야 하고, '사용 안 함'이면 재부팅 후 BIOS에서 켜주면 됩니다. 이 준비가 끝나면 VirtualBox에서 새 VM을 만듭니다. 메모리 8GB, CPU 2~4코어, 디스크 60GB 정도로 잡고, 받아둔 우분투 ISO를 연결한 뒤 시작하면 설치 마법사가 뜹니다.
그런데 여기서 첫 번째 삽질이 나왔습니다. 설치 도중 'Profile setup' 화면에서 사용자 이름과 비밀번호를 만드는데, 저는 이 단계를 무심코 넘겼습니다. 나중에 로그인 화면에서 아이디가 뭐였는지 몰라 한참 헤맸습니다. 이 화면의 'Pick a username'이 바로 로그인 아이디이고 'Choose a password'가 비밀번호이니, 반드시 메모해두어야 합니다. 그리고 같은 화면에 나오는 'Install OpenSSH server' 항목은 스페이스바로 꼭 체크해야 하는데, 이걸 놓치면 다음 단계에서 원격 접속이 막힙니다. 저는 이것도 놓쳐서 곧바로 두 번째 삽질을 만났습니다.
SSH connection refused
우분투 설치가 끝나고, 이제 윈도우에서 편하게 원격 접속하려는 순간 벽에 부딪혔습니다. 윈도우 PowerShell에서 접속을 시도하니 Connection refused라는 빨간 글씨가 떴습니다. 서버가 고장 난 줄 알고 잠깐 당황했지만, 이 메시지에는 정확한 뜻이 담겨 있습니다. 'IP까지는 찾아갔는데, 22번 포트에서 아무도 응답하지 않는다'는 것입니다. 즉 네트워크는 연결됐는데, 문을 열어줄 SSH 서버가 안 켜져 있다는 뜻입니다. 원인은 앞서 설치 때 OpenSSH 체크를 놓친 것이었습니다.
다행히 다시 설치할 필요는 없었습니다. VM 콘솔에서 로그인한 뒤 sudo apt install openssh-server -y 명령으로 SSH 서버를 설치하고 켜주면 됩니다. 그런데 접속이 되고 나서도 문제가 하나 더 있었습니다. ip a 명령으로 확인한 서버 주소가 10.0.2.15로 나왔는데, 이건 VirtualBox가 기본으로 주는 NAT 방식 주소라 외부(윈도우)에서 접속이 안 됩니다. NAT는 'VM에서 인터넷으로 나가는' 것만 허용하고 '밖에서 VM으로 들어오는' 것은 막기 때문입니다.
해결책은 네트워크를 '브리지(Bridged) 모드'로 바꾸는 것이었습니다. VM을 잠깐 끄고, VirtualBox 설정의 네트워크에서 연결 방식을 NAT에서 브리지 어댑터로 바꾼 뒤 다시 켜니, 이번엔 공유기가 준 진짜 IP가 잡혔습니다. 정리하면 원격 접속이 안 될 때는 두 가지를 순서대로 의심하면 됩니다. 먼저 SSH 서버가 켜져 있는지, 그다음 네트워크가 브리지 모드인지입니다. 이 두 관문만 넘으면 윈도우 창에서 복사·붙여넣기를 하며 편하게 작업할 수 있고, 여기서부터 찍는 화면들이 곧 기록이 됩니다. 한 가지 덧붙이면, 브리지 모드로 바꿨는데도 IP가 공유기 대역으로 안 잡히는 경우가 간혹 있습니다. 회사 네트워크나 일부 와이파이 환경에서 그런데, 그럴 때는 어댑터 이름에서 지금 실제로 인터넷을 쓰는 랜카드나 와이파이 어댑터가 정확히 선택됐는지부터 확인하면 대부분 해결됩니다. 또 리눅스는 비밀번호를 입력할 때 화면에 별표조차 표시되지 않는데, 이것도 고장이 아니라 보안을 위한 정상 동작이니 그냥 입력하고 엔터를 누르면 됩니다. 처음이면 사소한 이런 부분에서 당황하기 쉬워서, 미리 알아두면 불필요한 헤맴을 줄일 수 있습니다.
마무리: 이 VM은 연습이 아니라 진짜 서버가 됩니다
여기까지가 장비 한 푼 안 들이고 홈랩 서버를 세운 기록입니다. 솔직히 시작 전엔 '가상머신이면 어차피 연습용 아닌가' 싶었습니다. 그런데 막상 해보니 이 VM은 연습용이 아니었습니다. 이 위에 Docker를 올리고, 사진 서버와 광고 차단기를 실제로 돌리면 그대로 운영 서버가 됩니다. 장비를 새로 사는 건 '내가 이걸 계속하겠다'는 확신이 선 다음에 해도 늦지 않습니다.
그리고 오늘 만난 두 번의 삽질, 계정을 못 찾은 것과 connection refused는 사실 홈랩 입문의 통과의례입니다. 서버가 처음인 사람이라면 장비를 지르기 전에 이 방식으로 먼저 한번 세워보길 권합니다. 그 과정에서 만나는 에러 하나하나가, 나중엔 가장 든든한 밑천이 됩니다.
이 글은 실제 구축 과정을 기록한 것으로, 메뉴 이름은 프로그램 버전에 따라 조금씩 다를 수 있습니다.
'홈랩 · 셀프호스팅' 카테고리의 다른 글
| 카페24도 클라우드웨이즈도 아닌, Vultr 서울에 워드프레스를 '맨손으로' 올린 이유 (0) | 2026.07.13 |
|---|---|
| Home Assistant, 스마트홈 기기 없이 시작하기 (홈랩 서버 감시 대시보드) — 홈랩 입문 12편 (0) | 2026.07.10 |
| Vaultwarden — 내 비밀번호는 내 서버에 (NAT 루프백 해결) — 홈랩 입문 11편 (1) | 2026.07.10 |
| Immich로 구글 포토 없이 가족 사진 무제한 백업 (도메인 연결까지) — 홈랩 입문 10편 (0) | 2026.07.09 |
| AdGuard Home으로 집 전체 광고 차단 (포트 충돌 해결) — 홈랩 입문 9편 (0) | 2026.07.09 |