AWS Lightsail로 WordPress 블로그 구축하기 — 인스턴스 생성부터 플러그인 설정까지

"☕" 7 "min read"

개발자 블로그를 시작하려면 플랫폼 선택부터 서버 구축까지 결정할 게 많습니다. 이 글에서는 AWS Lightsail에 Bitnami WordPress를 올려서 기술 블로그를 구축한 전체 과정을 정리합니다. 인스턴스 생성, 도메인 연결, SSL 설정, 플러그인 구성까지 한 번에 다룹니다.


1. 왜 AWS Lightsail을 선택했는가

블로그 호스팅 선택지는 여러 가지가 있습니다.

선택지월 비용장점단점
가비아/카페24 호스팅5,000~10,000원관리 편함커스터마이징 제한, 성능 한계
AWS EC2가변 (t3.micro 기준 ~15,000원)완전한 제어권비용 예측 어려움, 설정 복잡
AWS Lightsail$5~(약 6,500원)고정 비용, 충분한 성능EC2 대비 유연성 제한
Vercel/Netlify + Headless CMS무료~$20빠른 속도WordPress 생태계 사용 불가

Lightsail을 선택한 이유는 비용 대비 효율이었습니다. 월 고정 비용으로 예측 가능하고, Bitnami WordPress 패키지로 초기 설정이 간편하며, 필요하면 나중에 EC2로 마이그레이션도 가능합니다. 개인 기술 블로그 수준에서 EC2의 유연성은 오버스펙이었습니다.


2. Lightsail 인스턴스 생성

2-1. 인스턴스 스펙 선택

AWS Lightsail 콘솔에서 인스턴스를 생성합니다.

Lightsail 콘솔에서 WordPress(Bitnami) 블루프린트 선택 화면
인스턴스 위치: 서울 리전 (ap-northeast-2)
플랫폼: Linux/Unix
블루프린트: WordPress (Bitnami)
인스턴스 플랜: 2 vCPU, 1GB RAM

Bitnami WordPress 블루프린트를 선택하면 Apache, MariaDB, PHP-FPM, WordPress가 모두 미리 설치된 상태로 인스턴스가 생성됩니다. 별도의 LAMP 스택 설치 없이 바로 WordPress를 사용할 수 있습니다.

1GB RAM이 WordPress에 충분한가? 개인 블로그 수준에서는 충분합니다. 다만 플러그인을 많이 설치하거나 트래픽이 늘어나면 2GB 플랜으로 업그레이드를 고려해야 합니다. 캐시 플러그인(WP Super Cache 등)을 설치하면 1GB로도 상당한 트래픽을 감당할 수 있습니다.

2-2. 고정 IP 할당

Lightsail 인스턴스는 기본적으로 재시작할 때마다 퍼블릭 IP가 변경됩니다. 도메인을 연결하려면 고정 IP(Static IP)가 필수입니다.

  1. Lightsail 콘솔 → 네트워킹 탭 → 고정 IP 생성
  2. 생성한 고정 IP를 인스턴스에 연결
Lightsail 네트워킹 탭에서 고정 IP 생성 및 인스턴스 연결 화면

고정 IP는 인스턴스에 연결되어 있는 동안은 무료입니다. 연결하지 않은 채 방치하면 과금되므로 주의하세요.


3. 도메인 연결

3-1. 도메인 구매

도메인은 호스팅케이알(hosting.kr)에서 구매했습니다. .blog 도메인은 첫 해 연간 약 6,000원으로 비교적 저렴합니다.

도메인 등록 업체 비교 (2026.01기준) :

업체.blog 첫 해갱신 비용특징
호스팅케이알~6,000원~25,000원한국어 지원, 국내 결제
Namecheap~$3~$20해외 인기, WhoisGuard 무료
Route 53--도메인 등록도 가능하지만 .blog 미지원
가비아~8,000원~30,000원국내 최대, 한글 도메인 지원

3-2. DNS 설정

호스팅케이알에서 구매한 도메인의 DNS 설정에서 Lightsail 고정 IP를 연결합니다.

호스팅케이알 DNS 관리 화면에서 A 레코드 입력 설정
타입: A 레코드
호스트: @
: [Lightsail 고정 IP]
TTL: 3600

타입: A 레코드
호스트: www
값: [Lightsail 고정 IP]
TTL: 3600Code language: HTTP (http)

DNS 전파에는 최대 48시간이 걸릴 수 있지만, 보통 30분~1시간 내에 완료됩니다. nslookup 또는 dig 명령어로 전파 상태를 확인할 수 있습니다.

# DNS 전파 확인
nslookup digestive-coffee.blog
# 또는
dig digestive-coffee.blog +shortCode language: CSS (css)

