콘텐츠로 건너뛰기
Home » 아마존 라이트세일(Lightsail)로 워드프레스 이전 및 설치 하는 방법

아마존 라이트세일(Lightsail)로 워드프레스 이전 및 설치 하는 방법

저는 티스토리 블로그 외에 “워드프레스”로 별도의 사이트를 운영중입니다. 호스팅 서비스는 Siteground 라는 해외 서비스를 이용하고 있는데요, Siteground의 서비스는 이용하기에 불편함은 없지만 이번에 기한 만료 기일이 다가오면서 Siteground의 호스팅 서비스를 1년 더 연장할지 다른 호스팅 서비스를 사용할지 선택의 기로에 놓여 있었습니다.

Siteground의 웹 호스팅 서비스를 이용하였고 속도나 자원은 그럭저럭 사용할만 했지만 가격적인 측면에서 1년 연장시 지불하는 비용은 제 예상보다 더 많이 나가서 고민이 되던 찰나에 가격 대비 가성비가 아주 좋은 호스팅 서비스를 알게 되었습니다. 바로 “Amazon Lightsail(아마존 라이트세일)” 입니다. 

아마존 라이트세일은 VMware나 Virtual Box와 같이 네트워크 상에서 가상 서버를 임대하여 사용하는 서비스를 의미합니다. 제가 사용하던 웹 호스팅 서비스는 웹 서버의 공간과 데이터 서비스를 임대하여 사용하였지만 아마존 라이트세일 같이 가상 서버는 지정된 용량의 공간을 마음껏 사용할 수 있어서 웹 서버 뿐만 아니라 다른 별도의 서버들도 사용자 임의대로 사용이 가능합니다. 

월 3.5 달러 정도의 가격에 메모리 512 MB, 1코어 프로세서, 20 GB의 SSD 디스크, 1 TB의 트래픽 용량은 다른 호스팅 업체의 가격에 비해 매우 매력적인 조건입니다. 웹 호스팅에 비해 서버 셋팅과 프로그램 설치등의 번거로운 작업이 동반되지만 가격적 메리트로 인해 이 모든 번거로운 점들을 상쇄할 수 있을꺼 같습니다. 

특히 20 GB의 하드 디스크 용량 내에서 자원을 마음껏 활용할 수 있는 가성 서버는 리눅스를 취급하거나 공부하는 엔지니어 및 개발자들에게 아주 좋은 서비스가 될 수 있습니다. 저 또한 리눅스를 좋아하는 사람으로써 “아마존 라이트세일”로 워드프레스 사이트를 이전하기로 결정하였습니다. 

따라서 “아마존 라이트세일”로 워드프레스 사이트를 이전하면서 관련 내용들을 본 포스팅을 통해 공유해 보도록 하겠습니다. “아마존 라이트세일”로 워드프레스 사이트를 이전하거나 새로 “워드프레스” 사이트를 개설하려는 사용자분들에게 참고가 되었으면 합니다. 

아마존 라이트세일 가입하기

먼저 “아마존 라이트세일”을 사용하기 위해서는 라이트세일에 계정을 신규로 개설해야 합니다. 계정은 AWS 계정을 신규로 생성하면 됩니다. 

위 링크에 접속해서 “AWS 계정 생성” 버튼을 눌러서 AWS 계정에 우선 가입을 진행합니다.

우측 상단의 “AWS 계정 생성” 버튼을 누르면 위 화면과 같이 AWS 계정 가입란이 나타납니다. 위 항목에서 항목을 입력한 다음에 “동의하고 계정 만들기” 버튼을 누릅니다. 

다음에 나타난 화면에서 계정유형을 일반 개인 유저라면 “개인”으로 선택을 해줍니다. (추후에 변경 가능합니다.) 전화번호와 국가, 주소, 우편번호를 입력해주고 필수 조건에 체크 한후에 “계정을 만들고 계속 진행” 버튼을 눌러줍니다. 주소는 영문으로 입력해 줍니다. 

다음에는 가입자의 결제 정보를 등록하는 화면이 나타납니다. 아마존 라이트세일을 비롯하여 AWS 관련 서비스들의 과금을 위해서는 AWS 계정 가입자의 결제용 카드 정보를 등록해야 합니다. 카드는 해외 승인이 가능한 카드 번호를 기입하면 됩니다. 카드 소유자 이름은 카드 발급시 등록했던 영문 이름을 기입해 주면 됩니다. 

청구지 주소의 경우에는 “내 연락처 주소 사용”을 일반적으로 선택해 주면 됩니다. 저의 경우에는 주소의 기재가 잘못되어서 “새 주소 사용”을 선택하여 추가로 주소를 기입하였습니다. 기입이 끝났으면 “보안 전송”을 누릅니다. 

