
맥 미니를 이용해 홈서버 구축하기 (1)
직접 자신만의 서버를 구축해 보는 것은 웹 개발자라면 꼭 권장하고 싶은 취미가 아닐까 싶습니다. 인터넷이라는 공개된 공간에 처음부터 끝까지 자신의 입맛대로 구성할 수 있는 사이트 경험은 매력적일 뿐만 아니라 풀스택 개발자로서의 지식 또한 많이 배울 수 있는 기회가 됩니다. 비록 방문자의 대부분이 봇과 스캔 공격일지라도, 직접 운영하는 서버에는 애착이 가게 되더라고요.
처음엔 클라우드 서비스를 이용해 이 블로그를 서비스하고 있었지만, 이런저런 이유로 2025년부터 Mac mini로 구축한 홈서버로 이전을 진행했습니다.
클라우드 서버
클라우드를 이용하면 바로 몇가지 예제만 가져와서 서버를 열어볼 수 있다는 것이 가장 큰 장점입니다. 하드웨어 구성 없이 원격 설정을 통해 곧바로 서버를 할당받을 수 있고 여러 서비스를 이어붙일 수 있는 등 제대로 사용하면 장점이 많은 서비스인데, 저는 네이버 클라우드의 Micro Server를 가입 이벤트를 통해 무료로 1년동안 사용해 봤습니다. 하지만 사용하면서 발견한 몇가지 이유로 홈서버로의 이주를 결정하게 되었습니다.
비용
서버 하드웨어 자체는 1년간 무료로 사용할 수 있지만, 실제 서버로 사용하기 위해 약간의 비용은 필요합니다. 우선 도메인 구입에 비용이 좀 필요한데, 제 첫 도메인은 저렴한 도메인으로 구매해 3000원이 안되게 들었습니다. 1년간 사용할 수 있는 도메인 치고 이 정도는 부담 없는 가격으로 구매할 수 있었습니다.
그러나 중요한 점은 매달 고정 IP를 위한 금액이 청구된다는 사실입니다. 서버를 열려면 도메인과 연결한 고정 IP가 반드시 필요한데 네이버 클라우드는 이 서비스에 매달 5,610원을 청구합니다. 그리고 1년의 무료 이용이 끝나면 서버 이용료로 10,850원이 부과됩니다. 가장 경량의 서버를 이용하는데 1년 유지비로 최소 20만원의 비용이 든다는 것은 개인 블로그 수준의 서비스에겐 적잖이 부담되는 금액입니다.
속도
네이버 클라우드에 가입 시 1년동안 무료로 제공되는 Micro-g1 서버는 vCPU 한개, 메모리 1GB, 디스크 50GB의 스펙을 제공하고 있습니다. 초기 세팅만 하고 나면 컴파일된 에셋들만 교체해주면 되는 static 사이트들이나 도커나 CI/CD를 초기부터 잘 구축해 놓을 수 있다면 개인적 용도로는 충분한 스펙이라고 생각됩니다.
다만 배포할 때 마다 서버에 접속 해 파일을 올리고 컴파일 해줘야 하는 제 상황에선 속도가 부족하게 느껴졌습니다. 배포 할 때마다 개발-배포 환경의 차이 때문에 오류가 발생하거나 배포 후에서야 버그가 발견된다거나 하다 보니 배포 시간이 꽤나 소요됐었는데, 그러다 보니 배포 작업에 손이 잘 안가게 되고 운영에 대한 애착이 점점 줄어들었습니다.
보안 위협
서버를 운영하면서 생각했던 것 이상으로 많은 공격을 받았습니다. 클라우드서버 이용에서 가장 무서운 공격은 아무래도 DDoS로 인한 트래픽 폭탄 요금일텐데, (다행히 이런 공격이 들어온 적은 없습니다.) 클라우드 업체들은 보통 비용 청구에 제한을 두는 기능을 만들어 두지 않아 막을 방법이 사실상 전무합니다. 인터넷에 심심찮게 올라오는 "클라우드 몇만달러 요금 폭탄!"과 같은 글의 주인공이 제가 되지 않도록 바라는 수 밖에는 없습니다.
다만 SSH Brute-force라던가, 포트 스캐닝과 같은 공격을 감지해 이메일을 통해 통지해주는 서비스는 네이버 클라우드가 제공해주는 강점이었습니다. 다만 웹서버를 향해 끊임없이 들어오는 .env파일 요청, wp-admin접근 시도라던가 감지되지 않은 여러 공격도 있을 것이란 걸 생각하면 언제라도 제가 임대한 서버가 공격자의 손에 들어갈 것이라는 약간의 불안함을 떨쳐낼 수 없었습니다.
홈서버로의 이전
도메인과 클라우드서버 무료 이용이 종료되는 1년이 가까워지는 시점에 두 가지 선택지를 고민했습니다. 오라클 클라우드와 같이 서버 스펙과 무료 트래픽 제공량이 좀 더 넉넉한 클라우드로의 이전 혹은 저전력 미니PC를 이용한 홈서버 구축.
그러던 중, M4 맥 미니가 대대적인 폼팩터의 변화와 함께 기본램이 16GB로 증가해 출시된 소식을 접했습니다. 작고 가벼운 녀석이 만듦새까지 좋은데 빠르고 조용하다니. 89만원이라는 가격만 조금 눈을 감아주면 완벽에 가깝지 않나 생각이 들어 최종적으로 구매를 진행하게 되었습니다.

