Oracle Cloud Always Free VPS에 LAMP 서버 설치

Oracle Cloud는 Always Free VPS를 통해 누구나 비용 부담 없이 클라우드 환경을 체험할 수 있는 기회를 제공합니다. 특히, 웹 개발자나 서버 운영을 연습하고 싶은 분들에게는 최적의 플랫폼인데요. 이번 포스팅에서는 Oracle Cloud Always Free VPS에 LAMP 서버 설치 과정을 하나하나 자세히 설명드리겠습니다. 이 글을 따라 하면 손쉽게 자신만의 웹 서버를 구축할 수 있습니다.

Oracle Cloud Always Free VPS란?

Oracle Cloud의 Always Free VPS는 Ampere A1 ARM 기반으로 4 OCPU와 24GB 메모리를 무료로 제공하는 파격적인 서비스입니다. 다음과 같은 특징이 있습니다:

  • 월 4 OCPU + 24GB 메모리까지 무료
  • ARM 아키텍처 기반의 Ampere Altra CPU
  • Ubuntu, Oracle Linux, CentOS 등 다양한 OS 선택 가능
  • 고정 공인 IP 제공
  • 99.95% 가용성의 SLA

이러한 성능과 무료 정책 덕분에 개발자, 스타트업, 개인 프로젝트에 아주 유용하게 활용할 수 있으며, LAMP 서버와 같은 웹 호스팅 환경 구축도 문제 없이 가능합니다.

LAMP 서버란?

LAMP는 다음 네 가지 요소로 구성된 웹 서버 환경입니다:

  • Linux: 운영체제
  • Apache: 웹 서버
  • MySQL (또는 MariaDB): 데이터베이스 서버
  • PHP: 서버 측 스크립트 언어

LAMP 스택은 오픈소스 기반이며, WordPress 같은 CMS를 설치하기 위한 기본 환경으로 많이 사용됩니다. Oracle Cloud의 Ubuntu 22.04 VPS 환경에서는 LAMP 설치가 매우 간단하며, 설치 후 웹 서비스까지 빠르게 시작할 수 있습니다.

LAMP 서버 설치 전 준비 사항

LAMP 설치를 위해 다음 항목을 준비합니다:

  1. Oracle Cloud 계정
  2. Always Free VPS 생성 (Ubuntu 22.04 추천)
  3. SSH 클라이언트 (Windows는 PuTTY 또는 WSL, macOS/Linux는 기본 터미널)
  4. 보안 목록에서 포트 80, 443, 22 열기

먼저, OCI 콘솔에서 VPS를 생성하고 공인 IP를 확인한 다음, 다음 명령어로 SSH 접속합니다:

ssh ubuntu@<your-public-ip>

Apache 설치

Apache는 웹 요청을 처리하는 가장 널리 사용되는 웹 서버입니다. 설치 명령은 다음과 같습니다:

sudo apt update
sudo apt install apache2 -y

설치 후 서비스 상태를 확인해봅니다:

sudo systemctl status apache2

브라우저에서 http://<your-public-ip>에 접속해 기본 Apache 페이지가 뜨면 정상적으로 설치된 것입니다.

MySQL (또는 MariaDB) 설치

데이터베이스 서버로는 MySQL 또는 MariaDB를 사용할 수 있습니다. MariaDB는 MySQL의 포크이며 거의 동일한 방식으로 사용됩니다:

sudo apt install mariadb-server -y
sudo systemctl start mariadb
sudo systemctl enable mariadb

보안 설정을 위해 다음 명령어를 실행합니다:

sudo mysql_secure_installation

root 비밀번호 설정과 익명 사용자 제거, 원격 접속 차단 등을 설정합니다.

PHP 설치 및 Apache 연동

PHP는 Apache와 함께 사용되어 동적인 웹 페이지를 처리합니다. 설치 명령은 다음과 같습니다:

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

설치 후 Apache를 재시작하여 PHP 연동을 적용합니다:

sudo systemctl restart apache2

PHP 동작 확인을 위해 테스트 파일을 만들어 봅니다:

echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php

브라우저에서 http://<your-public-ip>/info.php에 접속해 PHP 설정 화면이 뜨면 정상적으로 작동 중입니다.

방화벽 및 포트 설정 확인

Oracle Cloud는 인스턴스 레벨 외에도 **보안 목록(Security Lists)**을 설정해야 합니다. 다음 포트를 열어야 합니다:

  • 22: SSH 접속
  • 80: HTTP 웹 서비스
  • 443: HTTPS 웹 서비스

OCI 콘솔 → VCN 설정 → 보안 목록 → 인그레스 규칙 추가에서 위 포트들을 허용해 주세요.

Q&A

Q. Oracle Cloud Always Free VPS는 진짜 완전 무료인가요?

네, Oracle Cloud의 Always Free VPS는 완전 무료입니다. 조건 없이 4 OCPU와 24GB 메모리를 제공하며, 저장공간 200GB까지 사용할 수 있습니다. 다만, 트래픽 사용량이 급격하게 많거나, 장기간 사용이 없을 경우 리소스 회수 가능성이 있으므로 정기적인 로그인과 상태 체크를 추천드립니다. 특히, 무료 계정은 하루에 1~2시간 정도라도 꾸준히 사용하면 안정적으로 유지할 수 있습니다.

Q. ARM 기반 서버에 LAMP 설치 시 호환성 문제가 없을까요?

최근 대부분의 오픈소스 소프트웨어는 ARM 아키텍처를 기본적으로 지원합니다. Ubuntu, Apache, MariaDB, PHP 등은 ARM 기반에서도 안정적으로 작동하며, 패키지 설치 시 별다른 설정 없이도 기본 리포지터리에서 지원됩니다. 다만, 일부 외부 패키지나 상용 소프트웨어는 아직 ARM 아키텍처를 완전히 지원하지 않을 수 있으므로, 필요한 경우 소스 빌드를 통해 설치하거나 대안을 찾아야 합니다.

Q. LAMP 설치 후 보안을 어떻게 강화할 수 있나요?

보안을 강화하기 위해 다음과 같은 조치를 취해야 합니다:

  1. ufw를 통한 포트 제한 설정 (sudo ufw allow 'Apache Full')
  2. MySQL root 계정의 비밀번호 설정 및 원격 접속 차단
  3. /var/www/html의 권한 설정 (sudo chown -R www-data:www-data)
  4. Apache 보안 모듈 활성화 (mod_security)
  5. SSH 접속 시 포트 변경 및 키 인증 방식 사용

추가로 Let’s Encrypt를 통해 HTTPS 인증서를 적용하면 트래픽 보호도 가능합니다. 이를 위해 certbot을 설치하고 인증서를 자동 갱신하도록 설정하는 것을 권장합니다.

Q. WordPress 같은 CMS도 설치 가능한가요?

물론 가능합니다. LAMP 스택이 완성되면 WordPress는 금방 설치할 수 있습니다. 다음 단계로는:

  1. WordPress 공식 홈페이지에서 최신 버전 다운로드
  2. /var/www/html에 업로드 및 압축 해제
  3. DB 생성 및 wp-config.php 설정
  4. 웹 브라우저를 통해 설치 마법사 실행

WordPress는 PHP와 MySQL 기반으로 만들어졌기 때문에 LAMP 환경과 완벽하게 호환됩니다. 특히 ARM VPS에서도 매우 빠르게 작동하는 것이 장점입니다.