결제 정보가 정상적으로 등록이 되었으면 조금 이따가 자신의 카드로 “1달러”가 결제가 됩니다. “1달러” 결제는 승인후에 자동적으로 취소가 됩니다. 그다음에 위의 자격증명확인 화면이 나타나는데요, 여기서 본인의 휴대폰 번호로 확인 코드를 전송하여 자격증명을 확인하게 됩니다. 

저는 문자메시지로 하였으며, 국가는 대한민국으로 선택하고 보안 검사 문자를 입력 후에 “SMS 전송” 버튼을 누릅니다. 그런 다음에 자신의 휴대폰으로 확인 코드가 도착하게 됩니다.

전송 받은 코드를 위의 화면에 입력후 “코드 확인”을 누르면 증명 확인 절차가 완료됩니다. 

다음으로는 지원 플랜을 선택하는 화면이 나타납니다. 여기서는 별다른 선택 옵션 없이 “기본 플랜”을 선택하면 됩니다. 

드디어 AWS 계정 가입이 완료되었습니다. “콘솔에 로그인” 버튼을 눌러서 AWS 콘솔에 로그인을 하면 “아마존 라이트세일”의 인스턴스 생성이 가능합니다. AWS 계정 정보를 잘 기억해 놓으시기 바랍니다. 

AWS 콘솔에서 아마존 라이트세일 인스턴스 생성

이제 AWS 계정 가입이 완료되었으니 아마존 라이트세일을 신규로 이용할수 있게 되었습니다. 먼저 자신이 가입했던 계정으로 로그인을 하면 “AWS Management Console”로 접속이 됩니다.

AWS Management Console 의 접속화면

AWS Management Console에서는 계정 사용자가 이용할 수 있는 서비스들을 설정할 수 있습니다. 일단 먼저 위의 화면에서와 같이 오른쪽 상단의 리비전을 “서울”로 변경해 줍니다. 그 다음으로 “Lightsail을 사용하여 가상 서버 구축” 을 클릭하면 본격적으로 라이트세일 설정 단계로 들어갑니다. 

라이트세일 페이지로 접속하면 사용언어를 선택한 후에 위와 같이 라이트세일 인스턴스를 바로 생성하겠냐는 메시지가 나타납니다. 일단은 “나중에 생성함”을 클릭합니다. 

현재는 AWS 계정을 신규로 가입하고 기존에 생성해 놓은 인스턴스가 없기 때문에 위의 화면과 같이 인스턴스가 없다는 메시지를 볼 수 있습니다. 아마존 라이트 세일은 “인스턴스” 라는 가상 서버를 생성하여 서버를 구동하기 때문에 “인스턴스”를 필히 사용자가 생성을 해줘야 구동시킬 수 있습니다. Vmware나 VirtualBox 같이 가상디스크를 생성하는 과정과 비슷하다고 보시면 되겠습니다.

그럼 “인스턴스”를 생성해 볼까요? 위의 화면에서 “인스턴스 생성” 버튼을 누르면 됩니다. 

“인스턴스 생성” 버튼을 누르면 위와 같이 인스턴스 이미지를 선택할 수 있는 화면이 나타납니다. 먼저 “인스턴스 위치”가 “서울” 인지를 확인합니다. AWS 데이터 센터가 최근에 서울에도 생겨서 리전을 서울로 설정하면 좀더 빠른 네트워크 속도로 이용할 수 있습니다. 

다음으로 “인스턴스 이미지”를 선택해야 하는데요 플렛폼은 워드프레스를 이전하거나 설치하기 때문에 일반적으로 리눅스를 선택합니다. (Windows는 별도로 워드프레스 패키지가 지원되지 않습니다.)

“블루프린트”의 경우에는 엡 + OS 로 되어 있느 패키지를 사용할껀지 아니면 순수하게 OS만 사용할껀지 선택하는 메뉴입니다. 라이트세일에서는 사용자의 입맛에 맞게 다양한 OS 패키지를 제공하는데요, 여기서 사용할 것은 “앱 + OS”의 WordPress 를 선택하면 됩니다. 

“WordPress”는 워드프레스를 설치하거나 이전하려는 사용자들에게 최적화 되어 있는 서버 패키지입니다. 따라서 사용자들은 “WordPress”를 선택하면 워드프레스 운영에 필요한 모든 어플리케이션들이 들어있다고 보시면 되겠습니다. 

다음으로 페이지를 살짝 내려보면 “인스턴스 플랜”과 “인스턴스 확인” 란이 보입니다. “인스턴스 플랜”은 새로 생성할 인스턴스의 사양을 선택하는 것입니다. 여기서 제일 저렴한 플랜은 월 3.5 달러짜리 이므로 저는 3.5$ 플랜을 선택하겠습니다. 

