13.5. 从 web.xml 中删除未使用的接口(仅限 CA)


一些传统接口(用于批量颁发或策略框架等功能)仍然包含在 CA 的 web.xml 文件中。但是,由于这些功能已弃用且不再使用,因此可以从 CA 配置中删除它们以提高安全性。

流程

  1. 停止 CA。

    Copy to Clipboard Toggle word wrap
    # pki-server stop instance_name

    OR (如果使用 nuxwdog watchdog

    Copy to Clipboard Toggle word wrap
    # systemctl stop pki-tomcatd-nuxwdog@instance_name.service
  2. 打开 CA 的 Web 文件目录。例如:

    Copy to Clipboard Toggle word wrap
    # cd /var/lib/pki/ instance_name/ca/webapps/ca/WEB-INF
  3. 备份当前的 web.xml 文件。

    Copy to Clipboard Toggle word wrap
    # cp web.xml web.xml.servlets
  4. 编辑 web.xml 文件,并删除以下每个已弃用的 servlet > 条目:

    • caadminEnroll
    • cabulkissuance
    • cacertbasedenrollment
    • caenrollment
    • caProxyBulkIssuance

      例如,删除 caadminEnroll servlet 条目:

      Copy to Clipboard Toggle word wrap
      <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 条目后,删除对应的 servlet-mapping> 条目。

    Copy to Clipboard Toggle word wrap
    <servlet-mapping>
          <servlet-name>  caadminEnroll  </servlet-name>
          <url-pattern>   /admin/ca/adminEnroll  </url-pattern>
    </servlet-mapping>
  6. 为最终用户请求接口删除三个 filter-mapping > 条目。

    Copy to Clipboard Toggle word wrap
       <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。

    Copy to Clipboard Toggle word wrap
    # pki-server start instance_name

    OR (如果使用 nuxwdog watchdog

    Copy to Clipboard Toggle word wrap
    # systemctl start pki-tomcatd-nuxwdog@instance_name.service
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat, Inc.