태그 보관물: #워드프레스서버

[홈서버 구축 5편] 자동화 스크립트와 서버 유지관리 팁 — 안정적인 홈서버 운영법

(워드프레스 홈서버 구축 시리즈 5편)

서버를 직접 세팅해놓고 며칠 동안 잘 돌아가던 워드프레스가,
어느 날 갑자기 느려지거나 접속이 안 되는 경험을 한 적 있으신가요?

저 역시 처음 미니PC 서버를 만들었을 때,
“이제 됐다!” 싶어 방심했다가 트래픽 과부하, 로그 누적, PHP 멈춤
예상치 못한 문제들을 맞닥뜨렸습니다.

서버를 “세운다”는 건 시작일 뿐,
그 이후 “꾸준히 관리하고 지켜주는 일”이 진짜 운영의 핵심입니다.

이번 글에서는 홈서버를 안정적으로 장기간 운영하기 위한 관리 습관과 자동화 방법
단계별로 정리했습니다.


1. 서버 관리의 기본 철학: “자동화 + 예방”

홈서버를 잘 운영하기 위한 핵심 원칙은 두 가지입니다.

  1. 자동화 (Automation) – 내가 직접 손대지 않아도 시스템이 스스로 유지되게 만들기
  2. 예방 (Prevention) – 문제가 생기기 전에 미리 점검하고 대비하기

즉, ‘문제가 생겨서 고치는 것’보다
‘문제가 생기지 않게 관리하는 것’이 훨씬 효율적이라는 뜻입니다.


2. 자동 재부팅 스케줄 설정

리눅스 서버는 장기간 실행 시 메모리 누수가 쌓이거나
일부 서비스가 느려지는 현상이 종종 발생합니다.
이를 방지하기 위해 주기적인 재부팅을 자동화하는 것이 좋습니다.

📜 자동 재부팅 스크립트 만들기

sudo nano /usr/local/bin/auto-reboot.sh

내용:

#!/bin/bash
# 자동 재부팅 로그 남기기
echo "Rebooting server at $(date)" >> /var/log/auto-reboot.log
sudo /sbin/reboot

저장 후 실행 권한 부여:

sudo chmod +x /usr/local/bin/auto-reboot.sh

⏰ 매주 일요일 새벽 4시 재부팅 예약

sudo crontab -e

추가:

0 4 * * 0 /usr/local/bin/auto-reboot.sh

💡 Tip: 재부팅 시간을 새벽 시간대로 설정하면 방문자에게 영향을 주지 않습니다.


3. 워드프레스 자동 백업 스크립트

홈서버는 물리 장비이기 때문에
디스크 오류나 실수로 인한 데이터 손실에 대비해야 합니다.

📜 백업 스크립트 만들기

sudo nano /usr/local/bin/wp-backup.sh

내용:

#!/bin/bash
# 날짜별 백업 파일 생성
DATE=$(date +%Y-%m-%d)
BACKUP_DIR="/home/backup"
mkdir -p $BACKUP_DIR

# 워드프레스 파일 백업
tar -czf $BACKUP_DIR/wp_files_$DATE.tar.gz /var/www/html

# 데이터베이스 백업
mysqldump -u root -p'비밀번호' wordpress > $BACKUP_DIR/wp_db_$DATE.sql

# 7일 지난 백업 자동 삭제
find $BACKUP_DIR -type f -mtime +7 -delete

실행 권한 부여:

sudo chmod +x /usr/local/bin/wp-backup.sh

⏰ 매일 새벽 3시 자동 백업 예약

sudo crontab -e

추가:

0 3 * * * /usr/local/bin/wp-backup.sh

💡 백업 파일은 /home/backup 폴더에 저장됩니다.
외부 NAS나 클라우드 드라이브(Google Drive, Dropbox 등)와 동기화해두면 더욱 안전합니다.


4. 서버 보안 강화 – 필수 점검 리스트

