13.5. web.xml

13.5.1. web.xml からの未使用インターフェイスの削除 (CA のみ)

(一括発行やポリシーフレームワークなどの機能用の) レガシーインターフェイスは、CA の web.xml ファイルに依然として含まれています。ただし、これらの機能は非推奨となり、使用されなくなりました。したがって、CA 設定から削除してセキュリティーを強化することができます。
  1. CA を停止します。
    # systemctl stop pki-tomcatd@instance_name.service
    または (nuxwdog watchdog を使用している場合)
    # systemctl stop pki-tomcatd-nuxwdog@instance_name.service
  2. CA の Web ファイルディレクトリーを開きます。以下に例を示します。
    # cd /var/lib/pki/instance_name/ca/webapps/ca/WEB-INF
  3. 現在の web.xml ファイルをバックアップします。
    # cp web.xml web.xml.servlets
  4. web.xml ファイルを編集し、非推奨となった以下の各サーブレットの <servlet> エントリー全体を削除します。
    • caadminEnroll
    • cabulkissuance
    • cacertbasedenrollment
    • caenrollment
    • caProxyBulkIssuance
    たとえば、caadminEnroll サーブレットエントリーを削除します。
    <servlet>
          <servlet-name>  caadminEnroll  </servlet-name>
          <servlet-class> com.netscape.cms.servlet.cert.EnrollServlet
    </servlet-class>
                 <init-param><param-name>  GetClientCert  </param-name>
                             <param-value> false       </param-value> </init-param>
                 <init-param><param-name>  successTemplate  </param-name>
                             <param-value> /admin/ca/EnrollSuccess.template
    </param-value> </init-param>
                 <init-param><param-name>  AuthzMgr    </param-name>
                             <param-value> BasicAclAuthz </param-value>
    </init-param>
                 <init-param><param-name>  authority   </param-name>
                             <param-value> ca          </param-value> </init-param>
                 <init-param><param-name>  interface   </param-name>
                             <param-value> admin          </param-value>
    </init-param>
                 <init-param><param-name>  ID          </param-name>
                             <param-value> caadminEnroll </param-value>
    </init-param>
                 <init-param><param-name>  resourceID  </param-name>
                             <param-value> certServer.admin.request.enrollment
    </param-value> </init-param>
                 <init-param><param-name>  AuthMgr     </param-name>
                             <param-value> passwdUserDBAuthMgr </param-value>
    </init-param>
       </servlet>
  5. サーブレットエントリーを削除したら、該当する <servlet-mapping> エントリーを削除します。
    <servlet-mapping>
          <servlet-name>  caadminEnroll  </servlet-name>
          <url-pattern>   /admin/ca/adminEnroll  </url-pattern>
    </servlet-mapping>
  6. エンドエンティティー要求インターフェイスについて、<filter-mapping> エントリーを 3 つ削除します。
       <filter-mapping>
          <filter-name>  EERequestFilter              </filter-name>
          <url-pattern>  /certbasedenrollment         </url-pattern>
       </filter-mapping>
    
       <filter-mapping>
          <filter-name>  EERequestFilter              </filter-name>
          <url-pattern>  /enrollment                  </url-pattern>
       </filter-mapping>
    
       <filter-mapping>
          <filter-name>  EERequestFilter              </filter-name>
          <url-pattern>  /profileSubmit               </url-pattern>
       </filter-mapping>
  7. CA を再度起動します。
    # systemctl start pki-tomcatd@instance_name.service
    または (nuxwdog watchdog を使用している場合)
    # systemctl start pki-tomcatd-nuxwdog@instance_name.service