위 사양에서 보듯이 라이트세일의 사양은 최소사양이라도 할지라도 꽤 높은 수준의 사양이라고 볼 수 있습니다. 월 3.5 달러에 512 MB 메모리, 20 GB SSD, 1TB의 트래픽 용량은 국내외 어떤 것도 이런 가격에 이 정도 사양을 제공하는 곳은 거의 없다고 해도 과언이 아닙니다. 또한 3.5$ 플랜은 한달동안 무료로 이용할 수 있어서 추가적으로 비용이 줄어드는 효과를 누릴 수 있습니다. 

다음으로 “인스턴스 확인” 에서 인스턴스의 이름을 설정해 준다음에 “인스턴스 생성” 버튼을 누르면 “인스턴스” 가 생성됩니다. 잠시만 기다리면 자동적으로 인스턴스가 활성화 될 것입니다.

짠! 드디어 워드프레스 “인스턴스”가 생성이 되었습니다. 생각보다 어렵지 않군요. AWS 가입과 라이트 세일에서 “인스턴스 생성”만 간단하게 해주면 손쉽게 라이트세일에서 워드프레스 서버를 구동할 수 있습니다. 

고정(Static) IP 생성하기 

이제 워드프레스를 새로 설치하거나 이사갈 준비가 어느정도 된거 같습니다. 다음으로 몇가지 설정을 추가적으로 해줄께 있는데요, 먼저 현재 인스턴스가 할당받은 IP는 동적 IP 이므로 고정 IP로 변경을 해주도록 하겠습니다. 

고정 IP로 변경해 주는 이유는 인스턴스가 실행중이다가 꺼지고 다시 실행될때 IP 가 변경되는 것을 방지하기 위함입니다. 즉 사용자가 설정한 도메인 정보와 IP를 연결하기 위해서는 고정 IP로 설정되어 있어야 합니다. 

먼저 아래와 같이 “네트워킹” 메뉴를 클릭합니다. 

여기서 “고정 IP 생성” 을 눌러주면 됩니다. 

“고정 IP 생성” 을 클릭하면 위와 같이 고정 IP 생성 관련한 설정 항목이 나타납니다. 여기서 “인스턴스에 연결” 항목에서 좀전에 생성했던 인스턴스를 선택해 주면 됩니다. 그 다음으로 “고정 IP 확인”은 고정 IP 주소에 대한 별칭을 입력해 주면 됩니다. 

고정 IP는 계정당 총 5개가 무료로 제공이 되고 있는거 같네요. 참 이래저래 라이트세일이 장점이 많은거 같습니다. 설정이 다 되었다면 “생성” 버튼을 누릅니다. 

와우! 간단하게 고정 IP 설정이 완료가 되었습니다. 고정 IP 주소로 웹 브라우저 창을 접속하여 보니 바로 이번에 설치한 “워드프레스”가 접속이 되는것을 확인할 수 있습니다. 

SSH 터미널 및 SCP로 파일 전송 도구 설정하기

라이트세일에서 워드프레스 인스턴스는 기본적으로 SSH 터미널 접속을 지원합니다. 

라이트세일의 인스턴스를 살펴보면 위의 빨간색 네모와 같이 SSH로 터미널을 접속할 수 있는 아이콘이 있습니다. 이 아이콘을 클릭하면 SSH로 인스턴스 내부에 접속할 수 있습니다. 

라이트세일 인스턴스의 SSH 터미널 접속 화면

별도로 생성된 SSH 터미널 접속 화면입니다. 라이트세일 사용자는 간편하게 SSH 터미널을 이렇게 이용할 수 있어서 매우 편리합니다. 하지만 별도의 SSH 접속 클라이언트를 사용하고 싶다면 (예를 들어 Putty) 몇가지 셋팅을 해줘야 하므로 초보자에게는 그다지 추천은 하지 않습니다. 

이번 단락에서는 라이트세일에서 SSH 클라이언트 사용 방법과 SCP 프로토콜을 이용하여 인스턴스 서버로 파일 전송을 할 수 있는 방법에 대해 소개를 해보겠습니다. 

먼저 SSH 터미널 클라이언트로 주로 많이 사용하는 PuTTY를 사용하는 방법에 대하여 알아보겠습니다. PuTTY가 없다면 다운로드 하여 설치하도록 합니다. 

아래 링크는 AWS 라이트세일에서 Putty 사용법에 대해 안내한 글입니다. 참고하세요

PuTTY를 설치를 한 다음에 인스턴스에서 오른쪽 “:” 모양의 버튼을 누르면 팝업 메뉴가 나타납니다. 여기서 “관리” 를 누릅니다.

“관리”를 누르면 아래와 같은 화면이 나타납니다.

