LiteSpeed Web Server logo LiteSpeed Web Serverユーザーズ・マニュアル

バーチャルホストのセキュリティ

目次

WordPressブルートフォース攻撃保護

リクエストフィルタ

要求フィルタリングルールセット

CAPTCHA / Anubis保護

コンテナ

ホットリンク保護

アクセス制御

認可レルム

保護モード

説明

指定された許可ログイン試行回数の上限に5分以内で達した場合に実行するアクションを指定します。

スロットルはサーバーレスポンス速度を徐々に低下させ、ドロップは応答せずに接続を切断し、拒否は403レスポンスを返します。CAPTCHAまたはドロップはCAPTCHA保護が有効な場合はCAPTCHAへリダイレクトし、それ以外の場合は接続を切断します。

WPログインCAPTCHA完全保護も選択できます。この設定は、許可ログイン試行回数の上限に関係なく、CAPTCHA保護が有効な場合はCAPTCHAへリダイレクトし、それ以外の場合はスロットルを使用します。

デフォルト値:
サーバーレベル: スロットル
VHレベル: サーバーレベル設定を継承します。サーバーレベルがDisableに設定されている場合、スロットルが使用されます。

構文

ドロップダウンリストから選択

ヒント

セキュリティ 信頼済みIPまたはサブネットワークは影響を受けません。
情報 この機能はデフォルトで有効(Throttle)であり、WebAdmin GUIまたはApache設定で追加設定を行う必要はありません。
情報 この設定はLSWSに対してのみApache confのWordPressProtect設定を上書きします。Apacheには影響しません。

情報 これはサーバーレベルで設定でき、バーチャルホストレベルで上書きできます。バーチャルホストレベルで上書きされていない場合、この設定はユーザーのdocroot .htaccessファイル内でApache設定ディレクティブWordPressProtectを使用し、値0(無効)、1(サーバーレベル設定を使用)、throttle、deny、またはdropとして上書きすることもできます。

許可されるログイン試行回数

説明

保護モードで指定されたアクションが実行される前に、1つのIPから5分以内に許可されるwp-login.phpおよびxmlrpc.phpのPOST試行の最大回数を指定します。

この制限は、残り試行回数 = 上限 となるクォータシステムで処理されます。各POST試行により残り試行回数は1減少し、時間の経過とともに設定された上限まで戻ります。あるIPの残り試行回数が設定上限の1/2まで下がると、そのIPはスロットルされ、1/2をさらに下回るほどスロットルが強くなります。残り試行回数が0になると、指定されたアクションがそのIPに対して実行されます。

さらに、CAPTCHAを有効にするも有効な場合、ワーカーごとの追加保護が追加されます。同じワーカーでwp-login.phpおよびxmlrpc.phpが30秒間に設定上限の4倍の頻度でアクセスされた場合、これらのURLはアクセス回数が減少するまでCAPTCHAモードになります。

サーバーをリセットすると、ブロックされたIPはクリアされます。

デフォルト値:
サーバーレベル: 10
VHレベル: サーバーレベル設定を継承

構文

有効範囲: 3 - 1000。

例

試行上限が10、モードがdropの場合:

最初のPOST試行後、クォータは9に減少します。

POST試行ごとにクォータは1ずつ減少します。

クォータが上限の半分(5)に達すると、IPはスロットルされます。

POST試行ごとにスロットルは強くなります。

クォータが0になると、接続は切断されます。

ヒント

セキュリティ 信頼済みIPまたはサブネットワークは影響を受けません。

情報 この設定はLSWSに対してのみApache confのWordPressProtect設定を上書きします。Apacheには影響しません。

情報 これはサーバーレベルで設定でき、バーチャルホストレベルで上書きできます。バーチャルホストレベルで上書きされていない場合、この設定はユーザーのdocroot .htaccessファイル内でApache設定ディレクティブWordPressProtectを使用し、3から1000までの整数値で上書きすることもできます。

WAFを有効化

説明

リクエスト内容の詳細検査を有効にするかどうかを指定します。この機能はApacheのmod_securityと同等であり、既知のシグネチャと照合することで悪意のあるリクエストを検出してブロックするために使用できます。