4. SSL 인증서 설정 (Let’s Encrypt)

HTTPS는 SEO와 보안 모두에서 필수입니다. Bitnami WordPress에서는 Let's Encrypt 인증서를 간편하게 설정할 수 있습니다.

4-1. Bitnami HTTPS 설정 도구 실행

SSH로 Lightsail 인스턴스에 접속한 후 Bitnami의 HTTPS 설정 도구를 실행합니다.

# Lightsail 콘솔에서 SSH 접속 또는 로컬 터미널에서:
ssh -i [키파일경로] bitnami@[고정IP]

# Bitnami HTTPS 설정 도구 실행
sudo /opt/bitnami/bncert-toolCode language: PHP (php)

bncert-tool은 대화형으로 진행됩니다.

- 도메인 입력: digestive-coffee.blog www.digestive-coffee.blog
- HTTPHTTPS 리디렉션: Y
- wwwnon-www 리디렉션 (또는 반대): 선택
- 이메일 주소 입력: (인증서 만료 알림용)
- 동의 후 자동 설치 및 갱신 설정 완료Code language: CSS (css)

4-2. 자동 갱신 확인

Let's Encrypt 인증서는 90일마다 갱신이 필요합니다. bncert-tool이 자동으로 cron job을 등록해줍니다.

# 자동 갱신 cron 확인
sudo crontab -l | grep certbot
# 또는
sudo crontab -l | grep letsencryptCode language: PHP (php)

수동으로 갱신을 테스트하려면:

# 갱신 테스트 (실제 갱신하지 않고 시뮬레이션)
sudo /opt/bitnami/ctlscript.sh stop
sudo /opt/bitnami/letsencrypt/lego --tls --email="your@email.com" --domains="digestive-coffee.blog" --path="/opt/bitnami/letsencrypt" renew --days 90
sudo /opt/bitnami/ctlscript.sh startCode language: PHP (php)

5. WordPress 초기 설정

5-1. 관리자 비밀번호 확인 및 변경

Bitnami WordPress는 설치 시 임시 비밀번호를 생성합니다.

# 초기 관리자 비밀번호 확인
cat /home/bitnami/bitnami_credentialsCode language: PHP (php)

출력 예시:

Welcome to the Bitnami WordPress Stack
******************************************************************************
The default username and password is 'user' and '[임시 비밀번호]'.
******************************************************************************Code language: JavaScript (javascript)

