1

由于项目限制,我需要在 shell 脚本 (linux) 中使用 asadmin 配置我的 GlassFish 安装。我已经配置了所有参数,除了一个。我需要配置的部分是“网络监听器”部分。以下是默认 domain.xml 文件的部分:

<network-config>
    <protocols>
        <protocol name="http-listener-1">
            <http default-virtual-server="server" max-connections="250" server-name="">
                <file-cache enabled="false"></file-cache>
            </http>
        </protocol>
        <protocol security-enabled="true" name="http-listener-2">
            <http default-virtual-server="server" max-connections="250" server-name="">
                <file-cache enabled="false"></file-cache>
            </http>
            <ssl ssl3-enabled="false" cert-nickname="s1as"></ssl>
        </protocol>
        <protocol name="admin-listener">
            <http default-virtual-server="__asadmin" max-connections="250" server-name="">
                <file-cache enabled="false"></file-cache>
            </http>
        </protocol>
    </protocols>
</network-config>

对于“http-listener-2”部分,我需要对“ssl”部分进行更改。我查看了很多地方,但找不到正确的 asadmin 命令来进行这些更改。我的 ssl 部分需要如下所示:

<ssl key-store="config/xxxxxServer.jks" trust-store="config/xxxxxTrustStore.jks" cert-nickname="xxxxxServer" />

正如我所说,我已经找了几天了,我找不到正确的命令行命令来与 asadmin 一起使用来设置这些参数。我认为“asadmin create-ssl”将是我需要的,但不幸的是,它不是。在查看 GlassFish 的 Web 界面时,我看到了需要设置的参数。这告诉我应该可以通过 asadmin 配置它。任何帮助我解决此问题的帮助将不胜感激。

感谢阅读,祝您有美好的一天。

4

1 回答 1

7

快速回答:使用 asadmin get and set。

这是命令的一些输出,以使其更清晰...我希望。

让我们看一下get 的输出...

$ ~/GlassFish_Server/bin/asadmin get 'configs.config.server-config.network-config.protocols.protocol.http-listener-2.ssl.*'
configs.config.server-config.network-config.protocols.protocol.http-listener-2.ssl.allow-lazy-init=true
configs.config.server-config.network-config.protocols.protocol.http-listener-2.ssl.cert-nickname=s1as
configs.config.server-config.network-config.protocols.protocol.http-listener-2.ssl.classname=com.sun.enterprise.security.ssl.GlassfishSSLImpl
configs.config.server-config.network-config.protocols.protocol.http-listener-2.ssl.client-auth=
configs.config.server-config.network-config.protocols.protocol.http-listener-2.ssl.client-auth-enabled=false
configs.config.server-config.network-config.protocols.protocol.http-listener-2.ssl.key-store-password-provider=plain
configs.config.server-config.network-config.protocols.protocol.http-listener-2.ssl.ssl-inactivity-timeout=30
configs.config.server-config.network-config.protocols.protocol.http-listener-2.ssl.ssl2-enabled=false
configs.config.server-config.network-config.protocols.protocol.http-listener-2.ssl.ssl3-enabled=false
configs.config.server-config.network-config.protocols.protocol.http-listener-2.ssl.tls-enabled=true
configs.config.server-config.network-config.protocols.protocol.http-listener-2.ssl.tls-rollback-enabled=true
configs.config.server-config.network-config.protocols.protocol.http-listener-2.ssl.trust-max-cert-length=5
configs.config.server-config.network-config.protocols.protocol.http-listener-2.ssl.trust-store-password-provider=plain
Command get executed successfully.

现在,使用 set更改其他属性之一的值...

$ ~/GlassFish_Server/bin/asadmin set configs.config.server-config.network-config.protocols.protocol.http-listener-2.ssl.key-store=config/xxxxxServer.jks
configs.config.server-config.network-config.protocols.protocol.http-listener-2.ssl.key-store=config/xxxxxServer.jks
Command set executed successfully.

使用 get 来验证值“接受”...

$ ~/GlassFish_Server/bin/asadmin get configs.config.server-config.network-config.protocols.protocol.http-listener-2.ssl.key-store
configs.config.server-config.network-config.protocols.protocol.http-listener-2.ssl.key-store=config/xxxxxServer.jks
Command get executed successfully.
于 2011-01-05T22:12:12.197 回答