構文

ラジオボックスから選択

ログレベル

説明

要求フィルタリングエンジンのデバッグ出力の詳細レベルを指定します。 この値の範囲は0-9です。 0はロギングを無効にします。 9は最も詳細なログを生成します。 このオプションを有効にするには、サーバーとバーチャルホストのエラーログログレベルを少なくともINFO以上に設定する必要があります。 これは、要求フィルタリングルールをテストする場合に便利です。

構文

整数

参照

Server ログレベル, Virtual Host ログレベル

デフォルトアクション

説明

検閲ルールに一致したときに実行するデフォルトアクションを指定します。 デフォルト値はdeny,log,status:403です。これは、ステータスコード403でアクセスを拒否し、インシデントをエラーログに記録することを意味します。

構文

文字列。このアクション文字列は、Apache mod_securityの構文と互換性があります。 詳細については、mod_securityマニュアルを参照してください。

参照

ルールセットアクション

リクエスト本文をスキャン

説明

HTTP POST要求の本文をチェックするかどうかを指定します。 デフォルトは「いいえ」です。

構文

ラジオボックスから選択

要求フィルタリングルールセット

説明

ここで設定されたルールは、ネイティブのLSWS設定で設定されたバーチャルホストに対してのみ機能し、Apache httpd.confを使用するバーチャルホストでは機能しません。

名前

説明

検閲ルールのグループに名前を付けます。 表示専用です。

構文

文字列

有効

説明

このルールセットを有効にするかどうかを指定します。 このオプションを使用すると、ルールセットを追加または削除せずに、ルールセットをすぐにオン/オフできます。 デフォルトは「はい」です。

構文

ラジオボックスから選択

ルール定義

説明

検閲ルールのリストを指定します。

Apacheの設定ファイルを使用している場合は、httpd.confにルールを設定する必要があります。 ここで定義されたルールは効果がありません。

構文

文字列。 検閲ルールの構文は、Apacheのmod_securityディレクティブの構文に従います。 ここでは、「SecFilter」、「SecFilterSelective」、「SecRule」を使用できます。 Apacheの設定ファイルからセキュリティルールをコピーして貼り付けることができます。

ルールの構文の詳細については、 Mod Security documentation.

ヒント

情報 ここで設定されたルールは、ネイティブのLSWS設定で設定されたvhostsでのみ動作し、Apache httpd.confからのvhostでは動作しません。

CAPTCHA / Anubis保護

説明

CAPTCHA/Anubis保護は、高いサーバー負荷を軽減するためのサービスです。状況に応じて、リクエストをCAPTCHA検証ページにリダイレクトするか、設定済みのAnubisバックエンドサーバーへ送信します。

次のいずれかの状況になると、CAPTCHA保護が有効になります。有効になると、非信頼クライアント(設定による)からのすべてのリクエストはCAPTCHA検証ページにリダイレクトされます。検証後、クライアントは目的のページにリダイレクトされます。
1. サーバーまたはバーチャルホストの同時リクエスト数が、設定された接続制限を超えた場合。
2. Anti-DDoSが有効で、クライアントが疑わしい方法でURLにアクセスしている場合。トリガーされると、クライアントは拒否される代わりに先にCAPTCHAへリダイレクトされます。
3. WordPressブルートフォース攻撃保護が有効で、アクションが「CAPTCHA or Drop」に設定されている場合。攻撃が検出されると、クライアントは先にCAPTCHAへリダイレクトされます。Max Triesに達すると、「drop」オプションに従って接続が切断されます。
4. WordPressブルートフォース攻撃保護が有効で、アクションが「WP Login CAPTCHA Full Protection」に設定されている場合。クライアントは常に先にCAPTCHAへリダイレクトされます。
5. CAPTCHAをRewriteRules経由で有効化するための新しいRewriteルール環境が提供されています。'verifycaptcha'を設定すると、クライアントをCAPTCHAへリダイレクトできます。特別な値': deny'を設定すると、失敗回数が多すぎるクライアントを拒否できます。たとえば、[E=verifycaptcha]は検証されるまで常にCAPTCHAへリダイレクトします。[E=verifycaptcha: deny]はMax Triesに達するまでCAPTCHAへリダイレクトし、その後クライアントを拒否します。

