워드프레스 댓글 IP 주소 삭제 / 저장되지 않도록 하는 방법

Last Updated: 2020년 05월 13일 8개 댓글

워드프레스에서 사용자들이 댓글을 달면 IP 주소가 데이터베이스에 저장됩니다. 워드프레스 댓글 IP 주소를 삭제하고 싶거나 댓글 IP 주소가 저장되지 않도록 하고 싶은 경우 몇 가지 방법으로 가능합니다.

워드프레스 댓글 사용자의 IP 주소

기본적으로 워드프레스에서는 댓글을 다는 사용자들의 IP 주소를 보관합니다. 각 댓글에 대하여 IP 주소를 저장함으로써 원치 않는 댓글이나 스팸을 처리할 수 있습니다. Akismet과 같은 스팸 방지 플러그인은 해커들이 악용하는 IP 주소의 댓글들을 차단할 수 있습니다.

워드프레스 댓글 IP 주소 삭제 및 댓글 IP 주소 저장하지 않기

사용자들이 VPN 서비스를 사용하는 경우 사이트 로그에 실제 IP 주소가 기록됩니다. 대부분의 워드프레스 호스팅 업체들은 사이트 방문자들에 대한 로그 파일에 접근하도록 허용합니다.

한편으로 워드프레스 댓글과 관련하여 IP 주소를 저장하지 않으면 댓글 작성자들에 대한 프라이버시를 향상시킬 수 있습니다. 만약 사이트에서 IP 주소를 저장하지 않는다고 밝히면 사용자들이 의견을 보다 적극적으로 밝힐 수 있을 것입니다.

워드프레스 댓글 IP 주소 저장하지 않도록 하는 방법

플러그인을 사용하여 워드프레스 댓글 IP 주소 저장하지 않기

워드프레스에서 댓글 작성자의 IP 주소가 저장되지 않도록 하는 가장 간단한 방법으로 플러그인을 사용하는 것입니다. Remove IP라는 플러그인을 사용하면 댓글 작성자의 IP 주소가 '127.0.0.1'로 변경되어 저장됩니다. '127.0.0.1'은 localhost에서 일반적으로 사용되는 IP 주소입니다.

이 플러그인은 4년 이상 업데이트가 안 되고 있어 사용을 그리 권장하지 않지만 최신 워드프레스 버전(현재 5.4 버전)과 아바다 테마에서 테스트해보니 잘 작동하는 것을 확인했습니다. 플러그인을 설치하려면 워드프레스 관리자 페이지 > 플러그인 > 새로 추가에서 'Remove IP guido'로 검색하시기 바랍니다.

플러그인을 설치하기 전의 댓글들에 대해서는 IP 주소가 변경되지 않고, 새로 작성하는 댓글의 댓글 작성자 IP 주소가 '127.0.0.1'로 설정됩니다. 기존 댓글 IP 주소 정보를 제거하는 방법은 아래의 "워드프레스 댓글 IP 주소 삭제하기" 부분을 참고하시기 바랍니다.

코드를 추가하여 수동으로 워드프레스 댓글 IP 주소가 저장되지 않도록 하는 방법

위에서 소개한 플러그인을 이용하는 방법은 그다지 바람직하지 않습니다. 플러그인이 오랫동안 업데이트가 안 되어 최신 버전에서 충돌이 발생할 가능성도 있습니다. 플러그인 대신 간단히 다음 코드를 사용 중인 테마의 함수 파일에 추가하여 수동으로 워드프레스 댓글 작성자의 IP 주소가 데이터베이스에 보관되지 않도록 설정할 수 있습니다.

function wp_remove_commentsip( $comment_author_ip ) {
return '';
}
add_filter( 'pre_comment_user_ip', 'wp_remove_commentsip' );

이 코드는 기본적으로 위에서 소개한 플러그인과 동일한 기능을 하지만, 플러그인을 사용할 경우 댓글 작성자의 IP 주소가 '127.0.0.1'로 설정되는 반면 위의 필터(후크)를 사용할 경우 댓글 IP 주소 필드가 공백으로 아무런 값도 저장되지 않습니다.

워드프레스 댓글 IP 주소 삭제하기

위의 방법을 사용하면 새로운 댓글에 대하여 IP 주소가 저장되지 않지만 기존 댓글의 IP 주소에는 영향을 미치지 않습니다.

기존 댓글에서 IP 주소를 제거하고 싶은 경우에는 간단한 DB 작업으로 모든 댓글에서 IP 주소 정보를 제거할 수 있습니다. 이 작업을 위해서는 MySQL 클라이언트 툴(예: phpMyAdmin)에 접근이 가능해야 합니다.

