데이터베이스만 복구해야한다면?

이전 시간에는 워드프레스 전체 사이트에 대한 빽업과 복구에 대해서 공부하였습니다. 그렇지만 워드프레스를 사용해서 여러가지 테스트를 하다보면 데이터베이스만 복구하고 싶을 때가 있습니다. 워드프레스는 MySQL을 기본 데이터베이스로 사용하기 때문에 직접 MySQL 데이터베이스 관리자화면인 phpMyAdmin 화면에 로그인해서 데이터베이스 복구작업이나 초기화 작업을 해도 됩니다.

그렇지만 사이트 테스트 시점에서 자주 데이터베이스를 초기화 및 복원하는 과정을 반복해야할 경우, 데이터베이스 복구를 좀더 편리하게 하기위해서는 워드프레스 관리자 화면에서 플러그인을 통해서 작업하는 것도 좋은 방법입니다.



데이터베이스 초기화는?


워드프레스 데이터베이스 초기화에 대해서는 아래 포스팅을 참고바랍니다. 먼저 아래 포스팅을 참고해서 초기화를 한 뒤에 데이터베이스를 복원 절차를 학습하면 될 것입니다.



데이터베이스 복구 Adminer 플러그인 설치하기


데이터베이스를 복구하는데에는 Adminer 플러그인을 많이 사용합니다. 플러그인 설치를 위해서 왼쪽 사이드바 메뉴에서 플러그인 > 플러그인 추가하기 메뉴를 클릭합니다.



플러그인 검색창에서 adminer 라고 입력하고 검색하면 첫번째 Adminer 플러그인이 검색됩니다. 지금 설치하기 버튼을 클릭합니다.




플러그인이 정상적으로 설치되었습니다. 플러그인을 활성화 링크를 클릭합니다.




데이터베이스 간단히 복구하기


플러그인이 활성화 되면 왼쪽 메뉴에서 도구 > Adminer 메뉴가 생성된 것을 확인할 수 있습니다. Adminer 메뉴를 클릭합니다.



Adminer 관리화면이 나타납니다. Start Adminer in a new tab 버튼을 클릭합니다.



데이터베이스를 관리하는 화면이 나타납니다. 왼쪽 화면에서 가져오기 링크를 클릭합니다.




데이터베이스를 가져올수 있는 화면이 나타납니다. 파일 선택 버튼을 클릭해서 복구할 MySQL 화일을 선택합니다. 선택이 완료된 뒤에 실행 버튼을 클릭합니다. 실행 버튼을 클릭하면 워드프레스 사이트는 간편하게 복구가 됩니다.



시스템 운영의 가장 중요한 일


워드프레스 사이트 뿐아니라 모든 웹사이트 운영시스템에서 가장 중요한 일은 바로 빽업입니다. 여러가지 상황으로 인한 시스템 자원의 유실은 사업의 성패를 좌우하는 요소가 됩니다. 그래서 시스템에 대해서 이해가 있는 회사는 여러가지 상황에 대비해서 1차 2차 빽업 시스템을 구축해놓고 있습니다. 시스템이 갑작스럽게 문제가 생겼을 때 바로 문제 직전의 형상으로 복원할 때 필요한 것은 바로 시스템 빽업 데이타입니다.

그리고 한 가지 더 중요한 것이 있다면 그것은 시스템의 형상관리(Software Configuration Management) 입니다. 형상관리란 시스템의 변경사항을 관리하는 것을 이야기합니다.
위키피디아는 형상관리를 다음과 같이 정의합니다.

소프트웨어 구성 관리란 소프트웨어 소스 코드 뿐 아니라 개발 환경, 빌드 구조 등 전반적인 환경 전반적인 내역에 대한 관리 체계를 정의하고 있다. configuration이란 영어 원문에서의 뜻은 소프트웨어의 BOM(Bill of Materials)을 운용하는 체제를 얘기하고 있으며, 대부분의 산업 공학이나 생산 시스템에서 이야기하는 제조 공정을 소프트웨어 엔지니어링에 적용한 경우를 의미한다.

즉, 하나의 소프트웨어 산출물(binary)을 생성하기 위해 필요로 하는 아이템들과 공정 방식의 정의, 그리고 재생성을 위한 전반적인 환경까지 베이스라인(baseline)화하여 관리하는 방식 전체를 의미하며 이를 체계화한 사항을 형상 관리 시스템으로 정의하고 있다.

형상관리란 쉽게 이야기하면 시스템에 변경사항이 발생할때마다 변경 시점별로 소프트웨어의 구성내역을 일종의 카메라로 사진을 찍어서 차곡차곡 보관해놓은 것이라고 생각하면 됩니다.
가령, 버전 1.0 버전 1.1 버전 1.2 이렇게 시스템의 변경사항이 있을 때마다 평상시 소프트웨어의 변경사항을 형상관리하고 있다면 시스템의 예상치 못한 문제가 발생되었을 때 문제가 없는 버전을 내려받아서 운영 시스템에 반영할 수 있는 것입니다.




워드프레스 사이트 빽업은?


워드프레스 사이트도 일반적인 웹시스템과 다르지 않습니다. 무엇보다 주기적인 사이트 빽업 작업은 반드시 필요합니다.
워드프레스 사이트 운영자가 해야하는 가장 중요한 일은 주기적으로 사이트를 빽업해야하며 문제가 발생되었을 때는 신속하게 복구 절차에 따라서 사이트를 복원해야합니다. 사이트의 규모가 크다면 운영자의 전근과 퇴직으로 운영자가 바뀔 가능성이 많기 때문에 정기적인 빽업과 사이트 복구 작업을 매뉴얼화 해놓는 것이 좋은 방법입니다.




빽업 주기는 사이트 특성에 따라서 틀릴 수 있으나 적어도 일반적으로 하루에 한 번 일단위 빽업을 권장합니다.