SSH를 접속하려면 계정 이름은 bitnami 를 사용하면 됩니다. 라이트세일에서는 SSH로 접속할때 일반적인 패스워드가 아닌 프라이빗키(Private key)를 이용하여 접속을 하게 됩니다. 따라서 프라이빗 키 파일을 라이트세일에서 다운로드 받아서 사용하면 됩니다. 

위의 빨간색 네모에서 “계정페이지”를 클릭하면 키 파일을 다운로드 할 수 있습니다. 

“계정페이지” 에서 자신이 속한 리전의 “기본값”의 오른쪽에 다운로드 버튼을 클릭하면 .pem 파일의 다운로드가 가능합니다. 적절한 폴더에 일단 저장해 놓습니다. 

다음으로 “PuTTY Key Generator”를 실행시킵니다. 

먼저 “Load” 버튼을 눌러서 다운로드 받은 pem 파일을 불러옵니다. 그 다음에 별도의 입력없이 “Save private key” 버튼을 누르면 PuTTY 에서 사용할 수 있는 인증서가 생성됩니다. 확장자는 .ppk 입니다.

다음에 PuTTY를 실행시켜서 인스턴스의 고정 IP와 포트는 22로 설정하고 계정은 “bitnami” 로 설정한 다음에 아래와 같이 Connection – SSH – Auth 에서 좀전에 생성했던 ppk 파일을 불러오면 됩니다.  

인증서 파일을 불러왔으면 Session에서 세션 파일을 저장한 다음에 Open을 하면 인스턴스에 SSH로 연결이 됩니다. 

PuTTY로 라이트세일 인스턴스에 SSH로 접속한 화면

접속이 잘 되는것을 확인할 수 있죠? 이후에는 별도의 키 생성 없이 PuTTY에 저장된 세션 파일을 load 하여 SSH로 접속하여 이용하면 되겠습니다. 

추가로 워드프레스 백업 파일이나 사용자가 필요한 파일을 인스턴스에 업로드 하기 위한 업로드 도구인 “WinSCP” 설정 방법에 대해 알아보겠습니다. 일반적으로는 웹 호스팅 서비스 사용시에는 주로 FTP나 SFTP 클라이언트를 사용해서 파일을 업로드 하지만 라이트세일에서는 SCP 프로토콜을 이용하여 파일 전송이 가능하므로 “WinSCP” 라는 SCP 클라이언트 프로그램을 이용해 전송하는 것도 가능합니다. 

먼저 WinSCP가 없다면 WinSCP를 다운로드 하여 설치합니다. 

위의 링크로 접속하면 WinSCP를 다운로드 할 수 있습니다. 

그 다음에 PuTTY를 설치하였다면 “pageant” 라는 프로그램을 찾을 수 있습니다. pageant 는 ppk 인증 파일을 load 하여 key를 인증 처리해주는 agent 프로그램 입니다. pageant를 실행시키면 오른쪽 하단의 Tray 아이콘에 Pageant 가 실행됩니다.

Pageant 의 Tray 아이콘을 오른쪽 마우스 버튼으로 클릭하면 “Add Key” 라는 메뉴가 나오는데 클락하여 좀전에 생성했던 ppk 파일을 추가해 줍니다. 그런 다음에 WinSCP를 실행시킵니다.

WinSCP를 처음 실행하면 세션을 설정하는 창이 나타납니다. 여기서 파일 프로토콜을 SCP로 설정하고 호스트이름은 인스턴스의 고정 IP, 포트번호는 22, 사용자 이름은 bitnami로 설정하고 저장한 다음에 “로그인” 버튼을 누르면 됩니다. 

WinSCP로 라이트세일 인스턴스 서버에 접속한 모습

자 접속이 되는 것을 확인할 수 있죠? 이제 자신의 PC에서 워드프레스 인스턴스로 원하는 파일을 언제든지 전송이 가능합니다. 마치 FTP나 SFTP를 사용하는거와 동일하다고 보시면 될꺼 같습니다.

워드프레스 기존 데이터 백업하기

워드프레스 사이트를 라이트세일로 이전하기 위해서는 기존에 운영하던 워드프레스 데이터를 백업하는게 중요합니다. 백업 방법에는 몇가지가 있으나 사용자가 간편하게 사용할 수 있는 유명한 플러그인인 “All-in-one WP Migration”을 사용하도록 하겠습니다. 

일단 기존의 운영하는 워드프레스의 관리자 화면에서 “All-in-one WP Migration” 플러그인을 검색합니다. 그런 다음에 설치를 진행하여 활성화를 시킵니다. 

활성화를 시키면 관리자 화면의 사이바에서 “All-in-One WP Migration” 플러그인 메뉴가 보입니다. 여기서는 워드프레스 데이터를 백업할 것이기 떄문에 “Export” 혹은 “내보내기”를 클릭하면 됩니다. 