保護を有効にする

説明

CAPTCHA/Anubis保護機能を個別に有効または無効にします。

デフォルト値はInherit Server level settingsです

構文

チェックボックスから選択

トリガー感度

説明

自動CAPTCHA/Anubis感度。値が高いほど、CAPTCHA/Anubis保護が使用される可能性が高くなります。値0は「Off」と同等で、値100は「Always On」と同等です。

デフォルト値:
サーバーレベル: 0
バーチャルホストレベル: サーバーレベル設定を継承

構文

0から100までの整数値。

同時リクエスト数上限

説明

CAPTCHAを有効化するために必要な同時リクエスト数です。同時リクエスト数がこの数値を下回るまで、CAPTCHAは引き続き使用されます。

デフォルト値は15000です。

構文

整数

Bubblewrapコンテナ

説明

CGIプロセス(PHPプログラムを含む)をbubblewrapサンドボックス内で起動する場合は、有効に設定します。bubblewrapの使用方法の詳細は次を参照してください。 https://wiki.archlinux.org/title/Bubblewrap この設定を使用する前に、システムにBubblewrapがインストールされている必要があります。

サーバーレベルで"Disabled"に設定されている場合、この設定をバーチャルホストレベルで有効にすることはできません。

デフォルト値:
サーバーレベル:Disabled
VHレベル:サーバーレベル設定を継承

構文

ドロップダウンリストから選択

Namespaceコンテナ

説明

CGIプロセス(PHPプログラムを含む)をNamespaceコンテナサンドボックス内で起動する場合は、有効に設定します。Bubblewrapコンテナが無効に設定されている場合にのみ使用されます。

サーバーレベルで無効以外に設定されている場合、この設定値はバーチャルホストレベルで上書きできます。

デフォルト値:
サーバーレベル:無効
バーチャルホストレベル:サーバーレベル設定を継承

構文

ドロップダウンリストから選択

追加Namespaceテンプレートファイル

説明

マウントするディレクトリのリストと、それらをマウントするために使用する方式を含む既存設定ファイルへのパスです。サーバーレベルでNamespaceテンプレートファイルも設定されている場合は、両方のファイルが使用されます。

構文

絶対パスか$SERVER_ROOTからの相対パス又は$VH_ROOTからの相対パス。

説明

ホットリンクとは、外部ウェブサイトから自分のウェブサイト上のファイルにリクエストしたもので、しばしば「リーチング」と呼ばれます。 このプラクティスでは、追加の帯域幅の使用が導入されます。

LiteSpeed Webサーバーは、HTTPリクエスト内のRefererヘッダーをチェックすることにより、他人があなたのWebサイト上のコンテンツにホットリンクするのを防ぐことができます。 Refererヘッダーがあなたのウェブサイトと一致しない場合、リクエストは拒否されます。

ホットリンク保護を有効化

説明

ホットリンクの保護を有効にするかどうかを指定します。

構文

ラジオボックスから選択

サフィックス

説明

ファイルの接尾辞をリストすることによって、ホットリンクから保護されるファイルの種類を指定します。

構文

カンマ区切りリスト「.」は禁止されています

リダイレクトURL

説明

ホットリンクアクションが検出されたときにユーザーがリダイレクトされるURLを指定します。 ホットリンクが許可されていないことを示すイメージやページにリダイレクトすることができます。 指定されていない場合、403 Forbiddenが返されます。

構文

絶対URL

直接アクセスを許可

説明

リファラーなしで直接アクセスを許可するかどうかを指定します。 リファラーヘッダーは、現在のページにリンクされているWebページを識別します。 ユーザーがアドレスボックスに直接アドレスを入力するか、「ターゲットリンクを別名で保存」などの機能を使用すると、HTTPリクエストに「referer」ヘッダーはありません。

構文

ラジオボックスから選択

自己参照のみ

説明