워드프레스 사이트를 빽업 받는 것에 대해서는 아래 포스팅을 참고해서 진행하기 바랍니다. 이번 시간에는 빽업받은 데이타를 기준으로 사이트를 복원하는 과정을 배우도록 하겠습니다.

[ 관련 포스팅 ]



빽업만 있다면, 워드프레스 사이트 복원은 간단하다


빽업 플러그인을 통해서 매일 주기적으로 워드프레스 사이트를 빽업받아두고 있다면 시스템의 문제가 발생을 하였다해도 걱정할 필요가 없습니다.
단지 아래 두 가지 방법만 사용하면 시스템을 원래대로 복원할 수 있기 때문입니다.
첫째는 FTP를 통해서 웹호스팅 서버에 파일을 업로는 하는 것이고(로컬 컴퓨터에서 워드프레스를 설치하였다면 해당 디렉토리 경로에 복사하면 됩니다.) 둘째는 데이터베이스를 복원하는 것입니다.

그럼 빽업데이터를 활용한 시스템 복원과정을 살펴보겠습니다.


빽업화일을 FTP로 웹호스팅 서버에 업로드하기


현재 슈만의 워드프레스 사이트는 카페24에서 웹호스팅을 받고 있습니다. 따라서 FTP 프로그램을 활용해서 카페24 웹호스팅 서버에 파일을 업로드 하겠습니다. 

먼저 BackWPup 플러그인을 활용해서 자신의 로컬 컴퓨터에서 빽업받은 워드프레스 폴더를 찾아갑니다.
저의 경우에는 BackWPup 플러그인을 활용해서 드롭박스에 매일 일단위로 자동 빽업을 받았습니다. 아래 화면과 같이 빽업받은 화일에서 1월11일자 빽업 화일을 사용해서 사이트를 복원하려고 합니다.





일단위 빽업을 받은 화일은 압축화일입니다. 따라서 자신의 로컬PC에서 알집등 압축프로그램으로 아래와 같이 압축을 해제합니다.




FTP 프로그램을 사용해서 자신의 웹호스팅 서버에 접속할 차례입니다.
저는 FTP 프로그램을 파일질라를 사용했습니다. 파일질라는 간편하게 사용할 수 있는 FTP 프로그램입니다.
파일질라는 아래 공식사이트에서 다운로드 받을 수 있습니다.


파일질라를 사용해서 shuman.kr이 호스팅을 받고 있는 카페24 웹호스팅 서버에 접속합니다.(로컬PC에 워드프레스를 설치하였다면 아래 내용을 참고해서 해당 디렉토리에 복사하면 됩니다.)



FTP 연결이 성공하면 아래와 같은 화면이 나타납니다.
파일질라 FTP 프로그램에서 왼쪽부분은 자신의 로컬 컴퓨터의 디렉토리이고 오른쪽은 웹호스팅 서버의 디렉토리 경로입니다.

먼저 빽업받은 화일을 올릴 웹호스팅 서버 경로를 설정하기 위해서 오른쪽 화면의 디렉토리 경로를 www 폴더로 클릭해놓습니다. 그리고 왼쪽 로컬 컴퓨터에서 빽업받은 폴더로 들어가서 wp-admin 폴더가 있는 부분에서 아래와 같이 Ctrl+A 를 클릭해서 전체를 선택하고 마우스의 오른쪽 버튼을 클릭합니다.
마우스 우클릭을 하면 나타나는 업로드 메뉴를 클릭하면 왼쪽의 로컬 컴퓨터의 빽업받은 화일들이 서버쪽으로 복사됩니다. 업로드 메뉴를 클릭합니다.

업로드가 완료되면 서버 작업은 완료된 것입니다.



카페24 MySQL 웹어드민을 활용한 데이터베이스 복원하기


사이트 복원을 위해서 두번째 할일은 데이터베이스를 복원하는 일입니다. 로컬 PC 빽업을 받은 폴더안에 shuman.sql이라는 화일이 있습니다. 이 화일은 워드프레스 전체에 대한 데이터베이스 화일입니다. 이 화일을 카페24 MySQL 웹어드민 도구를 사용해서 실행해서 데이터베이스를 복원할 것입니다.

먼저 카페24 사이트에 로그인합니다. 카페24 로그인을 한 뒤에 아래 화면과 같이 관리자화면인 나의서비스관리 메뉴를 클릭합니다.



나의서비스관리 화면에서 왼쪽의 서비스 접속관리 > MySQL 웹어드민 메뉴를 클릭합니다.



카페24 MySQL 웹어드민에 접속할 수 있는 화면이 나타납니다. 접속하기 버튼을 클릭합니다.





접속하기 버튼을 클릭한 뒤에 MySQL에 접속할 수 있는 사용자명과 암호명을 입력합니다. 카페24 등록시점에 설정한 아이디와 패스워드를 입력하고 실행버튼을 클릭합니다.




로그인을 하면 phpMyAdmin 화면이 실행된 것을 확인할 수 있습니다. 왼쪽 데이터베이스에서 shuman을 클릭해서 선택합니다.



데이터베이스 복원하기


shuman의 MySQL 데이터베이스가 열리면 아래화면과 같이 진행합니다.
첫째, 오른쪽 화면에서 Import 탭을 클릭합니다.
둘째, 파일 선택 버튼을 클릭해서 빽업받은 데이터베이스 화일을 선택합니다.
세째, 실행 버튼을 클릭합니다.

이렇게 실행버튼을 클릭하면 최종적으로 워드프레스 사이트는 정상적으로 복원됩니다.


OTP 인증이란?


OTP는 One Time Password 의 약자로 근래들어서 은행등 금융권에서 보안강화를 많이 사용해서 우리에게도 익숙한 보안 수단입니다.

위키피디아는 OTP에 대해서 다음과 같이 정의합니다.

일회용 비밀번호(영어: One-Time Password; OTP)는 일회성으로 사용하는 비밀번호이다.

