2022/09/01
Webサイトを制作したら必ず設定したい「.htaccess」によるセキュリティ対策
Webサイトのセキュリティを保つためには、プログラム面での対策も有効ですが、「.htaccess」を利用した方法も有効です。
今回はWebサイトのセキュリティに役立つ.htaccessの設定例をご紹介します。
目次
クロスサイトスクリプティング(XSS)、クリックジャッキング脆弱性対策
XSSによる悪意のあるスクリプトの実行回避、クリックジャッキングによるiframeを利用した悪意のある操作を回避します。
Header set X-XSS-Protection "1; mode=block" Header always set X-Content-Type-Options "nosniff" Header always set X-Download-Options: noopen Header set X-Powered-By: "" Header always append X-Frame-Options SAMEORIGIN
htaccessへのアクセスをブロック
「.htaccess」に不正アクセスされるのを防ぐために、.htaccess自体へのアクセス制限をします。
deny from all
ディレクトリの表示禁止
ブラウザでディレクトリにアクセスされた際、ファイル一覧が閲覧できないようにします。
Options -Indexes
Webサイトを強制的にSSL通信にする
サイトをHTTPSプロトコルで読み込むように強制します。
以降の指定された期間は当該サイトには全てHTTPSによって接続します。
Header set Strict-Transport-Security "max-age=31536000; includeSubDomains" RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
Secure Cookieでsecure属性を追加する
SSL通信がされていても、cookieで「secure属性」を指定しないとcookie内の情報が漏洩する可能性があります。
php_flag session.cookie_httponly on php_flag session.cookie_secure On
WordPressの管理画面(wp-login.php)へのアクセスをブロック
WordPressの管理画面への不正アクセスを防ぐため、固定IPのみ接続を可能にし、関係者以外のアクセスをブロックします。
※「00.00.00.00」にIPアドレスを記述
Order deny,allow Deny from all Allow from 00.00.00.00
WordPressで攻撃されやすいファイルのアクセスをブロック
wp-config.php:
WordPressの動作に必要な設定ファイル
wp-cron.php:
予約投稿やアップデート通知など時刻連動の処理に使われるファイル
<FilesMatch "^(wp-config\.php|wp-cron\.php)"> order allow,deny deny from all
xmlrpc.php:
特定のホストへpinbackを送るファイル
RewriteEngine On RewriteBase / RewriteRule ^xmlrpc\.php$ "http\:\/\/0\.0\.0\.0\/" [R=301,L]
まとめ
「.htaccess」を利用したセキュリティ対策をご紹介しました。
簡単に設定ができ、効果的なセキュリティ設定となりますので、参考にしてください。
コーディング業務のご依頼、ご相談の詳細についてはこちらから
最後までお読みいただき、ありがとうございました。
よろしければシェアしていただければ幸いです。
次の記事へ | 前の記事へ |
WEB業界ならqam!qam(カム)はWEB業界で働く人や興味がある人に役立つ情報サイトです。
マーケティングやデザイン、マークアップ(コーディング)、プログラム、トレンドなどの情報をqamライター陣が執筆。噛めば噛むほど(読めば読むほど)制作・開発や運営・運用、業界知識やノウハウを学ぶことができます。