phpMyAdmin을 이용하는 경우 phpMyAdmin에 로그인하도록 합니다. 블루호스트 (Bluehost) 등 cPanel을 이용하는 웹호스팅에서는 cPanel에 로그인하여 이 툴에 접근할 수 있습니다("해외호스팅 블루호스트에서 phpMyAdmin에 접속하는 방법" 참고). phpMyAdmin에 접속할 수 없는 경우 웹호스팅 업체에 문의해보시기 바랍니다.

아래 작업을 실행하기 전에 반드시 DB를 백업하시기 바랍니다!!! DB 작업은 돌이킬 수 없고, 실수할 경우 사이트에 접속하지 못할 수도 있습니다.

phpMyAdmin에 접속한 다음 SQL 탭으로 이동하여 다음 라인을 추가하여 실행하도록 합니다.

UPDATE 'wp_comments' SET 'comment_author_IP' = '';

테이블 프리픽스 wp_는 사용 중인 워드프레스 사이트에 맞게 적절히 변경하시기 바랍니다. 위의 코드가 오류가 발생하면서 실행이 실패하면 MySQL 버전에 따라 따옴표를 삭제하면 오류가 발생하지 않을 수 있습니다.

UPDATE wp_comments SET comment_author_IP = '';

SQL UPDATE Statement에 대한 자세한 내용은 W3Schools 문서를 참고해보세요.

워드프레스 댓글 작성자들의 IP 주소 데이터 제거

위의 SQL 지시문을 실행한 다음 워드프레스 알림판 > 댓글 페이지를 방문해보면 기존 댓글들의 IP 주소가 모두 제거된 것을 확인할 수 있습니다. 앞으로도 댓글에 IP 주소가 저장되지 않도록 하려면 위에서 설명한 "워드프레스 댓글 IP 주소 저장하지 않도록 하는 방법' 부분을 참고하시기 바랍니다.

이 워드프레스 블로그에서 기존 댓글의 IP 주소를 이 방법으로 모두 제거했습니다. DB에서 IP 주소를 삭제하고 WP-Sweep 플러그인을 사용하여 데이터베이스 최적화를 실행하니 DB 파일 크기가 약 0.5MB 정도 감소했습니다("데이터베이스 최적화로 워드프레스 사이트 성능 향상시키기" 참고).

마치며

이상으로 워드프레스 댓글에서 IP 주소 정보를 제거하고 IP 주소가 저장되지 않도록 하는 방법에 대해 살펴보았습니다. 개인정보 보호정책에 따라 IP 주소와 같은 민감한 주소를 수집할 수 없는 경우 이 방법을 이용할 수 있습니다.

그리고 워드프레스 사이트에서 발생하는 모든 활동에 대한 로그를 기록하고 싶은 경우 "워드프레스 보안 감사 로그 플러그인 WP Security Audit Log"에서 소개하는 플러그인을 사용할 수 있습니다.

참고:


8 개 댓글

Leave a Comment

    • 본문의 "코드를 추가하여 수동으로 워드프레스 댓글 IP 주소가 저장되지 않도록 하는 방법" 부분에 제시된 코드를 이용하여 작동하는지 확인해보시기 바랍니다. 플러그인은 작동할 것 같지만, 업데이트를 안 한지 오래되었기 때문에 사용하려는 경우 설치 후 사이트에 문제가 발생하지 않는지 면밀하게 모니터링하시기 바랍니다.

      응답
  1. 플러그인을 사용하지 않고 cPanel 안에 있는 phpMyAdmin에서 IP 주소를 어떻게 볼 수 있나요? 테이블을 보아도 이 정보는 전혀 안보이는데요. 일일이 수동으로 IP 체크한다음에 스팸으로 필터링을 하려고 합니다.

    만약 이러한 플러그인들이 있다면, 이 플러그인도 phpMyAdmin에 있는 데이터베이스의 정보를 꺼내서 정보를 제공하는것인데, 이것을 수동으로 제가 직접 볼수는 없나요? 아무리 찾아도 방문자 IP 와 댓글 IP를 phpMyAdmin 의 테이블에서 찾을수가 없더라고요.

    방문자 IP 도 수동으로 phpMyAdmin의 테이블에서 (플러그인없이) 확인할수 있나요?
    서로 비교해서 체크한후

    응답
  2. 안녕하세요. 늘 유익한 포스팅 제공해주셔서 감사합니다.
    다름이 아니라 뭐 하나 여쭤 보고 싶은데요.
    만약 비회원이 첨부파일을 받았을 때
    그 사람의 ip주소를 알 수 있는 방법이 있을까요?
    미리 감사드립니다.

    응답
    • 네. Akismet과 같은 플러그인을 사용하지 않는 경우 굳이 저장할 필요는 없는 것 같습니다.
      간혹 악플을 다는 사용자가 있으면 IP 주소를 기록해두기는 하지만, 그런 경우는 드문 편이네요.ㅎ
      저는 1년에 한 두 번 정도 정기적으로 댓글 IP 주소를 삭제하는 것을 고려하고 있습니다.

      응답