집에서 개인 서버 만드는 방법

작성자

카테고리:

왜 개인 서버를 만드는가

개인 서버를 구축하는 이유는 다양하다. 포트폴리오 사이트를 직접 호스팅하고 싶거나, NAS 없이 파일 서버를 운영하거나, 개발 환경을 로컬 네트워크에 상시 띄워두거나, 단순히 서버 운영 경험을 쌓기 위해서다. VPS를 빌리면 간편하지만, 물리 서버를 직접 만져보는 경험은 네트워크, OS, 보안, 하드웨어를 통합적으로 이해하는 데 훨씬 효과적이다.

하드웨어 선택

가장 진입 장벽이 낮은 선택지는 라즈베리파이다. 라즈베리파이 5 기준 8GB RAM 모델이 10만 원 이내이며, ARM 기반 리눅스를 구동할 수 있다. 가벼운 웹서버, Git 서버, Pi-hole(광고 차단 DNS) 정도는 충분히 돌아간다. 좀 더 본격적으로 운영하려면 중고 비즈니스 PC나 씬클라이언트를 활용하는 방법이 있다. Intel NUC 같은 미니 PC도 소음과 전력 소모가 적어 홈서버로 인기가 높다. 전력 소모는 생각보다 중요하다. 24시간 가동되므로 소비 전력 10W 차이가 연간 전기요금에서 유의미한 차이를 만든다.

운영체제 설치

홈서버 OS로 가장 보편적인 선택은 Ubuntu Server다. 설치 과정이 직관적이고 커뮤니티 자료가 풍부하다. Debian도 안정성 측면에서 좋은 선택이다. 가상화를 주 목적으로 한다면 Proxmox VE를 설치하면 웹 UI에서 VM과 컨테이너를 관리할 수 있다. OS 설치는 USB에 이미지를 구워 부팅하는 방식이 표준이다. Rufus나 balenaEtcher로 부팅 USB를 만들고, BIOS에서 USB 부팅 순서를 지정한 뒤 설치를 진행한다. 설치 시 SSH 서버 활성화 옵션을 반드시 체크해야 이후 원격 접속이 가능하다.

네트워크 설정

홈서버를 외부에서 접속하려면 몇 가지 네트워크 설정이 필요하다. 첫째, 공유기에서 서버 장비에 고정 내부 IP를 할당한다. DHCP 예약 기능을 사용하면 된다. 둘째, 외부에서 접근할 포트를 공유기의 포트포워딩 설정에서 내부 IP로 연결해준다. SSH는 22번, 웹서버는 80번 또는 443번이 기본이다. 셋째, 가정용 인터넷은 대부분 유동 IP이므로 DDNS(Dynamic DNS) 서비스를 등록하여 도메인 이름으로 접속할 수 있게 한다. 시놀로지 DDNS, No-IP, DuckDNS가 무료로 사용 가능한 대표적인 DDNS 서비스다.

기본 보안 설정

홈서버를 외부에 노출하는 순간 보안은 선택이 아니라 필수다. SSH 포트를 기본 22번에서 다른 번호로 변경하고, 패스워드 인증 대신 SSH 키 인증으로 전환한다. fail2ban을 설치하면 반복적인 로그인 시도를 자동 차단해준다. UFW(Uncomplicated Firewall)로 필요한 포트만 열고 나머지는 전부 차단하는 화이트리스트 방식을 적용한다. 이 네 가지만 해도 무차별 대입 공격(Brute Force)의 대부분을 막을 수 있다.

무엇을 올릴 것인가

서버를 만들었으면 실제로 서비스를 올려봐야 의미가 있다. Nginx를 설치하고 간단한 정적 웹사이트를 서빙하는 것이 첫 번째 실습으로 좋다. Docker를 설치하면 Nextcloud(개인 클라우드), Gitea(Git 호스팅), Jellyfin(미디어 서버), Home Assistant(홈 자동화)를 컨테이너로 간편하게 올릴 수 있다. 하나씩 추가하면서 리소스 모니터링, 백업 자동화, 로그

코멘트

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다