WordPress 관리자 페이지(https://도메인/wp-admin)에 접속하여 비밀번호를 즉시 변경합니다.

5-2. 사이트 기본 설정

WordPress 관리자 → 설정 → 일반에서 기본 정보를 설정합니다.

사이트 제목: digestive-coffee
태그라인: (블로그 설명)
WordPress 주소(URL): https://digestive-coffee.blog
사이트 주소(URL): https://digestive-coffee.blogCode language: JavaScript (javascript)

5-3. 필수 페이지 작성

블로그 운영에 필요한 기본 페이지들을 작성합니다.

  • About: 블로그 소개 및 작성자 프로필
  • Privacy Policy: 개인정보 처리방침 (Google AdSense, Analytics 사용 시 필수)
  • Contact: 연락처 페이지

5-4. 퍼머링크 설정

SEO에 유리한 퍼머링크 구조를 설정합니다.

WordPress 관리자 → 설정 → 퍼머링크:

WordPress 관리자 퍼머링크 설정 화면 - 글 이름(Post name) 선택
구조: 글 이름 (Post name)
예시: https://digestive-coffee.blog/sample-post/Code language: HTTP (http)

이 구조가 SEO에 가장 유리합니다. 날짜나 카테고리를 URL에 포함하면 URL이 길어지고, 나중에 카테고리를 변경할 때 URL이 깨질 수 있습니다.

5-5. 카테고리 설정

블로그 주제에 맞는 카테고리를 미리 구성합니다.

카테고리 예시:
- java (Java/Spring 관련)
- aws (AWS 인프라)
- devops (CI/CD, 모니터링)
- database (Oracle, Redis)
- etc (기타 개발 이야기)

6. 플러그인 설정

WordPress의 강점은 플러그인 생태계입니다. 기술 블로그 운영에 필요한 플러그인들을 설치했습니다.

SEO 및 분석

플러그인용도설명
Rank Math SEOSEO 최적화메타 태그, 사이트맵, 구조화 데이터 자동 생성
Site Kit by GoogleGoogle 연동Analytics, Search Console, AdSense 통합 대시보드
Reading Time WP읽기 시간 표시글 상단에 예상 읽기 시간 자동 표시

보안

플러그인용도설명
Wordfence Security방화벽 + 악성코드 스캔무료 버전으로도 기본 보안 충분

보안은 플러그인만으로 완벽하지 않습니다. 이전에 Lightsail 인스턴스에서 크립토마이너에 감염된 경험이 있었기 때문에, 서버 레벨 보안(SSH 키 관리, 포트 제한 등)도 함께 신경 써야 합니다.

성능

플러그인용도설명
WP Super Cache페이지 캐싱정적 HTML 캐시로 서버 부하 감소

콘텐츠 작성

플러그인용도설명
Syntax-highlighting Code Block코드 하이라이팅서버 사이드 렌더링으로 코드 블록 문법 강조
WP Mermaid다이어그램 렌더링Mermaid.js 다이어그램을 글 내에서 렌더링
Simple Custom CSS and JS커스텀 스타일테마 수정 없이 CSS/JS 추가

운영

플러그인용도설명
UpdraftPlus백업/복원자동 백업 스케줄, 클라우드 저장소 연동
WP Mail SMTP이메일 발송WordPress 이메일이 스팸으로 분류되는 문제 해결

7. Bitnami 배너 제거

Bitnami WordPress를 설치하면 페이지 우측 하단에 Bitnami 로고 배너가 표시됩니다. 이를 제거하려면:

# SSH 접속 후
sudo /opt/bitnami/apps/wordpress/bnconfig --disable_banner 1
sudo /opt/bitnami/ctlscript.sh restart apacheCode language: PHP (php)

또는 최신 Bitnami 스택에서는:

sudo /opt/bitnami/scripts/bnconfig --disable_banner 1
sudo /opt/bitnami/ctlscript.sh restart

8. 추가 고려사항

비용 정리

현재 운영 중인 블로그의 월 비용입니다.

AWS Lightsail 인스턴스 (2 vCPU, 1GB): $10/월 (약 13,000원)
도메인 (digestive-coffee.blog): 약 6,000원/년 (월 환산 500원)
──────────────────────────────────────────────
월 합계: 약 13,500원

Lightsail은 첫 3개월 무료 프로모션을 제공하는 경우가 있으니, 가입 시점에 확인해보세요. $3.50 플랜(1 vCPU, 512MB)도 개인 블로그에는 동작하지만, WordPress + 플러그인 여러 개를 돌리면 메모리가 빠듯할 수 있습니다.

백업 전략

UpdraftPlus를 설정하여 자동 백업을 구성하는 것을 권장합니다.

백업 주기: 주 1회
보관 기간: 최근 4주
백업 대상: 파일 + 데이터베이스
저장 위치: Google Drive 또는 S3

Lightsail 자체적으로도 스냅샷 기능을 제공합니다. 자동 스냅샷을 활성화하면 인스턴스 전체를 매일 백업할 수 있습니다. 다만 스냅샷은 추가 비용이 발생합니다 (GB당 $0.05/월).

WPML 다국어 설정

기술 블로그를 한국어/영어 두 언어로 운영하려면 WPML 플러그인을 설치합니다.

설정 방식: 서브디렉토리 (권장)
한국어: https://digestive-coffee.blog/ko/글-슬러그/
영어:   https://digestive-coffee.blog/en/글-슬러그/Code language: JavaScript (javascript)

서브디렉토리 방식을 선택한 이유:

  • 서브도메인(ko.domain.com) 대비 SEO 권한이 메인 도메인에 집중됨
  • Google Search Console에서 하나의 속성으로 관리 가능
  • SSL 인증서를 별도로 발급할 필요 없음

9. 마무리

핵심을 세 줄로 요약합니다.

  1. AWS Lightsail + Bitnami WordPress 조합은 월 13,500원 수준으로 기술 블로그를 운영할 수 있는 가장 가성비 좋은 선택입니다.
  2. SSL(Let's Encrypt), 보안(Wordfence), 캐싱(WP Super Cache), SEO(Rank Math)는 블로그 구축 시 반드시 설정해야 하는 4가지 필수 요소입니다.
  3. Bitnami 패키지의 bncert-tool을 활용하면 SSL 설정과 자동 갱신을 한 번에 해결할 수 있습니다.

다음 글에서는 Rank Math SEO 설정과 Google Search Console 연동을 통해 기술 블로그의 검색 노출을 최적화하는 방법을 다룰 예정입니다.

Y

yshyuk

Java 백엔드 개발자 | Spring, AWS, DevOps
2020년부터 Java/Spring boot 서버 개발자로 일하면서, 인프라(AWS/NCP), DevOps 업무를 병행하였고, 현재는 OpenSource 기여에도 관심을 가지고 있습니다.

조회수: 1