그 다음 위의 화면에서와 같이 “Export To -File”을 선택하면 기존에 운영하던 모든 데이터들을 파일 1개로 저장할 수 있습니다. 참고로 “All-in-One WP Migration”은 무료 버전의 경우에 File 이외에는 다른 방식의 Export를 지원하지 않습니다.

데이터 용량에 따라서 파일 사이즈는 차이가 있습니다. 저 같은 경우에는 대략 300 MB 정도 되는거 같군요. 만약 백업 파일 사이즈 용량이 500 MB 가 넘어갈 경우에는 사용자가 수동으로 데이터를 백업하거나, “All-in-One WP Migration” 플러그인을 유료 버전을 구입하여 사용하는 방법이 있습니다. 본인의 사정에 맞게 적절하게 선택하면 될꺼 같습니다. 

저는 혹시 모르니 수동으로 워드프레스 데이터를 이전할 경우를 대비해서 수동으로 데이터를 추가로 백업하였습니다. 간단하게 설명드리자면, 먼저 기존에 운영하던 호스팅 서비스에서 파일질라 같은 FTP 클라이언트로 접속한 다음에 설치된 워드프레스의 루트 디렉토리의 모든 데이터를 자신의 PC로 전송합니다. 

그런 다음에 phpmyadmin이나 SSH 터미널에서 mysqldump 를 이용해 DB 데이터를 파일로 백업 받습니다. 

 mysqldump -u "DB계정" -p "DBname" > 백업파일명.sql

mysqldump는 위의 명령어로 DB의 데이터를 파일로 백업할 수 있습니다. mysqldump 사용시에는 DB 계정명과 DB 네임, DB 패스워드 정보를 알고 있어야 가능합니다. 

만약 SSH 터미널을 사용할 수 없는 호스팅 서비스의 경우 phpmyadmin으로 DB를 백업할 수 있습니다. phpmyadmin 사용에 관해서는 별도로 설명은 하지 않습니다.  

워드프레스 데이터 백업이 완료되었다면 다음 단계로 넘어갑니다.

라이트세일 인스턴스로 도메인 설정 하기

워드프레스를 이전 하기에 앞서서 현재 사용하고 있는 도메인의 DNS 서버 주소를 라이트세일의 DNS 서버 주소로 변경을 해줘야 합니다. 그 이유는 백업을 해두었던 워드프레스의 설정이 사이트의 도메인 주소에 맞게 설정이 되어있기 때문입니다. DNS 주소 변경 이전에 워드프레스 데이터를 백업 및 복구하는 것은 또다른 번거로운 작업이 필요하니 그 전에 DNS 주소 변경을 해주는 게 좋습니다. 

먼저 라이트세일에서 DNS 주소 설정을 위해 네트워킹을 클릭합니다.

위의 화면에서 보이듯이 “DNS영역 생성” 버튼을 누르면 DNS 관련 설정 화면으로 진입하게 됩니다. 

DNS 영역 생성에서 기존에 사용하던 도메인 주소를 입력합니다. 예를 들어 사용하던 도메인 주소가 서브 도메인이 포함된 www.example.com 이라고 해도 example.com 을 입력하면 됩니다. 그 다음에 “DNS 영역 생성” 버튼을 클릭합니다.

그럼 자신이 사용했던 도메인의 DNS 레코드 설정 화면이 나타납니다. 여기서 사용하려는 도메인과 네임서버의 연결을 위해서는 DNS 레코드에 추가를 해주면 됩니다. “레코드 추가”를 클릭합니다.

먼저 레코드유형은 A레코드를 선택합니다. 사용하려는 도메인이 example.com 이면 A레코드를 선택해주면 됩니다. 그 다음으로 하위 도메인은 example.com 이기 때문에 “@” 를 넣어줍니다. 

다음으로 오른쪽에 맵핑할 IP를 선택해주면 됩니다. 이미 고정 IP를 설정하였기 때문에 설정된 고정 IP를 선택해주면 됩니다. 그 다음으로 오른쪽 상단의 체크 표시를 누르면 설정이 됩니다.

추가적으로 저같은 경우에는 “www” 하위 도메인 또한 접속하게 설정을 하였습니다. 위의 설정한 방법과 동일하게 DNS 레코드를 추가하고, A 레코드, 하위도메인을 www 으로, 고정 IP를 선택해준 다음에 체크 표시를 눌러주면 됩니다. 

자 이제 DNS 레코드 설정은 완료가 되었네요. 저는 기본적으로 위와 같이 2개의 레코드 정보를 등록하였습니다. 사용자에 따라서 서브 도메인을 추가하고 싶을때에는 레코드 정보를 추가해 주면 될꺼 같네요. 