OTP는 간단히 말하면 휘발성 패스워드와 같이 단 한번만 사용하는 비밀번호입니다. 은행의 보안카드의 유출 사고등으로 보안카드도 안전하지 않게되자 도입한 보안강화 방안이라고 보면 됩니다.

여러가지 보안 수단을 이용하는 것은 어떠한 보안이라도 완벽한 것은 없기 때문입니다. 따라서 이중 삼중으로 사이트 보안강화를 위한 노력을 하여야 보안 유출 및 해킹 사고를 막을 수 있습니다. 특히 요즈음에는 고객의 정보의 유출 사고가 법적인 소송으로 가는 경우도 많기 때문에 작은 쇼핑몰을 운영한다고 하더라도 미래를 위해서 보안을 신경쓰는 것이 현명한 방법입니다.


구글 OTP 플러그인 설치전 사전 준비사항


구글 OTP 로그인 보안 강화 플러그인을 설치하면 사용자의 실수로 로그인을 못하는 경우가 발생할 수 있습니다. 이럴때는 관리자인 자신도 로그인을 못하는 상황이 발생하는 것입니다. 따라서 만약의 경우를 대비해서 미리 자신의 워드프레스 사이트를 빽업받아두는 것이 좋습니다.
워드프레스 빽업에 대해서는 아래 포스팅을 참고바랍니다.

[ 연관 포스팅 ]


구글 OTP 사용을 위한 인증 플러그인 설치하기


워드프레스에서 OTP 기능을 이용할 때 많이 사용하는 것은 구글 OTP입니다.
일반적으로 구글 OTP로 불리우는 플러그인의 정식 이름은 Google Authenticator 입니다. 그럼 플러그인을 설치하겠습니다. 왼쪽 사이드바 메뉴에서 플러그인  추가하기 메뉴를 클릭합니다.



플러그인 검색창에서 google authenticator 라고 입력한 뒤에 검색을 합니다.google authenticator로 여러가지 플러그인이 검색되지만 10,000명이상이 설치해서 대표적으로 구글 OTP라 할 수 있는 첫번째 플러그인을 설치하겠습니다. 지금 설치하기 버튼을 클릭합니다.



플러그인이 설치되었습니다. 플러그인을 활성화 링크를 클릭합니다.




구글 OTP 기능 사용하기


플러그인 설치가 완료되었으면 사용자 > 나의 프로필 메뉴를 클릭합니다.



나의 프로필 화면에 아래와 같이 구글 인증 관련된 기능이 생성된 것을 확인할 수 있습니다.



구글 인증에 관련된 설정 화면을 아래 화면과 같이 설정합니다.
Active 와 Relaxed mode 를 모두 체크합니다. Active는 인증 기능을 활성화 한다는 뜻이며, 리렉스모드는 워드프레스 사이트와 스마트폰의 시간차를 4분 정도 여유를 둔다는 의미입니다. 즉, 기기의 시간차로 인한 인증 오류를 막는다는 뜻입니다. 따라서 체크해주는 것이 좋습니다.

Description 항목은 스마트폰에서 보여질 항목입니다. 자신의 사이트 이름을 적습니다. Create new secret 버튼을 클릭하면 보안코드를 새로 생성할 수 있습니다. Secret 항목에서 Show/Hide QR code 버튼을 클릭하면 QR 코드가 나타나는데 이 코드를 스마트폰으로 스캔할 것입니다.
아래와 같이 모두 설정하였다면 저장버튼을 클릭해서 설정한 내역을 저장합니다.




구글 스마트폰 OTP 앱 설치하고 QR코드 스캔하기


스마트폰에 구글 OTP 앱을 설치하고 연동하는 것은 다음 포스팅에 자세히 설명되어있으니 참고하시면 됩니다.

[ 관련 포스팅 ]



스마트폰에 구글 OTP 앱이 설치하였다면, 아래 OTP 아이콘을 클릭해서 구글 OTP를 실행합니다.



설정 시작하기 버튼을 클릭합니다.




계정 추가 화면에서 바코드 스캔 메뉴를 클릭합니다.



바코드 스캔 메뉴를 클릭하면 바코드 앱이 구동되고 바코드 화면에서 조금전 인증 QR 코드를 스캔합니다.



스캔이 완료되면 구글 OTP는 은행에서 발급하는 OTP 보안토큰과 같이 오른쪽 원형 시계모양이 시간의 흐름에 따라서 시계방향으로 한바퀴를 돌면 6자리 인증코드를 새롭게 생성하는 것을 확인할 수 있습니다. 은행에서 발행하는 OTP 보안토큰이 스마트폰안으로 들어간 것이라 할 수 있습니다.
이제 이 6자리 숫자는 사이트에 로그인할 때 사용할 것입니다.

   

사이트 로그인은 어떻게 변화되었나?


구글 인증 플러그인을 활성화한 뒤에 로그인을 하려고 하면 아래와 같이 사용자명과 비밀번호외에 Google Authenticator code 라는 한 가지 입력사항이 추가된 것을 확인할 수 있습니다. 바로 이 입력창에 입력할 것은 스마트폰에서 구글 OTP 앱을 실행시키고 구글 OTP에서 나타나는 일회성 패스워드에 해당하는 6자리 인증 코드를 입력하면 됩니다. 





사용자별로 구글 인증 사용하기


구글 인증은 워드프레스 사용자별로 사용이 가능합니다.
구글 인증을 사용할 사용자를 googleotp 라는 유저로 추가했습니다. 그리고 아래 화면과 같이 사용자 편집화면으로 들어가기 위해서 편집 링크를 클릭합니다.



사용자 편집화면에서 다음과 같이 구글 인증을 사용을 설정할 수 있는 화면이 나타납니다. 다음 화면에서 체크해서 사용하면 됩니다.


워드프레스 관문 지키기