홈서버는 외부에 노출되어 있기 때문에
보안을 게을리하면 쉽게 공격 대상이 될 수 있습니다.
다음은 꼭 지켜야 할 보안 습관입니다.

점검 항목명령어 / 설정설명
1. SSH 포트 변경/etc/ssh/sshd_config기본 22번 포트를 다른 번호(예: 2222)로 변경
2. 방화벽 설정sudo ufw statusApache Full, OpenSSH 외 포트는 차단
3. Fail2Ban 설치sudo apt install fail2ban -y비정상 로그인 시도 차단
4. 루트 로그인 금지PermitRootLogin noSSH 보안 강화
5. 시스템 업데이트 자동화sudo apt install unattended-upgrades -y최신 보안 패치 자동 설치

자동 업데이트 설정:

sudo dpkg-reconfigure --priority=low unattended-upgrades

💡 Fail2Ban은 SSH나 Apache에서 비정상적인 접속을 탐지해
자동으로 IP를 차단해주는 보안 필수 툴입니다.


5. 서버 상태 실시간 모니터링

서버의 상태를 꾸준히 모니터링하면
문제가 생기기 전에 조기 대응할 수 있습니다.

🧠 기본 명령어

목적명령어설명
CPU 사용량top 또는 htop실시간 CPU·메모리 점유율 확인
디스크 용량df -h저장 공간 현황
메모리 사용량free -h남은 메모리 확인
서비스 상태systemctl status apache2Apache 정상 작동 여부
로그 확인tail -f /var/log/syslog시스템 로그 실시간 확인

