OpenShift のインストール

Next-Gen WAF エージェントは、Red Hat OpenShift Container Platform にデプロイできます。

インストール

OpenShift コンテナへの Next-Gen WAF モジュールとエージェントのインストールは、一般的な Red Hat のインストールと同様です。ただし、OpenShift コンテナのインストールにおける主な違いは、すべてのプロセスを非ルートアカウントで実行する必要がある点です。この要件を満たすための追加手順は、非ルートアカウントが読み取り / 書き込みアクセス権を持つソケットファイルを使用するよう、モジュールとエージェントを設定することのみです。

エージェントをインストールする

Red Hat のエージェントのインストール手順に従ってください。

エージェントを設定する

ソケットファイルの場所を設定するには3つの方法があります。コンテナのビルドプロセスに最適なオプションを使用してください。次の例では、非ルートユーザーがアクセスできるディレクトリを使用します。別の場所を指定することもできますが、非ルートユーザーアカウントにその場所への読み取り / 書き込み権限があることを確認してください。

  • Dockerfile で SIGSCI_RPC_ADDRESS 環境変数を設定できます。

    ENV SIGSCI_RPC_ADDRESS unix:/tmp/sigsci.sock
  • コンテナが起動したときにスクリプトでSIGSCI_RPC_ADDRESS環境変数をエクスポートできます:

    $ export SIGSCI_RPC_ADDRESS=unix:/tmp/sigsci.sock
  • rpc-address設定オプションをエージェント設定ファイル(デフォルトでは/etc/sigsci/agent.confにあります)で設定できます:

    rpc-address="unix:/tmp/sigsci.sock"

追加のエージェント設定オプションはエージェント設定ページに記載されています。

モジュールのインストールと設定

一連の手順のいずれかに従って、モジュールをインストールして設定してください。

Apache モジュールのインストール

Red Hat の Apache モジュールのインストール手順に従ってください。

Apache 設定ファイル (httpd.conf) で、Next-Gen WAF モジュールが呼び出された後に、AgentHost ディレクティブを追加します。

AgentHost "/tmp/sigsci.sock"

NGINX モジュールのインストール

Red Hat の NGINX モジュールのインストール手順に従ってください。

/opt/sigsci/nginx/sigsci.conf にあるモジュールの設定ファイル内の sigsci.agenthost ディレクティブを更新します。行のコメントを解除するには、-- を削除する必要があります。

sigsci.agenthost = "unix:/tmp/sigsci.sock"

Dockerfile の例

以下は、Next-Gen WAF エージェントとモジュール (Apache HTTPD サーバー用) をインストールし、非ルートアカウントがアクセスできるソケットファイルの場所を使用するように設定する Dockerfile のセクションの例です。

...
# Add the package repository
RUN echo "[sigsci_release]" > /etc/yum.repos.d/sigsci.repo && \
echo "name=sigsci_release" >> /etc/yum.repos.d/sigsci.repo && \
echo "baseurl=https://yum.security.fastly.com/release/el/7/\$basearch" >> /etc/yum.repos.d/sigsci.repo && \
echo "repo_gpgcheck=1" >> /etc/yum.repos.d/sigsci.repo && \
echo "gpgcheck=0" >> /etc/yum.repos.d/sigsci.repo && \
echo "enabled=1" >> /etc/yum.repos.d/sigsci.repo && \
echo "gpgkey=https://yum.security.fastly.com/release/gpgkey" >> /etc/yum.repos.d/sigsci.repo && \
echo "sslverify=1" >> /etc/yum.repos.d/sigsci.repo && \
echo "sslcacert=/etc/pki/tls/certs/ca-bundle.crt" >> /etc/yum.repos.d/sigsci.repo
# Install the Next-Gen WAF agent
RUN yum -y install sigsci-agent
# Configure the Next-Gen WAF agent
ENV SIGSCI_RPC_ADDRESS=unix:/tmp/sigsci.sock
# Install the Next-Gen WAF module
RUN yum install -y sigsci-module-apache
# Configure your web server with the Next-Gen WAF module
# In this example, we enable the module with Apache
RUN echo "LoadModule signalsciences_module /etc/httpd/modules/mod_signalsciences.so" >> /etc/httpd/conf/httpd.conf && \
echo 'AgentHost "/tmp/sigsci.sock"' >> /etc/httpd/conf/httpd.conf
...