맥 미니를 선택한 이유
저전력, 저소음
맥 미니는 웹 서버를 돌리고 있는 상태에서도 평균 1.7W의 낮은 전력 소비량을 보여줍니다. 아무리 적어도 10W 정도의 전력 소비를 보이는 x86 PC들과 비교하면 훨씬 낮은 소비전력입니다. 전력 소모가 적으니 발열도 낮고 발열이 낮으니 팬소음도 없습니다.
전력 소모는 유지비 측면에서도 중요한데, 넉넉히 전력 소비량을 2W로 잡아도 한달 전기 소모량이 1.5kWh 정도에 불과합니다. 혼자서 거주하는 제 기준으로 하루 전기 요금이 10원도 채 나오지 않는다는 계산이 가능합니다.

고성능
저전력 ARM 아키텍처에 더해 효율코어를 사용해 대기하므로 평소에는 말도 안되게 낮은 전력 소비량을 보여주지만. 컴파일이나 파일 압축 같이 순간적으로 많은 시스템 자원이 필요할 때 시스템 자원을 끌어 사용해 만족스럽고 쾌적한 성능을 보여줍니다.
특히 x86의 최상위 CPU 중 하나인 라이젠 9950X보다도 빠른 싱글코어를 갖춘 M4 칩셋은 싱글코어 성능이 중요한 웹서버에 상당히 적합한 용도로 사용될 수 있지 않을까 하는 기대를 갖고 있습니다.
macOS
보통 리눅스를 사용하지 않는 것이 단점으로 평가되는데, 리눅스를 사용할 때 꼭 한번쯤 밟게 되는 OpenSSL 의존성 이슈를 겪지 않는다던가 SSH로 잠자기 모드에 들어간 맥을 깨워서 접속할 수 있게 하는 등의 빌트인 설정이 서버로서의 사용성에 플러스 요인이 되었습니다.
특히 개인 컴퓨터로 맥북을 사용하고 있어 컴파일된 파일을 바로 전송해 사용할 수 있다거나 개발 환경과 배포 환경의 일치도를 높일 수 있는 점도 제 워크플로우에선 장점으로 다가왔습니다.
교육 할인
교육 할인을 받을 수 있는 조건이 맞아 15만원 정도 비용 절감이 가능했습니다. 그렇지 않아도 이번에 기본 램 용량이 증가하면서 가성비가 더 높아진 제품이 되었는데 좀 더 좋은 가격으로 구매가 가능했습니다.
사실 위에서 나열한 장점들엔 구매를 합리화시키기 위한 몇가지 핑계가 섞여있는데, 이런 합리화가 무색하게도 구매 후에는 괜히 고민하느라 구매만 며칠 늦어졌다고 생각될 정도로 마음에 들었습니다.
마무리
맥 미니를 구매하게 되면 그동안 개인적으로나 업무적으로나 만져오던 리눅스와 비교해 서버로서 제대로 운용할 수 있을까 걱정이 되었습니다. 그런데 그런 걱정이 무색하게도 몇가지 간단한 설정만으로 훌륭한 서버로서 활용할 수 있었습니다.
이어지는 포스팅에서는 맥 미니의 초기 설정부터 서버 오픈까지의 과정을 상세히 다루어볼 예정입니다.