現在のWebサイトからの参照のみを許可するかどうかを指定します。 はいに設定すると、許可ドメインは効果がなく、保護されたファイルに他のWebサイトをリンクすることはできません。 これは、現在のWebサイトに複数のドメイン名を格納する場合に便利です。

構文

ラジオボックスから選択

許可ドメイン

説明

保護されたコンテンツにリンクできるWebサイトを指定します。

構文

ドメイン名のカンマ区切りリスト。

REGEX一致ドメイン

説明

正規表現で保護されたコンテンツにリンクできるWebサイトを指定します。 正規表現は完全なURLではなくドメイン名と一致します。

構文

正規表現

例

^.*\.mydomain\.com$

アクセス制御

説明

どのサブネットワークおよび/またはIPアドレスがサーバーにアクセスできるかを指定します。 サーバレベルでは、この設定はすべてのバーチャルホストに影響します。 バーチャルホストレベルで各バーチャルホストに固有のアクセス制御を設定することもできます。 バーチャルホストレベルの設定はサーバーレベルの設定を上書きしません。

ブロック/ IPの許可は、許可リストと拒否リストの組み合わせによって決まります。 特定のIPまたはサブネットワークのみをブロックする場合は、許可リストに*またはALLを入れ、ブロックされたIPまたはサブネットワークを拒否リスト。
特定のIPまたはサブネットワークのみを許可する場合は、拒否リストに*またはALLを入れ、許可されたIPまたはサブネットワークを許可リスト。
IPに適合する最小スコープの設定は、アクセスを決定するために使用されます。

サーバーレベル:信頼できるIPまたはサブネットワークは、許可リストに、末尾の "T"を追加することで指定する必要があります。 信頼できるIPまたはサブネットワークは、接続/スロットリング制限の影響を受けません。 信頼できるIP/サブネットワークは、サーバーレベルのアクセス制御でのみ設定できます。

ヒント

セキュリティすべてのバーチャルホストに適用される一般的な制限については、サーバーレベルでこれを使用してください。

許可リスト

説明

許可されるIPまたはサブネットワークのリストを指定します。 *またはALLが受け入れられます。

構文

IPアドレスまたはサブネットワークのカンマ区切りリスト。 末尾の「T」は、192.168.1.*Tなどの信頼できるIPまたはサブネットワークを示すために使用できます。

例

Sub-networks: 192.168.1.0/255.255.255.0, 192.168.1.0/24, 192.168.1, or 192.168.1.*
IPv6 addresses: ::1 or [::1]
IPv6 subnets: 3ffe:302:11:2:20f:1fff:fe29:717c/64 or [3ffe:302:11:2:20f:1fff:fe29:717c]/64

ヒント

セキュリティサーバーレベルのアクセス制御で設定された信頼されたIPまたはサブネットワークは、接続/スロットリングの制限から除外されます。

拒否リスト

説明

許可されていないIPまたはサブネットワークのリストを指定します。

構文

IPアドレスまたはサブネットワークのカンマ区切りリスト。 *またはALLが受け入れられます。

例

Sub-networks: 192.168.1.0/255.255.255.0, 192.168.1.0/24, 192.168.1, or 192.168.1.*
IPv6 addresses: ::1 or [::1]
IPv6 subnets: 3ffe:302:11:2:20f:1fff:fe29:717c/64 or [3ffe:302:11:2:20f:1fff:fe29:717c]/64

認可レルム

説明

このバーチャルホストのすべての認可レルムをリストします。 権限領域は、権限のないユーザーが保護されたWebページにアクセスするのをブロックするために使用されます。 レルムは、オプションのグループ分類を持つユーザー名とパスワードを含むユーザーディレクトリです。 認可はコンテキストレベルで実行されます。 異なるコンテキストは同じレルム(ユーザデータベース)を共有できるため、レルムはそれらを使用するコンテキストとは別に定義されます。 コンテキスト設定では、これらの名前でレルムを参照できます。

レルム名

説明

認可レルムの一意の名前を指定します。

構文

テキスト

DBタイプ

説明