DNS 레코드 설정이 끝난 후에는 도메인을 구입하고 관리했던 사이트로 가서 네임서버 정보를 AWS 라이트세일 네임서버로 변경해 줘야 합니다. 저같은 경우는 “웹티즌” 이라는 업체에서 도메인을 구입 및 관리를 하고 있기 때문에 해당 사이트로 접속하여 변경하였습니다. 

위 화면은 제가 사용하는 도메인 관리 업체의 네임서버 설정 화면입니다. 기존에 설정되어 있던 네임 서버를 삭제하고 AWS 라이트세일의 총 4개의 네임 서버를 1~4차 까지 차례대로 입력한다음 네임서버 변경을 해주면 네임서버 변경이 진행됩니다. 

도메인 관리 업체마다 약간씩 차이가 있으니 네임서버 관련하여서 문의점이 있다면 해당 도메인 관리 업체로 문의를 하시면 될꺼 같습니다. 

네임서버 변경은 설정 후에 빠르면 2~3시간, 오래 걸리면 48시간 정도 소요될수 있습니다. 이점 참고하시기 바랍니다.

기존의 운영하던 워드프레스 데이터를 라이트세일에 이전하기

이제 라이트세일에서 워드프레스를 운영할 수 있게 되었습니다. 설정한 도메인으로 웹 브라우저에서 접속해보면 설치된 워드프레스가 접속이 됩니다. 

라이트세일에 설치된 워드프레스의 초기 화면 모습

2020년 3월 현재 설치된 워드프레스 버전은 5.3.0 입니다. 제가 기존에 사용하고 있던 Siteground 웹 호스팅에 설치했던 워드프레스 버전은 4.9.5 입니다. 그동안에 워드프레스 버전이 꽤 업데이트가 되었군요ㅋ

일단 먼저 위와 같이 라이트세일 인스턴스에서 설치된 워드프레스의 관리자 화면을 접속해야 하는데요 설치된 워드프레스의 계정은 디폴트로 user 입니다. 패스워드는 인스턴스의 SSH 터미널에 접속해서 설정된 패스워드를 읽어보면 됩니다. 

SSH 터미널에서 아래와 같이 명령어를 입력하면 user 계정의 패스워드를 알수 있습니다. 

cat bitnami_application_password

위 명령어 입력후 보여지는 패스워드를 워드프레스의 관리자 화면에서 입력하면 접속이 가능합니다. 

“본인의 IP”/wp-admin 에 접속하여 user, 패스워드를 입력하면 위와 같이 워드프레스의 관리자 화면에 접속되는것을 확인할 수 있습니다. 워드프레스를 신규 설치하려는 분들은 이제부터 본격적으로 꾸미면 될꺼 같네요^^ 저의 경우는 워드프레스 이전이 목적이니 간편하게 하기 위해서 워드프레스를 이전할 때 사용하는 유명한 플러그인인 “All-in-one WP Migration”을 사용하도록 하겠습니다. 

이번에 설치한 워드프레스에는 이미 “All-in-one WP Migration”이 설치가 되어 있더군요. 최선 버전으로 플러그인을 업데이트 합니다.

이 앞전에 작업을 했던 워드프레스 백업 파일을 준비하고 나서 이번에는 라이트세일 인스턴스에 설치된 워드프레스의 관리자 화면에서 “All-in-One WP Migration” 플러그인을 활성화 시킨 다음에 “Import”를 클릭합니다. 

그런데…. 확인해 보니 최대 업로드 파일 크기가 40 MB 밖에 되질 않는군요. 참 쉽게 하게끔 놔두질 않는거 같습니다ㅋ. 추가적으로 해줘야 될께 있습니다. 위의 화면에서 보이듯이 “최대 업로드 파일 크기 증가” 또는 “무제한 구매”를 하면 됩니다. 먼저 돈이 안들어가는 방향으로 하기 위해 “최대 업로드 파일 크기 증가”를 클릭합니다.

살펴보니 .htaccess 파일을 업데이트 하거나 wp-config.php .파일을 수정하라고 하는군요. 그러나 이들 모두 시도해 봤지만 최대 업로드 파일 크기가 증가하지 않습니다. 따라서 그 다음에 표시된 별도의 플러그인을 다운로드 받아서 설치를 해야 합니다. 

위 링크를 클릭하면 위와 같이 별도의 플러그인 다운로드 화면이 나타납니다. 여기서 “Basic”은 별도의 이용료를 지불하지 않는 무료 버전입니다. 최대 512 MB 까지 지원을 하네요. 이 앞 단락에서 설명드린 워드프레스 데이터 백업시에 500 MB 가 넘어가면 다른 복구 방법을 생각해 봐야 한다는 의미가 바로 이것입니다. 