📊 서버 모니터링 툴 추천

  • Netdata : 실시간 웹 기반 모니터링 (명령: bash <(curl -Ss https://my-netdata.io/kickstart.sh))
  • Glances : 리소스 모니터링 통합 툴 (sudo apt install glances -y)

6. 로그 자동 정리 (Logrotate)

리눅스 서버는 시간이 지날수록 로그 파일이 쌓이면서
디스크 공간을 잡아먹습니다. 이를 자동으로 관리하는 툴이 logrotate입니다.

설정 확인:

sudo nano /etc/logrotate.conf

rotate 7 → 최근 7일만 유지하도록 변경
compress 옵션 활성화 → 오래된 로그를 자동 압축

테스트:

sudo logrotate -f /etc/logrotate.conf

7. 서버 성능 튜닝 기본 팁

  • Swap 메모리 설정: 메모리 부족 시 디스크 공간 일부를 가상 메모리로 활용
  • 불필요한 서비스 중지:
sudo systemctl disable bluetooth.service sudo systemctl disable cups.service
  • Apache 워커 최적화: /etc/apache2/mods-available/mpm_prefork.conf 수정
StartServers 2
MinSpareServers 2
MaxSpareServers 5
MaxRequestWorkers 100
MaxConnectionsPerChild 3000

이렇게 설정하면 저전력 미니PC에서도
워드프레스가 빠르고 안정적으로 동작합니다.


✨ 마무리 — ‘운영’이 진짜 서버의 시작

이제 여러분은 단순히 서버를 “세운 사람”이 아니라
그 서버를 “운영하는 관리자” 입니다.

자동화 스크립트, 보안 점검, 백업 관리만 꾸준히 실행해도
미니PC 홈서버는 오랫동안 안정적으로 유지됩니다.

AWS처럼 거대한 인프라가 아니더라도,
이제 한 대의 미니PC로 지속 가능한 개인 웹서버 생태계를 만든 셈이죠.

다음엔 워드프레스 운영 속도 개선과
트래픽 최적화 방법도 함께 다뤄보겠습니다. 🚀


🪄 워드프레스 홈서버 구축기 시리즈

  1. AWS를 떠나 개인 호스팅 서버로 – 워드프레스 미니PC 서버 구축 도전기
  2. N150 미니PC 개봉기 & 사양 분석 — 홈서버 첫걸음
  3. 우분투(Ubuntu) 설치 및 LAMP 서버 구축 가이드
  4. 도메인 연결과 SSL(HTTPS) 인증서 설정 방법
  5. 자동화 스크립트와 서버 유지관리 팁 — 안정적인 홈서버 운영법

AWS처럼 거대한 클라우드가 아니더라도, 작은 미니PC 하나로도 충분히 안정적이고 빠른 워드프레스 서버를 운영할 수 있습니다.
이 시리즈가 “나도 한 번 해볼까?” 하는 용기를 드릴 수 있길 바랍니다.

[홈서버 구축 4편] 도메인 연결과 SSL(HTTPS) 인증서 설정 가이드

(워드프레스 홈서버 구축 시리즈 4편)

LAMP 환경까지 구축을 끝냈다면, 이제 내 미니PC는 완벽히 작동하는 웹서버가 되었습니다.
하지만 한 가지 아쉬운 점이 남아 있죠.

“내 서버는 잘 돌아가는데, 다른 사람이 주소로 접속하려면 어떻게 하지?”

지금까지는 내부 IP 주소(예: 192.168.50.211)로만 접속할 수 있었지만,
이제 이 서버에 도메인 주소를 연결하면 전 세계 어디서든 접속할 수 있습니다.
그리고 여기에 SSL(HTTPS) 인증서를 적용하면,
보안까지 완벽한 진짜 ‘퍼블릭 서버’로 완성됩니다.


1. 도메인과 DNS의 개념 이해하기

먼저 기본 개념부터 정리해볼까요?

  • 도메인(Domain): 웹사이트의 이름입니다.
    예: steelcrucian.com
  • DNS(Domain Name System): 사람이 읽는 도메인 이름을
    컴퓨터가 이해할 수 있는 IP 주소(예: 110.13.233.181) 로 바꿔주는 시스템입니다.

즉, 도메인은 ‘주소의 별명’ 이고,
DNS는 **‘주소록 서비스’**라고 생각하면 됩니다.


2. 도메인 구매 및 설정

도메인은 카페24, 가비아, Google Domains, Cloudflare 등에서 구입할 수 있습니다.
도메인을 구매했다면, 해당 사이트의 DNS 관리 메뉴로 들어가
다음 정보를 입력합니다.

유형호스트TTL
A 레코드@미니PC의 공인 IP 주소300
CNAMEwww@300

예시 👇

A     @     110.13.233.181
CNAME www   @

💡 공인 IP는 다음 명령으로 확인할 수 있습니다.

curl ifconfig.me

3. 공유기 포트포워딩 설정

외부에서 접속하려면 공유기가 내부 서버로 트래픽을 전달해야 합니다.
이때 사용하는 것이 포트포워딩(Port Forwarding) 입니다.

공유기 설정 화면(보통 192.168.0.1 혹은 192.168.50.1)에 접속 후
다음 항목을 추가하세요.

외부 포트내부 IP내부 포트프로토콜
80192.168.50.21180TCP
443192.168.50.211443TCP

💡 “내부 IP”는 우분투 서버의 IP 주소입니다.
(유선으로 연결 시 ip addr 명령으로 확인 가능)

설정 후 http://내도메인주소 로 접속해보세요.
정상적으로 Apache 기본 화면(It works!)이 뜨면 외부 접속 성공입니다 🎉


4. SSL(HTTPS) 인증서의 개념

SSL(Secure Sockets Layer)은
사용자와 서버 간의 데이터를 암호화해 안전하게 주고받도록 하는 기술입니다.

HTTPS는 바로 이 SSL을 적용한 웹 통신 방식으로,
브라우저 주소창에 🔒 자물쇠 표시가 뜨는 그 기능입니다.

즉,

  • HTTP → 보안 없음 (평문 통신)
  • HTTPS → 암호화된 통신 (보안 강화)

요즘 대부분의 브라우저는 HTTPS가 적용되지 않은 사이트에
“안전하지 않은 사이트” 경고를 띄우기 때문에,
SSL 적용은 사실상 필수 단계입니다.


5. Let’s Encrypt SSL 인증서 설치

가장 많이 사용되는 무료 SSL 인증서 발급 도구는 Certbot입니다.
우분투에서는 다음 명령으로 간단히 설치할 수 있습니다.

sudo apt update
sudo apt install certbot python3-certbot-apache -y

설치가 완료되면 아래 명령을 실행하세요.

sudo certbot --apache

이후 다음과 같은 순서로 진행됩니다:

  1. 도메인 이름 입력 (예: steelcrucian.com, www.steelcrucian.com)
  2. 이메일 입력
  3. 약관 동의(Y)
  4. HTTP → HTTPS 자동 리다이렉트 설정 (Y 선택)

완료 후 브라우저에서 https://내도메인주소 로 접속하면
🔒 자물쇠 아이콘이 표시됩니다.


6. SSL 인증서 자동 갱신 설정

Let’s Encrypt 인증서는 90일마다 자동 갱신이 필요합니다.
하지만 매번 수동으로 갱신할 필요는 없습니다.
리눅스에는 이를 자동화해주는 cron 시스템이 있습니다.

sudo crontab -e

맨 아래에 추가:

0 3 * * * /usr/bin/certbot renew --quiet

→ 매일 새벽 3시에 자동으로 인증서 갱신을 시도합니다.

테스트:

sudo certbot renew --dry-run

“Congratulations!” 메시지가 뜨면 자동 갱신 설정이 정상 작동합니다.


7. SSL 적용 후 Apache 테스트

Apache 서비스 재시작:

sudo systemctl restart apache2

상태 확인:

sudo systemctl status apache2

그리고 브라우저에서 https://도메인주소 로 접속하면
주소창에 자물쇠(🔒) 가 보입니다.
이제 서버와 브라우저 간 모든 통신은 안전하게 암호화되어 전송됩니다.


✨ 마무리 — 내 미니PC가 세상과 연결되는 순간

이제 여러분의 미니PC는 진짜로 세상과 연결된 웹서버입니다.
내가 만든 워드프레스 블로그를
도메인 이름으로 외부에서 접속하고,
HTTPS로 보안까지 적용한 완벽한 서버 환경이 완성되었습니다.

클라우드 없이도, 오직 한 대의 미니PC로
안정적이고 안전한 나만의 웹서버를 운영할 수 있습니다.

다음 편에서는
👉 “자동화 스크립트와 서버 유지관리 팁” 을 통해
이 서버를 장기적으로 안정적으로 관리하는 방법을 다뤄보겠습니다.


🪄 워드프레스 홈서버 구축기 시리즈

  1. AWS를 떠나 개인 호스팅 서버로 – 워드프레스 미니PC 서버 구축 도전기
  2. N150 미니PC 개봉기 & 사양 분석 — 홈서버 첫걸음
  3. 우분투(Ubuntu) 설치 및 LAMP 서버 구축 가이드
  4. 도메인 연결과 SSL(HTTPS) 인증서 설정 방법
  5. 자동화 스크립트와 서버 유지관리 팁 — 안정적인 홈서버 운영법

AWS처럼 거대한 클라우드가 아니더라도, 작은 미니PC 하나로도 충분히 안정적이고 빠른 워드프레스 서버를 운영할 수 있습니다.
이 시리즈가 “나도 한 번 해볼까?” 하는 용기를 드릴 수 있길 바랍니다.

[홈서버 구축 3편] 우분투 설치 및 LAMP 서버 구축 가이드

(워드프레스 홈서버 구축 시리즈 3편)

미니PC를 처음 켜던 날,
화면엔 아무것도 없이 단순한 검은 커서만 깜빡이고 있었습니다.
“그래, 이제 진짜 시작이구나.”

아마존 AWS에서 서버를 만들 때는 몇 번의 클릭이면 끝이었는데,
이번엔 모든 걸 내 손으로 세팅해야 했습니다.
처음엔 괜히 겁이 났지만, 동시에 묘한 설렘이 있었죠.
이 조그마한 미니PC가 나만의 웹서버로 변신한다는 생각에.

이번 편에서는 미니PC에 우분투(Ubuntu) 를 설치하고,
워드프레스가 실행될 기반인 LAMP 서버(Apache + MySQL + PHP) 를 직접 구축해봅니다.
이 과정을 마치면, 여러분의 미니PC는 더 이상 단순한 PC가 아닌 —
진짜 웹서버로 태어납니다.

text

1. 우분투 설치 준비 – 서버의 첫 숨을 불어넣다

먼저 운영체제(OS)를 설치해야 합니다.
서버에서 가장 많이 사용되는 리눅스 배포판 중 하나가 바로 우분투(Ubuntu) 입니다.

📥 우분투 이미지 다운로드

  • 공식 사이트: https://ubuntu.com/download
  • 추천 버전: Ubuntu 22.04 LTS (Long Term Support)
    → 안정성과 장기 지원이 뛰어나 서버용으로 가장 적합합니다.

💽 부팅 USB 만들기

  1. 8GB 이상 USB를 PC에 연결
  2. Rufus 프로그램 실행
  3. 다운로드한 ubuntu-22.04.iso 선택
  4. 파티션 방식: GPT / 파일 시스템: FAT32
  5. “시작” 클릭 후 USB 완성

이제 USB를 미니PC에 꽂고 전원을 켠 뒤,
F7 또는 DEL 키로 BIOS 진입 → 부팅 순서에서 USB를 첫 번째로 설정합니다.

부팅 후 “Install Ubuntu”를 선택하면 설치가 시작됩니다.


2. 우분투 설치 과정

  1. 언어 선택 → 한국어 또는 English
  2. 설치 유형 → Normal Installation (일반 설치)
  3. 디스크 설정 → “Erase disk and install Ubuntu” 선택
  4. 사용자 이름, 비밀번호 설정
  5. 설치 완료 후 재부팅

💡 팁: “Minimal Installation(최소 설치)”를 선택하면 불필요한 GUI 프로그램이 빠져, 서버 성능이 더 가벼워집니다.

설치가 끝나면 터미널(단축키: Ctrl + Alt + T)을 열어,
이제 본격적으로 LAMP 환경을 구축할 준비를 합니다.

A man sitting in front of a computer monitor

3. LAMP란 무엇인가?

워드프레스를 설치하기 전에, 먼저 LAMP라는 단어의 의미부터 짚고 가봅시다.

구성요소역할쉬운 설명
L: Linux운영체제서버의 기반이 되는 뼈대. 우분투가 여기에 해당됩니다.
A: Apache웹서버 소프트웨어사용자의 요청(예: 웹페이지 열기)을 받아 HTML을 브라우저로 보내주는 역할
M: MySQL데이터베이스게시글, 계정정보 등 사이트의 모든 데이터를 저장하고 관리
P: PHP서버 스크립트 언어워드프레스의 코드를 실행해 동적인 웹페이지를 만들어냄

즉,

  • Linux는 무대,
  • Apache는 조명,
  • MySQL은 대본,
  • PHP는 배우
    역할을 맡아 한 편의 “웹사이트 공연”을 완성하는 셈이에요.

4. Apache 설치 – “웹페이지를 보여주는 서버”

sudo apt update
sudo apt install apache2 -y

Apache는 “웹페이지를 사용자에게 전송하는 엔진”입니다.
예를 들어 사용자가 http://yourserver.com 에 접속하면,
Apache가 요청을 받아서 /var/www/html 폴더에 있는 HTML 파일을 브라우저로 보여줍니다.

테스트:

sudo systemctl status apache2

상태가 “active (running)”이면 정상 동작 중입니다.
브라우저에 서버 IP를 입력해 “It works!” 화면이 뜬다면 웹서버 준비 완료 🎉


5. MySQL 설치 – “데이터를 저장하는 뇌”

sudo apt install mysql-server -y
sudo mysql_secure_installation

MySQL은 데이터를 보관하고 관리하는 데이터베이스(DB) 서버입니다.
워드프레스의 게시글, 카테고리, 사용자 정보 등은 전부 여기에 저장됩니다.
한마디로 “워드프레스의 기억력”이죠.

보안 설정 중 루트 비밀번호를 입력하고, 모든 질문에 Y로 응답하세요.

테스트 접속:

sudo mysql -u root -p

비밀번호 입력 후 mysql> 프롬프트가 보이면 성공입니다.


6. PHP 설치 – “사이트를 움직이게 하는 두뇌”

sudo apt install php libapache2-mod-php php-mysql -y

PHP는 워드프레스의 심장과 같습니다.
방문자가 게시글을 클릭할 때마다 PHP가 코드를 실행해
MySQL에서 데이터를 불러오고, Apache를 통해 HTML로 변환해 화면에 보여줍니다.

테스트 파일 생성:

sudo nano /var/www/html/info.php

내용 입력:

<?php phpinfo(); ?>

브라우저에서 http://서버IP주소/info.php 접속 → PHP 정보 페이지가 보이면 정상 작동.
(보안상 테스트 후 반드시 삭제하세요.)

sudo rm /var/www/html/info.php

7. 워드프레스용 추가 PHP 모듈 설치

워드프레스는 다양한 기능을 위해 여러 PHP 확장 모듈을 필요로 합니다.
아래 명령으로 한 번에 설치하세요.

sudo apt install php-curl php-gd php-mbstring php-xml php-xmlrpc php-zip php-soap php-intl -y
sudo systemctl restart apache2

8. 방화벽 설정 및 외부 접속 허용

UFW(우분투 기본 방화벽)를 사용해 웹서버와 SSH만 허용합니다.

sudo ufw allow OpenSSH
sudo ufw allow 'Apache Full'
sudo ufw enable
sudo ufw status

이제 다른 PC에서도 서버IP로 접속이 가능합니다.

💡 만약 외부 접속이 안 된다면 공유기 포트포워딩(80, 443)을 확인하세요.


9. 서버 점검 및 권한 설정

Apache와 MySQL이 정상 동작하는지 확인합니다:

sudo systemctl status apache2
sudo systemctl status mysql

워드프레스 설치 전, 웹폴더 권한도 조정합니다:

sudo chown -R www-data:www-data /var/www/html
sudo chmod -R 755 /var/www/html

이 설정은 웹서버(Apache)가 워드프레스 파일에 접근할 수 있도록 하는 필수 작업입니다.


✨ 마무리 — 이제 미니PC는 진짜 서버입니다

이제 여러분의 미니PC는 단순한 컴퓨터가 아닌,
‘워드프레스를 구동하는 완전한 웹서버’ 가 되었습니다.

LAMP 구조를 이해하고 직접 구축해보면,
“서버가 도대체 어떻게 웹사이트를 보여주는지” 그 원리를 완전히 체득하게 됩니다.
다음 단계에서는
👉 “도메인 연결과 SSL(HTTPS) 인증서 설정” 을 통해
외부에서도 안전하게 접속할 수 있는 진짜 퍼블릭 서버로 발전시켜봅시다.


🪄 워드프레스 홈서버 구축기 시리즈

  1. AWS를 떠나 개인 호스팅 서버로 – 워드프레스 미니PC 서버 구축 도전기
  2. N150 미니PC 개봉기 & 사양 분석 — 홈서버 첫걸음
  3. 우분투(Ubuntu) 설치 및 LAMP 서버 구축 가이드
  4. 도메인 연결과 SSL(HTTPS) 인증서 설정 방법
  5. 자동화 스크립트와 서버 유지관리 팁 — 안정적인 홈서버 운영법

AWS처럼 거대한 클라우드가 아니더라도, 작은 미니PC 하나로도 충분히 안정적이고 빠른 워드프레스 서버를 운영할 수 있습니다.
이 시리즈가 “나도 한 번 해볼까?” 하는 용기를 드릴 수 있길 바랍니다.

[홈서버 구축 1편] AWS를 떠나 개인 호스팅 서버로 – 워드프레스 미니PC 서버 구축 도전기

(워드프레스 홈서버 구축 시리즈 1편) 

몇 년 전만 해도 **‘개인용 미니PC 서버 구축’**이라는 말은 전문가들의 영역처럼 느껴졌습니다.
그때 저는 워드프레스 블로그를 운영하면서 아마존 AWS를 통해 사이트를 호스팅하고 있었죠.

물론 AWS의 안정성과 성능은 매우 뛰어났습니다. 하지만 매달 빠져나가는 호스팅 요금
예상치 못한 트래픽 비용은 점점 부담으로 다가왔습니다.
게다가 서버 구조를 직접 제어하기 어려워 “진짜 내 서버를 갖고 싶다”는 생각이 커지기 시작했습니다.

그러던 중 눈에 들어온 것이 바로 알리익스프레스에서 판매 중인 N150 미니PC였습니다.

최근 인텔의 12세대 N100/N150 셀러론 프로세서
기존 저전력 라인업 대비 성능이 대폭 개선되었고,
전력 소모는 불과 6W 수준에 불과합니다.
벤치마크 점수만 놓고 보면 인텔 6세대 i5 스카이레이크급과 비슷한 성능을 보여줍니다.

제가 선택한 제품은 GMKTech N150 모델로,
CPU는 인텔 N150, 메모리 8GB, SSD 256GB 사양이었습니다.
손바닥만 한 크기에 플라스틱 하우징으로 되어 있고,
팬 소음이 거의 없다는 리뷰들이 특히 인상적이었죠.

‘이걸로 직접 우분투 서버를 돌릴 수 있을까?
그 단순한 호기심이 결국 저를 자가 호스팅의 세계로 이끌게 된 시작점이었습니다.


🚀 미니PC 서버 도입 배경

AWS는 강력하지만, 초보자에게는 설정이 복잡하고 관리가 어렵습니다.
예를 들어 PHP 버전 하나 올리는 것도 SSH로 접속해 설정 파일을 수정해야 하고, 백업 자동화나 SSL 갱신은 늘 긴장의 연속이었죠.
무엇보다, 서버 요금이 매달 빠져나가다 보니 “내가 직접 장비를 돌려보면 어떨까?”라는 생각이 들었습니다.

그래서 선택한 방식이 바로 **‘자가 호스팅(Self-Hosting)’**입니다.
즉, 내가 구매한 미니PC를 직접 웹 서버로 만들어 블로그를 운영하는 것이죠.
이렇게 하면 월 요금은 0원, 전기료만 약간 들 뿐입니다.
게다가 서버가 내 눈앞에 있으니 문제가 생겨도 바로 확인할 수 있습니다.


⚙️ N150 미니PC의 첫인상

배송이 도착하자마자 개봉했습니다.
개인적으로 좋아하는 녹색의 깔끔한 플라스틱 하우징에 HDMI, USB, LAN 포트 등 필요한 연결부가 모두 갖춰져 있었습니다.
기본 장착된 RAM과 SSD는 8GB/256GB였고, 내부를 열어보니 추가 M.2 슬롯도 있어서 추후 확장도 가능했습니다.
서버용도로 쓰기엔 메모리가 아쉬울 것 같아 별도로 16GB 램을 구매하여 교체 업그레이드 하였습니다.

성능은 생각보다 훌륭했습니다.
인텔 N150은 6W의 저전력 CPU지만, 웹 서버나 워드프레스 정도는 충분히 감당 가능한 수준이었습니다.
소음이 거의 없다는 점도 큰 장점이었죠.
하루 종일 켜놔도 팬 소리가 거의 들리지 않았습니다.


🐧 우분투 설치를 선택한 이유

처음에는 윈도우 서버로 운영할까 고민도 했습니다.
하지만 윈도우는 백그라운드에서 불필요한 자원 소모가 많고, 장시간 24시간 구동에는 불안정할 때가 있습니다.
반면 **우분투(Ubuntu)**는 가볍고, LAMP(Apache + MySQL + PHP) 환경을 바로 구성할 수 있습니다.
그래서 서버 전용 OS로 우분투를 선택했습니다.

설치 과정은 생각보다 간단했습니다.
USB에 부팅 디스크를 만들어 BIOS에서 부팅 순서를 바꾸고,
설치 마법사 안내에 따라 계정과 언어를 설정하니 금방 설치가 완료되었습니다.

이때 가장 인상 깊었던 점은 **“명령어 하나하나가 실제로 서버를 움직인다”**는 실감이었습니다.
AWS에서는 클릭 한 번으로 처리되던 부분이 이제는 제 손끝에서 직접 실행된다는 느낌이랄까요.


🌐 워드프레스 이전, 그리고 첫 성공의 순간

서버에 우분투와 LAMP를 세팅한 후,
AWS에서 사용하던 워드프레스 데이터를 All-in-One WP Migration 플러그인을 통해 백업했습니다.
그리고 미니PC 서버에 새 워드프레스를 설치한 뒤 데이터를 복원하니,
놀랍게도 제 블로그가 제 로컬 IP 주소에서 그대로 열렸습니다.

그 순간, ‘이제 진짜 내 서버에서 블로그가 돌아간다’는 뿌듯함이 밀려왔습니다.
이전까지는 클라우드 서버라는 추상적인 공간에서 운영하던 블로그가,
이제는 제 책상 위에 있는 작은 미니PC 안에서 살아 숨쉬고 있는 것이죠.


🔌 서버 운영 후 느낀 장단점

장점

  • 월 요금이 0원 (전기요금 외 추가비용 없음)
  • 서버를 직접 관리하므로 자유도 최고
  • 우분투 환경에서 명령어 기반 실무 경험 습득
  • 트래픽 폭주 시에도 요금 걱정 없음

⚠️ 단점

  • 직접 보안과 업데이트를 관리해야 함
  • 전원/인터넷 끊김 시 접속 불가
  • 설정 실수 시 서버 전체가 멈출 수 있음

그래도 저는 후회하지 않았습니다.
직접 구축하면서 서버 구조를 이해하게 되었고,
‘웹사이트는 누군가의 컴퓨터에서 돌아가는 프로그램일 뿐’이라는 본질을 깨달았으니까요.


🪄 워드프레스 홈서버 구축기 시리즈

  1. AWS를 떠나 개인 호스팅 서버로 – 워드프레스 미니PC 서버 구축 도전기
  2. N150 미니PC 개봉기 & 사양 분석 — 홈서버 첫걸음
  3. 우분투(Ubuntu) 설치 및 LAMP 서버 구축 가이드
  4. 도메인 연결과 SSL(HTTPS) 인증서 설정 방법
  5. 자동화 스크립트와 서버 유지관리 팁 — 안정적인 홈서버 운영법

AWS처럼 거대한 클라우드가 아니더라도, 작은 미니PC 하나로도 충분히 안정적이고 빠른 워드프레스 서버를 운영할 수 있습니다.
이 시리즈가 “나도 한 번 해볼까?” 하는 용기를 드릴 수 있길 바랍니다.