워드프레스의 보안에서 중요한 것 중의 하나는 관문인 워드프레스 로그인 화면을 지키는 일입니다.
해킹을 시도하는 해커들이 뚫고자하는 첫번째는 바로 워드프레스 관리자 화면으로 들어가는 로그인 화면이기 때문입니다. 일단 관리자로 로그인이 가능해지면 해커는 자신의 마음대로 워드프레스 사이트를 공격할 수 있고 손쉽게 정보를 빼내갈 수 있습니다.



일반적으로 해커들이 시도하는 해킹의 두 가지 방법은 먼저 특정 정보없이 무작위 아이디와 비밀번호를 대입해서 로그인을 시도하는 방법이거나 웹브라우저나 로컬PC에 남아있는 로그인 정보등을 가로채서 획득한 정보를 기반으로 로그인하는 방법입니다. 만약 해커가 관리자 로그인 아이디를 획득했고 비밀번호를 알지 못한다고 가정했을때 획득한 로그인 아이디를 입력하고 비밀번호는 해킹프로그램을 사용해서 무작위 대입을 시도할 것입니다.

이때 이런 시도에 대해서 관문 지키미 역할을 하는 것이 로그인 시도 횟수를 제한하는 기능입니다. 워드프레스는 플러그인을 통해서 이런 기능을 구현할 수 있습니다.
로그인을 시도하는 횟수를 제한하는 플러그인 중에서 전세계에서 가장 많이 사용하는 플러그인은 Limit Login Attempts 입니다.

로그인 횟수 제한하는 Limit Login Attempts 플러그인 설치하기


플러그인을 설치하기 위해서 왼쪽 사이드바 메뉴에서 플러그인 추가하기 메뉴를 클릭합니다.



플러그인 검색 창에서 limit login attempts를 입력하고 검색합니다. 로그인 제한에 관해서 수많은 플러그인이 검색되지만 백만명이상 설치한 검증된 Limit Login Attempts 플러그인을 설치하겠습니다. 비록 업데이트는 오래되었지만 테스트 해본 결과 특별한 문제점은 발견되지 않았습니다. 지금 설치하기 버튼을 클릭합니다. 



플러그인이 설치되었습니다. 플러그인을 활성화 링크를 클릭합니다.



로그인 시도 횟수 제한기능 사용하기


Limit Login Attempts 플러그인이 정상적으로 설치되었다면 왼쪽 사이드바 메뉴에서 설정 > Limit Login Attempts 라는 메뉴가 생성된 것을 확인할 수 있습니다. Limit Login Attempts를 클릭합니다.



다음과 같이 로그인 시도 횟수 제한 설정을 하는 화면이 나타납니다.



아래 오렌지 박스의 Lockout 설정 부분을 차례로 설명하겠습니다.
첫번째는 4번 재시도를 허용한다는 것이며,
두번째는 4번의 로그인이 실패하면 20분 후에 로그인을 할 수 있도록 잠그는 기능입니다.
세번째는 첫번째 두번째가 4번 반복되면 24시간 동안 로그인 시도 잠근다는 뜻이며
네번째는 세번째 이후 12시간이 지나면 다시 초기화 된다는 것입니다.



아래 화면에서 화살표가 가르키는 IP 부분은 워드프레스가 접속된 사이트의 IP가 나타납니다. 자신의 로컬PC에 워드프레스를 설치하였다면 1로 표시될 것입니다.

또한 설정에서 중요한 부분은 차단시에 알리미 기능인 Notify on lockout 항목에 체크하는 것입니다. 아래 네모 박스 부분의 첫번째는 IP를 로그로 남긴다는 것이며 두번째 항목은 IP가 차단된 뒤에 관리자의 이메일로 알려주는 기능입니다. 설정을 완료하였으면 Change Options 버튼을 클릭해서 해당 설정내역을 저장합니다.



로그인 제한 기능 테스트하기


로그인 제한 기능을 테스트하기 위해서 자신의 워드프레스 사이트에 접속해서 로그인 시도를 합니다.
해커라고 가정하고 첫번째 로그인 시도를 했습니다. 아래와 같이 경고 메시지가 나타나면서 로그인 시도가 3번 남았다고 표시합니다.



세번째 로그인이 실패한 상황에서 마지막 네번째 로그인 시도를 합니다.



아래와 같이 네번의 시도가 실패로 끝나면 20분 동안 로그인 기능이 잠기게 되고 아래와 같이 메시지가 출력되는 것을 확인할 수 있습니다.



관리자 화면에서 차단 로그 확인하기


관리자 화면의 플러그인 설정 화면에 들어오면 조금전 접속 차단했던 내역이 나타납니다. 차단내역의 로그가 아래와 같이 IP로 나타나고 test라는 ID가 1번 차단되었다는 기록을 확인할 수 있습니다.
     




로그인 제한 기능 플러그인을 사용할 때의 주의사항


첫째, 자신의 워드프레스 사이트를 미리 빽업을 받는 것이 좋습니다.

로그인 제한 기능 플러그인을 사용할때는 만약의 사태를 대비해서 자신의 워드프레스 사이트를 미리 빽업받아놓는 것이 좋습니다.
만약의 상황에 로그인이 되지 않는 되었을때 사이트 빽업데이타가 있다면 걱정할 필요가 없을 것입니다.
워드프레스 빽업에 대한 것은 아래 포스팅을 참고바랍니다.

※ 관련 포스팅



둘째, 로그인 제한 기능은 IP 기반으로 동작한다는 점입니다.

로그인 제한 기능 플러그인을 사용하거나 테스트할 때의 주의사항은 로그인 잠금기능이 IP 기반으로 동작하는 것에 유의해야 합니다.
즉 아무리 자신이 워드프레스 사이트 관리자로 로그인해있는 상황이라고 해도 동일한 IP의 PC에서 로그인 제한 잠금 테스트를 한다면 로그인한 관리자 마저도 로그아웃 되어버리는 웃지못할 상황이 벌어지게 됩니다. 자신이 관리자임에도 설정한 시간동안 워드프레스 사이트에 접속이 불가한 상황이 되는 것입니다.

