• 2024/05/18

※ 이 연재는 GCP에서 리눅스 환경, 웹 서버, 최종적으로 워드프레스를 구성할 수 있도록 하기 위함입니다.
※ 저는 전문 프로그래머나 웹 개발자가 아니기 때문에, 최대한 제가 아는 선에서 설명하고자 합니다.
※ Revision 0 / 2020. 05. 15 – 최초 작성

 

PuTTY로 접속, 그리고 업데이트

직전에서 설정한 PuTTY 세팅으로 VM 인스턴스에 접속합니다.

최초 접속이므로 Ubuntu의 패키지 리스트 및 현재 설치된 패키지들을 업데이트 합니다.

패키지 리스트 업데이트 : $ sudo apt update

설치된 패키지 업데이트 : $ sudo apt upgrade

 

위 명령들을 입력하여 진행하면, 계속 진행하겠냐는 질문을 던집니다.
이때, ‘y’를 입력하여 설치된 패키지들의 업데이트를 진행해 주도록 합시다.

 

Apache2 설치(웹서버 패키지)

Apache2 설치 명령어 : $ sudo apt install apache2

 

위 명령어를 입력하면, 아까와 같이 ‘y’를 입력하여 apache2 의 설치를 진행하도록 합시다.

이제, 웹 브라우저로 VM 인스턴스에 부여된 외부 IP로 접속 테스트를 해야하지만, 대부분의 경우 곧바로 접속할 수 없을 겁니다.
이유는 네트워크 규칙에서 http 프로토콜 관련 포트를 허용하지 않아서인 경우가 높기 때문에, 이것을 설정해주도록 합시다.

 

GCP 콘솔의 VM 인스턴스 목록으로 가서, 지금 작업중인 VM 인스턴스 행의 맨 끝 점 세개를 클릭하면 세부 메뉴가 나옵니다.
이 중에서 네트워크 세부정보 보기를 선택하면, VPC 네트워크 대시보드로 넘어갈 수 있습니다.

 

대시보드에서는 위와 같은 상태가 뜰 수 있습니다. 위에서는 딱 봐도 http 및 https 의 포트가 허용되어 있지 않습니다.
따라서 우리는 http(port 80)와 https(443)을 추가해주어야 합니다.

 

http와 https 접속을 위한 방화벽 규칙의 추가

대시보드 왼쪽 메뉴 중 ‘방화벽 규칙’ 메뉴로 이동하면 생기는 상단 줄의 ‘방화벽 규칙 만들기’를 선택합니다.

 

1) 이름 : default-allow-http
2) 로그 : 사용안함
3) 네트워크 : default
4) 우선순위 : 1000
5) 트래픽 방향 : 수신
6) 일치 시 작업 : 허용
7) 대상 : 네트워크의 모든 인스턴스
8) 소스 필터 : IP 범위
9) 소스 IP 범위 : 0.0.0.0/0
10) 보조 소스 필터 : 없음
11) 프로토콜 및 포트 : 지정된 프로토콜 및 포트 – tcp 에 체크 – 80

위와 같이 설정하고, 만들기를 실행합니다.

https를 추가적으로 만드실 경우에는 ‘이름’에는 default-allow-https 를, 프로토콜 및 포트에 숫자 80 대신에 숫자 443 으로 설정하고, 하나 더 만드시면 됩니다.

 

방화벽 규칙이 추가가 완료되면 위와 같이 두 가지, http와 https의 포트 접속이 허용됩니다.

이제, VM 인스턴스의 외부 IP를 브라우저에 입력하여 Apache2 Ubuntu Default Page가 로딩 되는지 확인합니다.

 

잘 되는 모습을 확인했습니다.
이제 바로 MySQL과 PHP를 설치하도록 합시다.

 

MySQL – 서버 패키지 설치

MySQL은 이 시리즈의 최종 단계에서 사용하고자 하는 워드프레스 엔진에서 사용할 데이터베이스 프로그램 중 하나입니다.

MySQL 설치 명령 : $ sudo apt install -y mysql-server

 

위 명령어를 입력하여 MySQL을 설치합니다. 이때, install 다음의 ‘-y’ 파라미터는 설치 여부를 묻는 [Y/n] 질문에서 y로 대답하겠다는 의미입니다.
MySQL의 설치가 끝났다면, 이제 데이터베이스 보안 설치를 실행해야합니다.

명령어 : $ sudo mysql_secure_installation

 

패스워드 설정시 1의 경우에는 대소문자 혼합, 숫자 및 특수문자 사용입니다. 나머지는 위와 같이 진행해줍니다.
모든 설정이 완료되면 All done! 메세지가 뜨며, 프롬프트 상태가 됩니다.

이제 mysql을 실행합니다.

명령어 : $ sudo mysql

만약 암호를 물어본다면, 조금 전 mysql_secure_installation 을 통해 설정했던 암호를 입력하시면 됩니다.

 

MySQL – 사용자, 데이터베이스 추가

root로 계속 쓰기에는 보안 상의 문제가 있어 찝찝하니, 사용자 추가를 해서, 그 사용자를 기준으로 사용하도록 합시다.

 

사용자 추가 명령어 : mysql> create user 사용자명 identified by '패스워드';
워드프레스용 데이터베이스 추가 : mysql> create database wp_db;
새로 생성한 사용자에게 권한 부여 : mysql> GRANT ALL PRIVILEGES ON wp_db.* TO '사용자명'@'localhost' identified by '패스워드';
mysql 갱신 : mysql> flush privileges;

위 명령어를 통해 데이터베이스와 관련해서는 완료되었습니다.
만약 워드프레스용 데이터베이스의 이름을 예제와 다른 것으로 했다면, 새로 생성한 사용자에게 권한을 부여할때도 wp_db.* 가 아니라 새로 지정한 데이터베이스 이름.* 가 되어야 합니다.

이제 생성한 사용자로 mysql 에 접속되는지 확인합니다.

 

추가된 사용자로 mysql> show databases;를 통해 확인한 결과 조금 전 만들었던 wp_db가 잘 보입니다.

 

정리 및 다음 단계

이번에는 LAMP(Linux + Apache2 + MySQL + PHP) 설치 단계 중에서 Apache2와 MySQL의 설치에 대해 진행했습니다.
모두 워드프레스를 비롯하여, VM에서 웹서비스를 수행하고자 하는 경우에 구축하게 되는 기본적인 필수 패키지들입니다.

다음 단계는 PHP 패키지의 설치와 워드프레스의 설치 및 세팅에 대한 내용으로 진행됩니다.
아마, 다음 단계가 마지막이 될 지도 모르겠습니다.

 

[series_list_posts]

Leave a Reply

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