정적 HTML 사이트를 워드프레스 커스텀 테마로 이전하기 ① 초기 설정과 플러그인 정리

작성자

카테고리:

호스팅 구매

카페24에서 ‘뉴매니지드 워드프레스 호스팅’을 구매한다.
비용은 아래와 같고, 우선 ‘빌드업’으로 구매했다.

관리자 접속 및 플러그인 설정

호스팅 구입 후 도메인 뒤에 /wp-admin 을 입력하고 들어가면 워드프레스 관리자에 접속 할 수 있다.

좌측 메뉴 ‘플러그인 – 설치한 플러그인’ 으로 들어가면, 워드프레스에서 기본으로 설치되는 플러그인과 카페24 뉴매니지드 호스팅에서 기본으로 설치되는 플러그인을 확인 할 수 있다.

보안, 캐시, 스팸 방지와 관련된 플러그인이 기본으로 여러 개 설치되어 있었다. 각 플러그인이 어떤 역할을 하는지 확인해 보자.

1. Akismet Anti-spam: 스팸 방지

워드프레스의 댓글이나 문의 폼으로 들어오는 내용을 분석하여 스팸을 자동으로 걸러주는 플러그인이다.

댓글 기능을 사용하거나 문의 폼에 스팸이 자주 들어오는 사이트라면 도움이 되지만, 댓글을 사용하지 않는 일반 기업·병원 홈페이지에서는 활용도가 낮을 수 있다.

2. Disable XML-RPC-API: XML-RPC 차단

워드프레스의 XML-RPC 기능을 비활성화하는 플러그인이다.

XML-RPC는 외부 프로그램에서 워드프레스에 글을 작성하거나 원격으로 관리할 때 사용하는 기능이지만, 무차별 로그인 공격이나 핑백 스팸에 악용되기도 한다. 외부 앱, 원격 게시, Jetpack 등의 기능을 사용하지 않는다면 차단해도 된다.

다만 다른 보안 플러그인에서 XML-RPC 보호 기능을 제공한다면 별도로 설치할 필요는 없다.

3. Hello Dolly: 관리자 화면에 가사 표시

워드프레스에 기본으로 포함되는 예제 플러그인이다.

활성화하면 워드프레스 관리자 화면 오른쪽 위에 재즈 음악 ‘Hello, Dolly!’의 가사가 무작위로 표시된다. 사이트 운영이나 보안, 성능에 필요한 기능은 없으며 워드프레스 플러그인이 작동하는 방식을 보여주기 위한 상징적인 예제에 가깝다.

홈페이지 제작에는 필요하지 않으므로 삭제해도 된다

4. Login Lockdown: 로그인 시도 제한

워드프레스 로그인에 여러 번 실패한 IP 주소를 일정 시간 동안 차단하는 플러그인이다.

관리자 비밀번호를 반복해서 입력하는 무차별 대입 공격을 막는 용도로 사용한다. 로그인 보안 기능이 포함된 다른 보안·방화벽 플러그인을 사용하고 있다면 기능이 중복될 수 있다.

5. NinjaFirewall (WP Edition): 워드프레스 방화벽

워드프레스에 들어오는 HTTP·HTTPS 요청을 검사하여 악성 요청을 차단하는 웹 애플리케이션 방화벽(WAF) 플러그인이다.

일반적인 워드프레스 플러그인보다 앞단에서 요청을 검사하기 때문에 악성 코드 삽입, 해킹 시도, 비정상적인 로그인 요청 등을 워드프레스에 도달하기 전에 차단할 수 있다.

로그인 공격 방어, XML-RPC 보호, 파일 변경 감지, 방화벽 로그 확인 등의 기능도 제공한다.

6. Really Simple Security: SSL 및 종합 보안

이전에는 ‘Really Simple SSL’이라는 이름으로 알려졌던 플러그인이다.

HTTP 주소를 HTTPS로 리디렉션하고 SSL 적용을 도와주는 기능에서 시작했으며, 현재는 취약점 탐지, 로그인 보호, 워드프레스 보안 강화, 2단계 인증 등의 기능도 제공한다.

호스팅에서 이미 SSL이 자동 적용되고 있고 다른 방화벽과 2단계 인증 플러그인을 사용한다면 기능이 상당 부분 중복될 수 있다.

7. Two Factor: 2단계 인증

워드프레스 관리자 로그인에 2단계 인증을 추가하는 플러그인이다.

기존 아이디와 비밀번호를 입력한 후 인증 앱의 일회용 코드, 이메일 인증 코드, 백업 코드 등의 추가 인증을 거쳐야 로그인할 수 있도록 한다.

비밀번호가 외부에 노출되더라도 인증 코드가 없으면 관리자 페이지에 접근하기 어려워지기 때문에 관리자 계정 보안에 효과적이다.

플러그인을 활성화한 뒤에는 ‘사용자 → 프로필’에서 사용할 인증 방식을 별도로 설정해야 한다.

8. WP 슈퍼 캐시: 사이트 속도 개선

워드프레스에서 생성되는 동적 페이지를 정적 HTML 파일로 저장하는 캐시 플러그인이다.

방문자가 페이지를 열 때마다 PHP와 데이터베이스를 실행하는 대신 미리 만들어 둔 HTML 파일을 보여주기 때문에 서버 부하를 줄이고 사이트의 표시 속도를 개선할 수 있다.

다만 사이트 제작 중에는 CSS나 HTML을 수정해도 이전 화면이 계속 보일 수 있다. 따라서 제작 중에는 비활성화하고 사이트 공개 전에 다시 활성화하는 편이 작업하기 편하다.

9. WPForce Logout: 사용자 강제 로그아웃

워드프레스에 로그인한 사용자를 강제로 로그아웃시키는 플러그인이다.

여러 명이 로그인하는 회원제 사이트에서 특정 사용자 또는 전체 사용자의 로그인 세션을 종료할 때 사용할 수 있다. 관리자 한두 명만 사용하는 일반 홈페이지에서는 활용할 일이 많지 않다.

플러그인 정리 결과

설치된 플러그인을 확인해 보니 보안과 로그인 보호 기능이 여러 플러그인에 중복되어 있었다.

이번 작업할 홈페이지는 회원제 사이트가 아니고 관리자만 워드프레스에 로그인하므로, 방화벽은 NinjaFirewall 하나로 관리하고 Two Factor로 관리자 2단계 인증을 적용하기로 했다.

WP 슈퍼 캐시는 홈페이지 제작 중에는 비활성화하고, 작업이 끝난 뒤 사이트 공개 전에 다시 활성화할 예정이다.

이렇게 3가지 플러그인만 남기고 ‘지금 업데이트’ 버튼을 눌러 업데이트를 한다.
나머지 플러그인은 삭제, 활성화 되어있는 플러그인은 ‘비활성화’를 시킨 후 삭제하면 된다.


Disable XML-RPC-API 플러그인만 삭제를 누르면 치명적인 오류가 있다고 나오는데, 플러그인이 오래돼서 삭제 과정에서 오류를 내는 것 같다. ‘비활성화’ 상태기 때문에 사이트 작동에는 영향이 없어서 그대로 놔둬도 되고, FTP로 접속해서 폴더를 지워도 된다.

FTP 접속 후 , /www/wp-content/plugins 경로로 들어가서 disable-xml-rpc-api 폴더를 지우면 된다.

이렇게 깔끔하게 정리를 했다. 정리를 하고나서 보니 ‘Two Factor’ 플러그인 명칭이 한글로 ‘이중 인증’ 이라고 나온다. 이유는 모르겠지만 상관 없으니 다음으로 넘어간다.

코멘트

답글 남기기

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