権限レルムのユーザー/グループ・データの格納方法を指定します。 現在、ユーザー/グループのデータはフラットファイルまたはLDAPサーバーに格納できます。

構文

選択

ユーザーDBの場所

説明

ユーザーデータベースの場所を指定します。

構文

ユーザーDBファイルへのパスまたはLDAP URL (RFC 2255)。

ヒント

セキュリティ ユーザーパスワードファイルはドキュメントツリー外に保存することを推奨します。ユーザーパスワードファイルをドキュメントツリー内に置く必要がある場合は、.htuserのように先頭を".ht"にして、静的ファイルとして提供されないようにしてください。LiteSpeed Web Serverは".ht"で始まるファイルを提供しません。

参照

グループDBの場所, パスワード属性, Member-of属性

パスワード属性

説明

LDAPサーバーに格納されているユーザーレコードのパスワード属性の名前を指定します。 デフォルト値はuserPasswordです。

構文

文字列

Member-of属性

説明

LDAPサーバーに格納されているユーザーレコードの「Member-of」属性の名前を指定します。 デフォルト値はmemberOfです。 「Member-of」属性を使用して、ユーザーが属するグループ名を指定することができます。

構文

文字列

ユーザーDB最大キャッシュサイズ

説明

ユーザーデータベースの最大キャッシュサイズを指定します。 最近アクセスされたユーザー認証データは、最大のパフォーマンスを提供するためにメモリにキャッシュされます。

構文

整数

ヒント

パフォーマンスキャッシュが大きくなるとメモリが消費されるため、値が高くなるほどパフォーマンスが向上する場合があります。 ユーザーのデータベースサイズとサイトの使用状況に応じて適切なサイズに設定します。

ユーザーDBキャッシュタイムアウト(秒)

説明

バックエンドユーザーデータベースの変更の確認頻度を指定します。 キャッシュ内のすべてのエントリにタイムスタンプがあります。 キャッシュされたデータが指定されたタイムアウトよりも古い場合、バックエンドデータベースの変更がチェックされます。 変更がなければ、タイムスタンプは現在の時刻にリセットされ、そうでない場合は新しいデータがロードされます。 サーバーのリロードとgraceful restartにより、キャッシュは直ちにクリアされます。

構文

整数

ヒント

パフォーマンスバックエンドデータベースが頻繁に変更されない場合は、パフォーマンスを向上させるために、より長いタイムアウトを設定します。

グループDBの場所

説明

グループデータベースの場所を指定します。

構文

ファイル名への絶対パス又は$SERVER_ROOT、$VH_ROOTからの相対パス。

ヒント

セキュリティ グループファイルはドキュメントツリー外に保存することを推奨します。ドキュメントツリー内に置く必要がある場合は、.htgroupのように先頭を".ht"にして、静的ファイルとして提供されないようにしてください。LiteSpeed Web Serverは".ht"で始まるファイルを提供しません。

参照

ユーザーDBの場所, Context 必要 (ユーザー/グループ許可), グループメンバー属性

グループメンバー属性

説明

LDAPサーバーに格納されているグループレコードの「Member」属性の名前を指定します。 デフォルト値はmemberUidです。

構文

文字列

グループDB最大キャッシュサイズ

説明

グループデータベースの最大キャッシュサイズを指定します。

構文

整数

ヒント

パフォーマンスキャッシュが大きくなるとメモリが消費されるため、値が高くなるほどパフォーマンスが向上する場合があります。 ユーザーのデータベースサイズとサイトの使用状況に応じて適切なサイズに設定します。

参照

ユーザーDB最大キャッシュサイズ

LDAPバインドDN

説明

サーバーにバインドするために使用されるDNを指定します。 LDAPサーバーで認証が必要な場合は、バインドDNとパスワードを指定する必要があります。 指定しない場合は、匿名バインドが使用されます。

構文

文字列

参照

LDAPバインドパスワード

LDAPバインドパスワード

説明

サーバーにバインドするためのパスワードを指定します。 LDAPサーバーで認証が必要な場合は、バインドDNとパスワードを指定する必要があります。

構文

文字列

参照

LDAPバインドDN