워드프레스: 내 IP 주소만 XML-RPC에 접근하도록 제한하기

Last Updated: 2024년 01월 12일 댓글

XML-RPC를 허용할 경우 디도스 공격의 통로가 될 수 있으므로 일반적으로 XML-RPC를 비활성화하는 것이 보안상 바람직합니다.

일부 보안 플러그인에서는 XML-RPC를 비활성화하는 옵션이 제공되기도 하고 Apache 서버에서는 .htaccess 파일에 간단한 코드를 추가하여 XML-RPC 접근을 차단할 수 있습니다.

외부 프로그램을 통해 워드프레스에 자동 포스팅을 하는 경우 xml-rpc를 허용해야 할 수 있습니다. 이런 경우 xml-rpc를 전면적으로 허용하는 것보다 특정 IP 주소만 접속할 수 있도록 제한하는 것을 고려할 수 있습니다.

워드프레스: 내 IP 주소만 XML-RPC에 접근하도록 제한하기

요즘 챗GPT를 활용하여 워드프레스에 자동화 포스팅을 하는 분들이 늘어나고 있는 것 같습니다. 쿠팡 파트너스 같은 제휴 프로그램 관련 글도 자동 포스팅 방식으로 많이 시도되고 있습니다.

자동 포스팅의 경우

  1. 프로그램을 사용하여 외부에서 자동 포스팅을 하거나
  2. 워드프레스용 플러그인을 설치하여 워드프레스 내에서 자동으로 글을 생성하는 등

두 가지 방법으로 이루어지는 것 같습니다.

워드프레스에서 XML-RPC는 원격으로 워드프레스 사이트와 상호작용할 수 있게 하는 프로토콜입니다. 이 기능은 다른 애플리케이션에서 워드프레스 사이트에 연결하여 게시글을 작성, 수정, 삭제하거나 댓글을 관리할 수 있도록 합니다. 예를 들어, 스마트폰의 워드프레스 앱을 사용하여 원격으로 블로그를 관리할 수 있습니다.

XML-RPC는 XML을 사용하여 데이터를 전송하고, HTTP를 통해 이 데이터를 전달합니다. 이 기능은 워드프레스가 다양한 시스템과 통합되는 데 도움이 되지만, 보안 문제로 인해 많은 워드프레스 사용자가 이 기능을 비활성화하기도 합니다.

XML-RPC를 활성화해야 하는 경우 특정 IP 주소만 접근이 가능하도록 다음과 같은 코드를 .htaccess 파일에 추가할 수 있습니다.

# Block WordPress xmlrpc.php requests
<Files xmlrpc.php>
order deny,allow
deny from all
allow from 192.168.1.2
</Files>

IP 주소 부분은 실제 IP 주소를 입력하시기 바랍니다. 여러 개의 IP 주소를 허용하도록 추가할 수 있습니다.

allow from [First IP Address]
allow from [Second IP Address]
...

참고로 <Files xmlrpc.php> 대신 <Files xmlrpc\.php>와 같이 백슬래시를 사용하여 점(.)을 이스케이프하면 xmlrpc.php만을 대상으로 한다는 것이 명확해져 보다 정확한 지시문이 된다고 하네요. 구글링하면 대부분 백슬래시(\) 없이 사용되고 있으므로 보통은 백슬래시 유무가 영향을 미치지 않는 것 같습니다.

이 작업을 수행하려면 FTP/SFTP에 접속하여 .htaccess 파일을 수정할 수 있어야 합니다.

내 IP 주소를 확인하려면 구글이나 네이버에 "내 IP 주소"로 검색하면 내 컴퓨터에 연결된 인터넷 회선의 공인 IP 주소를 확인할 수 있습니다.

특히 네이버에서 "내 IP 주소"를 검색하면 곧바로 IP 주소가 표시됩니다.😄😄

마치며

이상으로 특정 IP 주소만 허용하도록 xml-rpc 액세스를 제한하는 방법에 대하여 살펴보았습니다.

워드프레스에서 XML-RPC에 접근하려고 시도할 때 "ERR_HTTP2_PROTOCOL_ERROR" 에러가 발생하면 xml-rpc를 허용하거나 특정 IP 주소(내 IP 주소)만 허용하도록 조치를 취하면 문제가 해결될 것입니다.

참고


댓글 남기기

Leave a Comment