따라서 테스트를 하려고 한다면 워드프레스 사이트를 관리하는 IP의 기기가 아니라 다른 IP를 사용하는 기기를 하는 것이 좋습니다. 가령 3G나 LTE망을 사용하는 자신의 스마트폰으로 로그인 시도 테스트를 하는 것이 실수로 관리자인 자신이 로그아웃되는 것을 미연에 방지할 수 있는 좋은 방법입니다.








지난 시간에 이어서 이번에는 BackWPup 플러그인을 활용해서 워드프레스 사이트 전체를 매일 드롭박스에 자동으로 시스템 빽업하는 방법을 알아보도록 하겠습니다.

[ 이전 포스팅 ]


크론(cron) 이란?


사람이 수작업으로 시스템을 빽업하는 것이 아니라 시스템이 자동으로 빽업하는 것을 시스템적으로 업계에서는 크론이라는 용어를 사용합니다. 유닉스시스템에서 crontab 이라는 스케쥴 배치 작업 명령어를 사용하면서 유래된 용어라고 보면됩니다.

서버 시스템인 유닉스시스템에서 crontab 명령어는 주기적으로 일, 주, 월 단위로 어플리케이션 시스템이 자동 실행되도록 스케쥴링 해서 배치작업을 거는 명령어입니다. 유닉스시스템은 윈도우 이전에 역사가 오래된 시스템입니다.

유닉스 시스템에 대해서 궁금하신 분들은 위키피디아의 유닉스 정의를 참고 바랍니다.

유닉스(Unix)는 교육 및 연구 기관에서 즐겨 사용되는 범용 다중 사용자 방식의 시분할 운영 체제이다. 1970년대 초반 벨 연구소 직원인 켄 톰슨, 데니스 리치, 더글러스 매클로리 등이 처음 개발하였다. 오늘날의 유닉스 시스템은 AT&T를 비롯한 여러 회사들과 버클리대학(UC Berkeley) 등 비영리 단체들이 개발한 다양한 버전들이 있다.
유닉스는 처음부터 다양한 시스템 사이에서 서로 이식할 수 있고, 멀티 태스킹과 다중 사용자를 지원하도록 설계되었다.

스케쥴링 자동 빽업 기능이 가능한 워드프레스


워드프레스도 BackWPup 플러그인을 사용하면 크론 스케쥴링 작업이 가능합니다. 즉 사용자가 원하는대로 일, 주, 월 단위로 워드프레스 시스템을 전체 빽업 받을 수 있는 것입니다.


위험관리(Risk Management)와 일단위 빽업


요즈음에 대부분의 건실한 IT업계에서는 위험관리(Risk Management) 측면에서 웹시스템에 대한 여러가지 빽업 및 복원 계획을 마련하고 있습니다. 우리가 사용하는 워드프레스에서도 작기는 하지만 나름대로의 시스템 위험관리가 있어야 할 것입니다.

어떠한 사유로 인해서 그동안 만들어 놓았던 시스템이 하루 아침에 사라질 수도 있기 때문입니다. 따라서 적어도 일단위의 시스템 빽업 계획은 반드시 필요합니다. 주단위 월단위도 괜찮겠지만 만일 어제 자신의 쇼핑몰에서 고객의 거래가 이루어진 것이 있는데 일주일전의 빽업받은 시스템 복원 형상을 가지고 복원한 들 어제 고객의 거래내용은 사라지게 되는 것입니다.

따라서 적어도 일단위 빽업은 사이트 운영에 필수적인 요소입니다.


드롭박스를 활용해서 일단위 자동 빽업하기


워드프레스를 자동으로 일단위 전체 빽업하기 위해서는 먼저 일단위 전체 빽업 Job을 만들어야 합니다. 왼쪽 사이드바 메뉴에서 BackWPup > Add new job 메뉴를 클릭합니다.



신규 빽업 작업을 만드는 화면이 나타납니다. 아래 화면과 같이 Job Name에 일단위 전체 빽업 이라고 입력합니다. 그리고 Job Tasks 부분은 모두 체크합니다. 압축 화일 형식은 Zip 화일을 선택합니다.




다음은 중요한 부분입니다. 드롭박스로 화일을 보낼 것이기 때문에 생성된 워드프레스 빽업 화일의 목적지인 Job Destination 항목에는 Backup to Dropbox 부분에 반드시 체크를 해야합니다. 아래와 같이 체크를 한 뒤에 저장버튼을 클릭합니다.



스케쥴 설정하기


이제는 자동 배치 작업의 스케쥴을 설정해야합니다. 상단의 Schedule 탭을 클릭합니다.   



스케쥴 탭을 클릭하면 아래와 같이 스케쥴을 설정하는 화면이 나타납니다. 크론 기능을 이용해서 스케쥴을 걸 것임으로 아래와 같이 with WordPress cron 항목에 체크를 합니다. 그리고 매일 새벽2시에 일단위로 시스템을 자동으로 빽업 받을 것이므로 daily 항목에 체크를 하고 시간을 2시로 변경한 뒤에 저장 버튼을 클릭합니다.



드롭박스 연동하기


드롭박스와 연결하기 위해서 Dropbox 탭을 클릭합니다. 아래와 같이 드롭박스 연동화면이 나타납니다. 아직 인증이 되지않았기 때문에 Not authenticated 라는 구문이 나타납니다. 아래의 Create Account 버튼을 클릭해서 드롭박스 로긴을 해서 인증을 해야합니다. Create Accout 버튼을 클릭합니다.



드롭박스에 가입을 하지 않았다면 아래 무료로 가입하기 버튼을 클릭해서 가입절차를 수행해야 합니다. 이미 가입을 하였다면 오른쪽 상단의 로그인 버튼을 클릭합니다.



