2026年8月3日

2026年8月3日

WordPressのセキュリティヘッダーを設定する方法

はじめに

WordPressサイトを安全に運用するためには、適切なセキュリティヘッダーの設定が重要です。これらのヘッダーはウェブサーバーとクライアントブラウザ間でやりとりされるHTTPヘッダーで、サイトに対する攻撃や不正アクセスを防ぐ役割があります。

症状・背景

このテーマが必要になる主な場面:

  • <サイトが頻繁に不正アクセスを受けている>
  • <スパムコメントやアタックが増加している>
  • <脆弱性スキャンツールで問題点が指摘された>
  • <セキュリティ上のリスクを低減したい>

手順・設定方法

ステップ1: HTTP Strict Transport Security (HSTS) を有効にする

# WordPressサイトのwp-config.phpファイルを開く
nano /var/www/html/wp-config.php

# 以下の行を追加してHSTSヘッダーを有効化
define('FORCE_SSL_ADMIN', true);
header("Strict-Transport-Security: max-age=31536000; includeSubDomains");

# ファイルの保存と終了
CTRL + X, Y, ENTER

ステップ2: Content Security Policy (CSP) を設定

# .htaccessファイルを開く
nano /var/www/html/.htaccess

# 以下の行を追加してCSPヘッダーを設定
Header set Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline' https://*.google-analytics.com; object-src 'none';"

# ファイルの保存と終了
CTRL + X, Y, ENTER

ステップ3: X-Frame-Options を設定

# .htaccessファイルを開く
nano /var/www/html/.htaccess

# 以下の行を追加してX-Frame-Optionsヘッダーを設定
Header set X-Frame-Options "SAMEORIGIN"

# ファイルの保存と終了
CTRL + X, Y, ENTER

ステップ4: 設定後の動作確認

# curlコマンドを使用してHTTPレスポンスヘッダーを確認する
curl -I https://yourdomain.com/

注意事項

  • <実践的な注意点1>: HSTSの設定は一度有効にすると容易に解除できません。
  • <実践的な注意点2>: CSPの初期設定では一部のJavaScriptが動作しない可能性があります。
  • <セキュリティ上の注意>: これらのヘッダーを適切に設定することでサイトの安全性を高めますが、完全なセキュリティにはなりません。
  • <パフォーマンス/運用上の注意>: セキュリティヘッダーはサイトのパフォーマンスに影響を与える可能性があります。

まとめ

1. <キー1>: HSTSを使用してHTTPS通信を強制する

2. <キー2>: CSPで許可するソースを明確にする

3. <キー3>: X-Frame-Optionsヘッダーでクリックジャッキング攻撃から保護

4. <キー4>: 設定後の動作確認を行うこと

5. <キー5>: 安全な設定の適切な管理と監視

関連記事:

お気軽にご相談ください

お見積りへ お問い合わせへ