저같은 경우에는 다행이도 백업하려는 데이터 사이즈가 300 MB 정도 되기 때문에 Basic 을 설치하면 충분히 복구가 가능합니다. 만약 백업한 데이터가 500 MB 가 넘어간다면 프리미엄 플러그인을 구입하거나 사용자가 수동으로 워드프레스 데이터를 이전 해야 합니다. 수동 이전 방법에 대하여는 지면상 다른 포스트에 소개해 보도록 하겠습니다. 

일단 “Basic” 추가 플러그인을 다운로드 하게 되면 별도의 .zip 파일을 다운로드 받을 수 있습니다. 그런 다음에 워드프레스 관리자 – 플러그인에서 플러그인 추가를 선택합니다. 

플러그인 추가 화면에서 위의 화면과 같이 “플러그인 업로드”를 클릭하면 좀 전에 다운로드 받았던 .zip 파일을 설치할 수 있습니다. .zip 파일을 선택하여 플러그인을 설치합니다. 

그런 다음에 다시 “All-in-One WP Migration” 플러그인으로 가서 Import 나 가져오기를 클릭하면 최대 업로드 사이즈가 변경된 것은 확인할 수 있습니다.

정말 바뀌었네요.ㅋ 이제 백업해놨던 워드프레스 백업 파일을 드러그 & 드롭 하여 불러옵니다. 

워드프레스 백업 데이트 Load 가 완료되면 위와 같이 메시지가 나타납니다. 데이터를 복구 하겠냐는 건데 별다른 이상 없으면 “진행”을 누릅니다. 

자 이제 백업 해놨던 워드프레스 데이터의 복구가 시작됩니다. 위의 경고대로 브라우저 창을 닫지 말고 잠시만 기다리면 라이트세일의 워드프레스 인스턴스에 복구가 완료되게 됩니다. 

완료후에 화면에서 워드프레스의 업데이트가 진행되게 됩니다. 진행 후에는? 기존에 운영하고 있던 워드프레스의 데이터들이 잘 복구된것을 확인 할 수 있을 것입니다. 

SSL을 사이트에 적용하기

최근에 거의 모든 웹사이트는 보안문제로 인해 https 방식으로 접속을 권유하고 있습니다. 마찬가지로 웹사이트 운영시에도 SSL 보안 인증 접속 방식으로 운영하기를 권장하고 있는데요, 일반 개인 사이트라고 해도 https 로 운영하는 것이 좋습니다. 

라이트세일에서도 생각보다 쉽게 SSL 인증서를 적용할 수 있습니다. 또한 무료 SSL 인증서인 “Let’s Encrypt” 인증서를 다운로드 받아서 적용이 가능합니다. 대신에 3개월 마다 인증서를 갱신해 줘야 하는 수고스러움을 감수하면 됩니다^^

자 그럼 먼저 다시 라이트세일에서 “DNS 레코드” 설정으로 이동합니다. 

여기서 “레코드 추가”를 클릭해서 CNAME 레코드를 선택한 다음 하위도메인을 www로 설정하고 매핑을 사용하고 있던 도메인명을 넣어주면 됩니다. 이렇게 하면 “example.com” 과 “www.example.com” 모두 https 로 접속할 수 있습니다. 

DNS 레코드를 추가한 다음에 SSH 터미널 창으로 접속합니다. 그런 다음에 임시 디렉토리를 하나 생성합니다. 

mkdir tmp
cd tmp

tmp 디렉토리를 만드는 이유는 SSL 인증서 다운로드 작업을 해주는 “certbot-auto” 스크립트를 다운로드 하기 위함입니다. 아래와 같이 certbot-auto 를 tmp에 다운로드 합니다. 

wget https://dl.eff.org/certbot-auto
chmod a+x certbot-auto

다음으로 워드프레스 최 상위 디렉토리로 이동하여 아래의 명령어로 디렉토리를 생성해 줍니다. 

mkdir /home/bitnami/apps/wordpress/htdocs/.well-known
cd /home/bitnami/apps/wordpress/htdocs/.well-known
touch .htaccess

만든 .well-known 으로 이동하여 .htaccess 파일을 생성한 뒤에 아래의 내용을 작성해주고 난 다음에 저장을 하고 빠져나옵니다. 

#
# Override overly protective .htaccess in webroot
#
RewriteEngine On
Satisfy Any

위 내용을 추가하려면 vi 에디터를 사용하면 됩니다. 아래 명령어로 vi 에디터를 이용해 파일을 연후에 “:wq”를 입력하면 저장을 하고 빠져나오게 됩니다. 

vi .htaccess

.htaccess 파일 저장 후에는 아래의 명령어를 사용하여 SSL 인증서를 다운로드를 받으면 됩니다. 

./certbot-auto certonly --webroot -w /home/bitnami/apps/wordpress/htdocs/ -d example.com -d www.example.com