드롭박스의 로그인을 수행합니다.



드롭박스 인증 코드 얻어서 붙여넣기


드롭박스에 로그인이 되었다면 워드프레스 BackWPup 플러그인 설정화면에서 아래와 같이 Get Dropbox App auth code 버튼을 클릭합니다. 이 버튼은 드롭박스 인증코드를 얻는 버튼입니다.



드롭박스 인증을 하는 버튼을 클릭하면 아래와 같이 드롭박스에서 인증 허가 화면이 나타납니다. 허용 버튼을 클릭합니다.



허용 버튼을 클릭하면 아래와 같이 인증코드가 나옵니다. 이 인증코드를 복사해서 워드프레스 드롭박스 인증코드 입력화면에 붙여넣으면 됩니다. 인증코드를 복사합니다.




아래와 같이 워드프레스 BackWPup 화면에 인증코드를 복사해서 붙여넣고 저장하기 버튼을 클릭합니다.



아래 화면과 같이 Authenticated 라는 구문이 표시되면 드롭박스 연동이 정상적으로 성공한 것입니다. 



일단위 배치작업 확인하기


생성한 일단위 배치작업을 확인하기 위해서 왼쪽 사이드바 메뉴에서 BackWPup > Jobs 메뉴를 클릭합니다.



Jobs 화면에 들어오면 아래와 같이 일단위 전체 빽업 항목이 생성된 것을 확인할 수 있습니다. 오른쪽에 보면 내일부터 새벽2시에 자동으로 매일 워드프레스 시스템이 드롭박스에 빽업 될 것입니다. 



일단위 자동 빽업기능 사용시 주의사항


여기에서 주의할 사항이 있습니다. 시스템 전체 빽업이기 때문에 매일 작게는 60메가에서 수백메가까지 빽업 화일이 생성될 수 있습니다. 따라서 빽업용량이 많으면 드롭박스 용량을 증설하거나 삭제해야 합니다.

또한 한 가지 더 주의할 사항은 웹호스팅 서버 폴더에도 빽업 받도록 하였으나 테스트용으로 정상적으로 동작하는 정도만 확인하고 웹호스팅 서버에 자동빽업하는 기능은 아래 화면과 같이 해제하는 것이 좋습니다. 웹호스팅 서버용량인 일반적으로 많지는 않아서 금세 서버 용량을 풀(Full)나게 되기 때문입니다.



워드프레스의 기본 빽업(backup) 기능


워드프레스는 자체적으로 시스템을 빽업할 수 있는 기능을 내장하고 있습니다. 내장된 빽업기능은 왼쪽 사이드바 메뉴에서 도구 > 내보내기 메뉴에 있습니다.



내보내기 메뉴에 들어오면 워드프레스에 내장된 backup 기능을 사용할 수 있습니다. 수작업으로 필요시에 데이터를 backup 한 뒤에 가져오기를 통해서 backup 데이터를 import 할 수 있습니다. 


워드프레스에 내장된 빽업 기능을 사용하는 것도 좋지만, 주기적으로 시스템 자동빽업 기능으로 사이트를 편리하게 관리하고 싶다면 플러그인을 활용해서 좀더 파워풀한 빽업기능을 사용하는 것이 좋습니다.

빽업 기능자체가 중요한 기능이기 때문에 플러그인 또한 검증된 플러그인을 설치하는 것이 좋습니다. 만약 빽업 플러그인을 통해서 빽업을 받은 상태에서 시스템을 복원해야할 경우가 생길 때 빽업받은 화일이 오류가 있거나 동작이 되지 않는다면 진퇴양난의 상황에 직면할 것입니다. 그래서 검증된 플러그인의 사용은 중요합니다. 

워드프레스 빽업 플러그인으로 거의 독보적인 점유율을 차지하고 있어서 빽업 끝판왕이라 해도 손색이 없는 BackWPup 플러그인입니다. BackWPup 플러그인은 제가 사용해보고 여러차례 테스트해보았지만 빽업 기능의 오류가 없고 복원도 정상적으로 작동하는 훌륭한 플러그인입니다.



워드프레스 빽업은 나한테 맡기라 BackWPup 플러그인 설치하기


BackWPup 플러그인을 설치하기 위해서 왼쪽 사이드바 메뉴에서 플러그인 > 플러그인 추가하기 메뉴를 클릭합니다.



플러그인 검색창에서 backwpup 을 입력하고 검색합니다. BackWPup 플러그인은 40만명 이상이 사용하고 있는 대표적인 backup 플러그인임을 확인할 수 있습니다. 최근 업데이트도 4주 전에 있을 정도로 시스템 유지보수 및 지원 관리도 잘되고 있습니다. 지금 설치하기 버튼을 클릭해서 플러그인을 설치합니다.




플러그인 설치가 완료되었습니다. 플러그인을 활성화 링크를 클릭합니다.     



플러그인 설치가 완료되면 왼쪽 사이드바 메뉴에 BackWPup 이라는 메뉴가 생성된 것을 확인할 수 있습니다.     



플러그인이 설치되면 처음에는 플러그인 설명을 하는 화면이 나타납니다.





     

원클릭으로 워드프레스를 바로 빽업하기


먼저 BackWPup > Dashboard 메뉴에 들어갑니다. 



Dashboard 화면에서는 원클릭 빽업 기능을 제공합니다. 여러가지 부수적인 세팅을 하지 않아도 클릭한번으로 바로 워드프레스를 빽업하는 기능입니다. 원클릭 빽업은 간단합니다. 바로 아래 화면에 Download database backup 버튼을 클릭하면 됩니다. 아래 버튼을 클릭합니다.




버튼을 클릭하자마자 자신의 컴퓨터에 sql 화일이 다운로드 된 것을 확인할 수 있습니다. sql 화일은 워드프레스의 데이터베이스의 화일입니다. 여기에서는 MySQL을 데이터베이스로 사용하고 있기 때문에 MySQL 안에 있는 워드프레스 데이터베이스 전체가 빽업된 것입니다. 이 화일만 있으면 자신의 워드프레스 데이터베이스가 손상되었다해도 다시 복원할 수 있는 것입니다.




