6.5. Apache Tomcat 的密码库初始化
您可以使用 tomcat-vault.sh
脚本初始化 Apache Tomcat 的密码库。tomcat-vault.sh
脚本支持以下机制来初始化密码 vault:
根据您安装密码库的方式,tomcat-vault
脚本的位置会有所不同:
-
如果您从存档文件安装了密码库,
tomcat-vault.sh
脚本位于JWS_HOME/tomcat/bin
目录中。 -
如果您使用 DNF 软件包管理器安装密码库,
tomcat-vault.sh
脚本位于/opt/rh/jws6/root/usr/bin
目录中。
6.5.1. 以互动方式初始化 Apache Tomcat 的密码库
您可以以交互方式初始化 Tomcat 的密码库。在这种情况下,tomcat-vault.sh
脚本会在脚本运行时输入值。
流程
进入包含
tomcat-vault.sh
脚本的目录:-
如果您从存档文件安装了密码库,请转至
JWS_HOME/tomcat/bin
目录。 -
如果您从 RPM 软件包安装了密码库,请转至
/opt/rh/jws6/root/usr/bin
目录。
-
如果您从存档文件安装了密码库,请转至
运行
tomcat-vault.sh
脚本:$ ./tomcat-vault.sh
按照屏幕提示进行操作。
例如:
WARNING JBOSS_HOME may be pointing to a different installation - unpredictable results may occur. ========================================================================= JBoss Vault JBOSS_HOME: JWS_HOME/tomcat JAVA: java ========================================================================= ********************************** **** JBoss Vault *************** ********************************** Please enter a Digit:: 0: Start Interactive Session 1: Remove Interactive Session 2: Exit 0 Starting an interactive session Enter directory to store encrypted files: JWS_HOME/tomcat/ Enter Keystore URL: JWS_HOME/tomcat/vault.keystore Enter Keystore password: <vault_password> Enter Keystore password again: <vault_password> Values match Enter 8 character salt: 1234abcd Enter iteration count as a number (Eg: 44): 120 Enter Keystore Alias: my_vault Initializing Vault Jun 16, 2018 10:24:27 AM org.apache.tomcat.vault.security.vault.PicketBoxSecurityVault init INFO: PBOX000361: Default Security Vault Implementation Initialized and Ready Vault Configuration in tomcat properties file: ******************************************** ... KEYSTORE_URL=JWS_HOME/tomcat/vault.keystore KEYSTORE_PASSWORD=MASK-3CuP21KMHn7G6iH/A3YpM/ KEYSTORE_ALIAS=my_vault SALT=1234abcd ITERATION_COUNT=120 ENC_FILE_DIR=JWS_HOME/tomcat/ ... ******************************************** Vault is initialized and ready for use Handshake with Vault complete Please enter a Digit:: 0: Store a secured attribute 1: Check whether a secured attribute exists 2: Exit 2
在前面的示例中,将指定的设置替换为适合您的环境的值。
- 请注意 Tomcat 属性文件的输出。在将 Tomcat 配置为使用密码 vault 时,您需要此信息。
6.5.2. 使用非交互式设置初始化 Apache Tomcat 的密码库
您可以使用非交互式设置初始化 Tomcat 的密码库。在这种情况下,您必须在运行脚本时将所需的输入作为 tomcat-vault.sh
脚本的参数提供。
流程
进入包含
tomcat-vault.sh
脚本的目录:-
如果您从存档文件安装了密码库,请转至
JWS_HOME/tomcat/bin
目录。 -
如果您从 RPM 软件包安装了密码库,请转至
/opt/rh/jws6/root/usr/bin
目录。
-
如果您从存档文件安装了密码库,请转至
运行
tomcat-vault.sh
脚本并提供所需的参数:例如:
$ ./tomcat-vault.sh \ --keystore JWS_HOME/tomcat/vault.keystore \ --keystore-password <vault_password> \ --alias my_vault \ --enc-dir JWS_HOME/tomcat/ \ --iteration 120 \ --salt 1234abcd \ --generate-config JWS_HOME/tomcat/conf/vault.properties
在前面的示例中,将指定的设置替换为适合您的环境的值。
当您指定 -g, --generate-config
选项时,tomcat-vault.sh
脚本还会创建一个包含指定属性的 vault.properties
文件。