certbot-auto 스크립트를 실행하여 인증서를 생성 및 다운로드 과정을 거치게 됩니다. 여기서 example.com 은 사용자의 도메인 주소입니다. 여기서는 example.com과 www.example.com 모두 SSL을 적용할 것입니다. 

위 스크립트를 실행시키면 별도의 패키지가 설치가 됩니다. 시간이 좀 흐른 뒤에 아래 내용을 참고하여 SSL 인증서 다운로드를 진행하면 되겠습니다. 

./certbot-auto has insecure permissions!
To learn how to fix them, visit https://community.letsencrypt.org/t/certbot-auto-deployment-best-practices/91979/
Creating virtual environment...
Installing Python packages...
Installation succeeded.
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator webroot, Installer None
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): aaaaaa@gmail.com

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: y
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for example.com
http-01 challenge for www.example.com
Using the webroot path /home/bitnami/apps/wordpress/htdocs for all unmatched domains.
Waiting for verification...
Cleaning up challenges

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/example.com/privkey.pem
   Your cert will expire on 2020-06-12. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot-auto
   again. To non-interactively renew *all* of your certificates, run
   "certbot-auto renew"
 - Your account credentials have been saved in your Certbot
   configuration directory at /etc/letsencrypt. You should make a
   secure backup of this folder now. This configuration directory will
   also contain certificates and private keys obtained by Certbot so
   making regular backups of this folder is ideal.
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

자 인증서 다운로드가 성공적으로 되었네요. 이제 다운로드 받은 인증서를 적용해야 하는데요, 아래 명령어로 설정 파일을 엽니다. 

sudo vi /opt/bitnami/apache2/conf/bitnami/bitnami.conf

설정 파일을 열면 대략 46번째 라인에 SSL 인증서 관련 설정 구문이 있습니다. 요걸 #을 붙혀서 주석처리를 해줍니다. (아래 예)

#SSLCertificateFile "/opt/bitnami/apache2/conf/server.crt"
#SSLCertificateKeyFile "/opt/bitnami/apache2/conf/server.key"

그런 다음에 다운로드 받은 인증서를 요기 설정파일에 3라인으로 구문을 추가해 주면 됩니다. (아래 예)

# Let's Encrypt
SSLCertificateFile "/etc/letsencrypt/live/example.com/fullchain.pem"
SSLCertificateKeyFile "/etc/letsencrypt/live/example.com/privkey.pem"
SSLCACertificateFile "/etc/letsencrypt/live/example.com/fullchain.pem"

example.com 은 여러분의 도메인 주소를 의미합니다. “:wq”를 눌러서 설정 파일을 저장 후 vi 에디터를 빠져나온 다음에 apache를 재 시작 해주면 됩니다. 

sudo /opt/bitnami/ctlscript.sh restart apache

위 명령어를 입력해주면 apache 가 재시작 됩니다. 위 명령어 입력 후 아래와 같이 메시지가 나오면 SSL 인증서가 정상적으로 적용되었다고 보시면 되겠습니다. 

Unmonitored apache
Syntax OK
/opt/bitnami/apache2/scripts/ctl.sh : httpd stopped
Syntax OK
/opt/bitnami/apache2/scripts/ctl.sh : httpd started at port 80
Monitored apache

이후에 인증서가 3개월이 지나면 만료되니 다시 인증서를 “certbot-auto”를 사용해서 재 갱신해 주면 됩니다. 

Bitnami 배너 제거하기

자, 이제 라이트세일에 워드프레스 이전 작업은 거의 마무리 되었다고 볼 수 있습니다. 마지막으로 간단하게 남은 작업이 있는데, 현재 설치되어 있던 워드프레스에 자동적으로 표시되는 “Bitnami 배너”를 제거하는 일입니다. 

Bitnami 배너 모습

운영하는 사이트에 배너가 달려있는게 보기는 좋지 않을 듯 하네요.ㅋ 배너를 제거하는 방법은 간단합니다. SSH 터미널에서 아래 명령어를 입력하여 배너를 제거하면 됩니다. 

sudo /opt/bitnami/apps/wordpress/bnconfig --disable_banner 1

간단하죠?ㅋ 

지금까지 AWS 라이트세일로 워드프레스를 설치 혹은 이전하는 과정에 대하여 살펴봤습니다. 다소 과정이 복잡할 수도 있지만 잘 따라하면 라이트세일로 가성비 좋은 서버를 마음껏 이용할 수 있게 됩니다. 기존의 웹 호스팅이나 클라우드 호스팅 서비스가 불만족스러웠다면 “AWS 라이트세일”은 좋은 대안이 될 수 있을꺼 같습니다.

'정원딸린집'에는 쿠팡파트너스 등의 제휴링크가 포함되어 있으며 수수료를 제공받을 수 있습니다.

답글 남기기

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

error: Content is protected !!