그럼 이제 본격적으로 BackWPup 플러그인을 사용해보도록 하겠습니다.


# 빽업 작업을 만들고 시스템 전체 빽업하기

시스템 빽업을 하기 위해서는 신규 빽업작업을 만들어야 합니다. BackWPup에서는 빽업작업을 Job이라고 합니다. 신규 빽업작업을 만들기 위해서 왼쪽 사이드바에서 BackWPup > Add new job 메뉴를 클릭합니다.



Add new job메뉴를 클릭하면, 빽업 작업을 만드는 화면이 나타납니다. 다른 것은 바꿀 필요가 없고 아래 박스로 표시한 부분만 변경합니다. 먼저 General 탭에서 Jab Name 항목에 시스템 전체 빽업이라고 작성합니다. 그리고 아래쪽에 Archive Format 항목은 Zip 부분에 체크를 합니다. 기본으로는 Tar GZip으로 되어있으나 Tar GZip은 테스트해본 결과 압축해제시 에러가 발생했습니다




Job Destination은 빽업 받은 화일의 목적지를 정하는 항목으로 일단 첫번째 Backup to Folder 항목에 체크를 합니다. 이렇게 설정한 뒤 일단 아래쪽의 저장버튼을 클릭해서 신규 빽업작업의 설정내역을 저장합니다.



빽업 받은 화일은 어디에?


빽업 작업이 수행되면 빽업 받은 화일이 어디에 생성되는지는 알아야합니다. 상단 오른쪽에 To:Foler 탭을 클릭합니다.
이 화면에 들어오면 uploads/backwpup-0ab680-backups/ 폴더안에 빽업화일이 생성되는 것을 확인할 수 있습니다.



 uploads 폴더는 자신의 웹호스팅 서버나 로컬PC의 워드프레스가 설치된 디렉토리 경로에서 /wp-content/uploads 폴더를 말합니다.



워드프레스 전체빽업 실행하기


조금전 신규 빽업 작업을 시스템 전체빽업이라고 만들었습니다. 이제 생성한 신규빽업 작업을 실행해서 워드프레스를 빽업할 차례입니다. 왼쪽 사이드바에서 BackWPup > Jobs 메뉴를 클릭합니다.


Jobs 메뉴에 들어오면 조금전 만들었던 신규 작업인 시스템 전체 빽업이 나타납니다. 맨 오른쪽을 보면 Last Run 항목이 not yet으로 아직 빽업 작업이 수행되지 않된 것을 확인할 수 있습니다.

만약 추가적으로 빽업 작업에 수정할 일이 있다면 Edit를 클릭해서 수정하면 됩니다. 
화살표가 가르키는 Run now을 클릭하면 전체 빽업이 진행됩니다. Run now 링크를 클릭합니다.



빽업 작업이 진행되고 있습니다. 프로그레스 진행바가 표시되면서 빽업 작업이 진행됩니다. 자신의 워드프레스 사이트의 규모에 따라서 작업 시간이 소요될 것입니다. 그렇지만 일반적으로 빽업시간은 그리오래 걸리지 않습니다.



전체 빽업 작업이 완료되었습니다. 프로그레스 진행바가 100%로 표시되면 완료된 것입니다. 전체 작업시간은 14초가 걸렸습니다.
아래처럼 목록을 통해서 작업시간과 로그를 확인할 수 있습니다.




빽업 화일 확인하기


워드프레스 시스템 빽업 작업이 완료되었으므로 빽업한 화일을 확인해야합니다. 워드프레스 서버에서 작업을 한 경로로 이동합니다. FTP 프로그램을 이용해서 자신의 서버에 접속합니다. 로컬PC에 설치한 유저는 로컬의 경로로 이동하면 됩니다.

/wp-content/uploads 디렉토리 경로로 이동하니 backups, logs, temp 세 개의 폴더가 신규로 생성된 것을 확인할 수 있습니다.
backups 폴더를 클릭하면 아래와 같이 zip화일로 압축된 워드프레스 빽업 화일을 나타납니다. 이 빽업화일은 데이터베이스 빽업 뿐아니라 워드프레스 서버내 화일도 모두 빽업된 화일입니다. 이 화일 하나만 있으면 자신의 워드프레스 사이트를 그대로 복원할 수 있는 것입니다.
logs 폴더는 로그화일이 있는 폴더이고 temp는 임시화일 폴더입니다. 



이번 시간에 공부한 배치작업은 수작업으로 사람이 클릭을 해서 빽업을 했지만 다음시간에 공부할 배치작업은 시간을 정해놓으면 주기적으로 자동 빽업을 받는 배치 작업에 대해서 알아보도록 하겠습니다.


워드프레스를 새롭게 시작하고 싶을때


워드프레스를 처음 세팅하고 여러가지 플러그인을 설치하다보면 어느 순간에는 워드프레스 전체를 다시 삭제하고 처음부터 다시 설치하고 싶을때가 있습니다. 이럴때는 워드프레스를 삭제하는 플러그인인 WordPress Reset 플러그인을 사용하면 간편하게 워드프레스를 초기화 할 수 있습니다.



서버의 화일은 별도로 삭제가 필요하다


그렇지만 유의해야할 사항은 WordPress Reset 플러그인을 사용해서 워드프레스를 삭제한다고 해도 자신이 워드프레스 서버의 파일은 별도로 삭제해야합니다. WordPress Reset 플러그인은 데이터베이스인 MySQL내에 설치되었던 워드프레스 내역을 삭제하기 때문에 호스팅받는 서버나 자신의 로컬PC에 있는 화일은 그대로 남아있습니다. 


