对EJBCA的管理员访问权限“在页面加载时”中断“错误

时间:2017-05-31 09:46:43

标签: jboss wildfly-10 pki ejbca

我希望将EJBCA与Wildfly(JBoss)应用服务器一起用作PKI基础设施。

我可以访问

http://127.0.0.1:8080/ejbca/

https://127.0.0.1:8442/ejbca/

但不是

https://127.0.0.1:8443/ejbca/adminweb/

然后我将使用Firefox:

正在加载

时,与127.0.0.1:8443的连接中断

使用wireshark,我可以看到应用服务器的FIN ACK。

我正在使用带Java的Ubuntu 16.04.2 LTS AMD64虚拟机

java -version
openjdk version “1.8.0_131”
OpenJDK Runtime Environment (build 1.8.0_131-8u131-b11-0ubuntu1.16.04.2-b11)
OpenJDK 64-Bit Server VM (build 25.131-b11, mixed mode)

并使用EJBCA ejbca_ce_6_5.0.5.zip

和Wildfly(JBoss)应用服务器wildfly-10.0.0.Final.zip

和MariaDB似乎运行良好,除了上面提到的GUI中的管理访问权。

配置类似于我在EJBCA安装页面上找到的配置。看来,端口8443的部件配置不正确。您是否有提示让我找到解决问题的方法?

此致

drnie

有关配置详情,请查看以下内容:

----------------------- BEGIN CONFIG ---------------------- -

配置MariaDB 解压后用户ejbca 配置了以下文件

设置密钥库密码

$EJBCA_HOME /conf/cesecore.properties

设置数据库属性(数据库名称,数据库URL,数据库驱动程序,数据库用户名和数据库密码)

$EJBCA_HOME /conf/database.properties

设置cms密钥库密码和app server home

$EJBCA_HOME /conf/ejbca.properties

保留所有设置......

$EJBCA_HOME /conf/install.properties

添加管理用户

cd /home/ejbca/wildfly-10.0.0.Final/bin/
./add-user.sh

启动了Wildfly应用服务器

---添加数据源---

打开了呼叫级别界面

/home/ejbca/wildfly-10.0.0.Final/bin/jboss-cli.sh -c

输入命令

data-source add --name=ejbcads --driver-name="mariadb-java-client-1.2.0.jar" --connection-url="jdbc:mysql://127.0.0.1:3306/ejbca" --jndi-name="java:/EjbcaDS" --use-ccm=true --driver-class="org.mariadb.jdbc.Driver" --user-name="ejbca" --password="ejbca" --validate-on-match=true --background-validation=false --prepared-statements-cache-size=50 --share-prepared-statements=true --min-pool-size=5 --max-pool-size=150 --pool-prefill=true --transaction-isolation=TRANSACTION_READ_COMMITTED --check-valid-connection-sql="select 1;"
:reload

---配置WildFly Remoting ---

/subsystem=remoting/http-connector=http-remoting-connector:remove
/subsystem=remoting/http-connector=http-remoting-connector:add(connector-ref="remoting",security-realm="ApplicationRealm")
/socket-binding-group=standard-sockets/socket-binding=remoting:add(port="4447")
/subsystem=undertow/server=default-server/http-listener=remoting:add(socket-binding=remoting)
:reload

---配置日志---

/subsystem=logging/logger=org.ejbca:add
/subsystem=logging/logger=org.ejbca:write-attribute(name=level, value=DEBUG)
/subsystem=logging/logger=org.cesecore:add
/subsystem=logging/logger=org.cesecore:write-attribute(name=level, value=DEBUG)
:reload

---删除现有的TLS和HTTP配置---

/subsystem=undertow/server=default-server/http-listener=default:remove
/subsystem=undertow/server=default-server/https-listener=https:remove
/socket-binding-group=standard-sockets/socket-binding=http:remove
/socket-binding-group=standard-sockets/socket-binding=https:remove
:reload

退出CLI shell

重新启动了wildfly应用服务器

---部署EJBCA ---

ant clean deployear

---运行安装---

ant runinstall

---将TLS密钥库部署到WildFly ---

ant deploy-keystore

在CLI shell中

/interface=http:add(inet-address="0.0.0.0")
/interface=httpspub:add(inet-address="0.0.0.0")
/interface=httpspriv:add(inet-address="0.0.0.0")
/socket-binding-group=standard-sockets/socket-binding=http:add(port="8080",interface="http")
/subsystem=undertow/server=default-server/http-listener=http:add(socket-binding=http)
/subsystem=undertow/server=default-server/http-listener=http:write-attribute(name=redirect-socket, value="httpspriv")
:reload

等待重装完成 配置标识和套接字绑定:

/core-service=management/security-realm=SSLRealm:add()
/core-service=management/security-realm=SSLRealm/server-identity=ssl:add(keystore-path="${jboss.server.config.dir}/keystore/keystore.jks", keystore-password="serverpwd", alias="localhost")
/core-service=management/security-realm=SSLRealm/authentication=truststore:add(keystore-path="${jboss.server.config.dir}/keystore/truststore.jks", keystore-password="changeit")
/socket-binding-group=standard-sockets/socket-binding=httpspriv:add(port="8443",interface="httpspriv")
/socket-binding-group=standard-sockets/socket-binding=httpspub:add(port="8442", interface="httpspub")

完全重启应用程序服务器,然后

/subsystem=undertow/server=default-server/https-listener=httpspriv:add(socket-binding=httpspriv, security-realm="SSLRealm", verify-client=REQUIRED)
/subsystem=undertow/server=default-server/https-listener=httpspub:add(socket-binding=httpspub, security-realm="SSLRealm")
:reload

---完成Wildfly配置---

/system-property=org.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH:add(value=true)
/system-property=org.apache.catalina.connector.CoyoteAdapter.ALLOW_BACKSLASH:add(value=true)
/system-property=org.apache.catalina.connector.URI_ENCODING:add(value="UTF-8")
/system-property=org.apache.catalina.connector.USE_BODY_ENCODING_FOR_QUERY_STRING:add(value=true)
/subsystem=webservices:write-attribute(name=wsdl-host, value=jbossws.undefined.host)
/subsystem=webservices:write-attribute(name=modify-wsdl-address, value=true)
:reload

----------------------- END CONFIG ---------------------- -

1 个答案:

答案 0 :(得分:0)

我知道这是旧的,但我敢打赌你没有在 web.properties 中设置主机名。您需要设置 httpsserver.hostname=myejbcaservername(默认为 localhost)。

另外,尝试使用 FireFox。它有自己的证书存储(独立于操作系统证书存储),在管理 PKI 时效果更好。

此外,如果您安装了超级管理员证书,请重新启动浏览器。如果您点击了取消或执行了某些操作,它通常不会重新协商,直到您使用隐私浏览窗口或重新启动浏览器。