따라서, 초기화 플러그인을 사용을 한 뒤에는 서버의 파일을 삭제하는 작업도 병행하면 됩니다.



워드프레스 초기화 플러그인 WordPress Reset 설치하기


관리자 화면의 사이드바에서 플러그인 추가하기 메뉴를 클릭합니다.



플러그인 검색창에서 wordpress reset 이라고 입력하고 검색하면 첫번째 검색되는 WordPress Reset의 지금 설치하기 버튼을 클릭합니다.



플러그인이 설치되었습니다. 플러그인을 활성화 링크를 클릭합니다.


워드프레스 삭제하기


왼쪽 사이드바에서 도구 > Reset 메뉴가 생성된 것을 확인할 수 있습니다. 워드프레스를 초기화하기 위해서 Reset 메뉴를 클릭합니다.



워드프레스를 초기화하는 화면입니다. 초기화 작업은 간단합니다. 아래 입력필드에 reset 이라고 입력하고 Reset 버튼을 클릭하면 됩니다.
그렇지만, 간단하다고 해서 함부로 사용하는 기능은 아닙니다. 

자신의 열심히 작업하고 만든 워드프레스 사이트가 클릭한번으로 없어지기 때문입니다. 따라서 삭제나 초기화 작업전에는 반드시 워드프레스를 빽업해두는 습관이 필요합니다. 다음 시간에는 워드프레스를 빽업받는 방법에 대해서 공부해보도록 하겠습니다.



사이트의 불청객 불퍼머


인터넷을 통해서 콘텐츠를 무단으로 복사해서 사용하는 불펌은 언제나 블로그나 웹사이트 운영자의 골치거리입니다. 자신의 사이트 콘텐츠를 다른 사람이 링크로 공유하는 것은 좋은 일이지만 불법 복사해서 사용하는 것은 반갑지 않은 일입니다. 특히 네이버나 티스토리등 블로그를 운영해서 이른바 파워블로거까지는 아니더라도 준파워블로거(대략 일방문자 5,000명 ~ 10,000명정도, 수치는 개인적인 생각) 수준의 블로그를 운영하는 사람이라면 불펌과의 전쟁은 한차례 치루었을 것입니다.


주객이 전도된 황당한 사건


저의 경우에도 네이버 블로그 운영시에 황당한 일을 여러번 겪곤했습니다. 당시에는 이른바 제품 리뷰성 블로그를 운영하고 있었습니다. 일방문객은 준파워블로그 수준이었습니다. 그런데 제가 운영했던 네이버블로그의 콘텐츠가 그대로 복사되어 제목만 변경되어서 다른 네이버 블로그에 게시되고 있었습니다. 그런데 더욱 황당한 것은 원본인 제블로그는 검색이 되지 않고, 제 것을 복사한 불퍼머의 블로그 내용만 네이버에서 검색되는 사건이었습니다.

저는 즉각 조치에 나섰습니다. 당장 저의 콘텐츠를 무단으로 도용한 블로거에게 댓글과 메일을 보냈고, 네이버 서비스팀에 해당 내용을 전달하였습니다.

결국 네이버 서비스팀에서 검토 후에 불퍼머의 게시물을 내리고 저의 콘텐츠를 다시 정상으로 검색되도록 조치하였습니다. 이 일로 저는 콘텐츠 보호에 대한 생각을 새롭게 하는 계기가 되었습니다.





워드프레스 콘텐츠를 보호하자


네이버와 마찬가지로 워드프레스로 만든 사이트 역시 마찬가지입니다. 워드프레스로 만든 자신의 사이트의 인지도가 높아질수록 자신의 콘텐츠는 불법복사의 위험에 노출될 확률이 높아집니다.

웹사이트상에서 불법 복사를 하는 가장 일반적인 방법은 두 가지가 있습니다.
첫번째는 마우스 드래그이고, 두번째는 마우스 우클릭을 이용해서 콘텐츠를 복사해가는 것입니다.
웹사이트 콘텐츠를 보호하는 방법은 여러가지가 있지만 일단 기본적인 두가지 기능으로 콘텐츠 보안 강화를 한다면, 불법 복사에 상당한 효과를 볼 수 있습니다.
 
이런 두 가지 기능을 웹사이트에 적용하려면 기술상으로는 일반적으로 자바스크립트 프로그래밍 기술이 사용됩니다.
그렇지만 워드프레스를 사용한다면 자바스크립트 코딩을 하지 않고 플러그인 설치와 활성화만으로 마우스를 이용한 콘텐츠 복사 방지 기능을 구현할 수 있습니다.


콘텐츠 복사 방지 파수꾼 WP Content Copy Protection & No Right Click 플러그인 설치


여기에서는 WP Content Copy Protection & No Right Click 플러그인을 사용하겠습니다.
콘텐츠 복사 방지 플러그인을 설치하기 위해서 관리자화면의 왼쪽 사이트바에서 플러그인 추가하기 메뉴를 클릭합니다.




플러그인 검색창에서 wp content copy를 입력하고 검색합니다. 첫번째 검색된 플러그인의 지금 설치하기 버튼을 클릭해서 설치합니다.



플러그인이 설치되었습니다. 플러그인을 활성화 링크를 클릭해서 플러그인을 활성화합니다.




마우스 복사 방지 기능 확인하기


콘텐츠 보안 플러그인이 제대로 설치되었는지 확인하는 것은 간단합니다. 플러그인이 설치되고 활성화되었다면 바로 테스트가 가능합니다.
자신의 워드프레스 사이트에 들어가서 마우스 우클릭 버튼을 클릭해보거나 마우스 드래그를 해보면 됩니다.
오른쪽 마우스를 클릭하면 아래 화면과 같이 경고창이 뜨고 마우스 오른쪽 버튼이 동작하지 않습니다.


또한 마우스 드래그해서 텍스트나 이미지를 복사하려해도 복사가 되지 않는 것을 확인할 수 있습니다.




+ Recent posts