S Single-user with only root filesystem mounted (as read-only) 1 Single-user mode with all local filesystems mounted (read-write) 2 Multi-user with most daemons started.
3 multi-user, identical to 2 (runlevel 3 runs both /sbin/rc2 and /sbin/rc3), with filesystems exported, plus some other network services started. 4 Alternative multi-user, user-defined 5 Shut down, power-off if hardware supports it 6 Reboot
HP-UX? HP-UX runlevels
ID Description 0 System halted
S Single-user, booted to system console only, with only root filesystem mounted (as read-only) s Single user, identical to S except the current terminal acts as the system console 1 Single-user with local filesystems mounted (read-write)
2 Multi-user with most daemons started and Common Desktop Environment launched
3 Multi-user, nearly identical to runlevel 2 with NFS exported 4 Multi-user with VUE started instead of CDE
5, 6 user-defined AIX?
AIX does not follow the System V R4 (SVR4) run level specification, with run levels from 0 to 9 available, as well as from a to c. 0 and 1 are reserved, 2 is the default normal multi-user mode and run levels from 3 to 9 are free to be defined by the administrator. Run levels from a to c allow the execution of processes in that run level without killing processes started in another. AIX runlevels ID Name Description 0 reserved 1 reserved
2 Normal multiuser mode default mode
第三章 配置和管理 §3.1 配置单向SSL认证
WebLogic启用SSL连接需部署服务器证书、CA证书链、信任证书链。WebLogic安装完成后,在\\wlserver_10.3\\server\\lib目录下会自动创建DemoIdentity.jks(密码DemoIdentityKeyStorePassPhrase)、DemoTrust.jks(密码DemoTrustKeyStorePassPhrase)、cacerts三个文件,分别存放服务器证书、信任证书和CA证书链。前两个文件是非安全的,只能用于测试,不能用于生产;后一个文件是Java的默认cacerts文件。对生产系统,必须部署独有的服务器证书、信任证书和CA证书链。本节描述部署生产系统Server证书的操作过程。
§3.1.1 创建Server存储库 §3.1.1.1 创建Server私钥
使用JDK自带的keytool工具创建Server私钥。命令如下:
keytool -genkey -alias AdminServer -keyalg RSA -keysize 1024 -keystore AdminServer.jks 该命令会询问存储库的密码和证书信息以及私钥保护密码。大致内容如下: 输入keystore密码: 再次输入新密码: 您的名字与姓氏是什么? [Unknown]: AdminServer 您的组织单位名称是什么? [Unknown]: Enterprise 您的组织名称是什么? [Unknown]: WJZhiFu
您所在的城市或区域名称是什么? [Unknown]: BeiJing
您所在的州或省份名称是什么? [Unknown]: BJ
该单位的两字母国家代码是什么 [Unknown]: CN
CN=AdminServer, OU=Enterprice, O=WJZhiFu, L=BeiJing, ST=BJ, C=CN 正确吗? [否]: y 输入的主密码
(如果和 keystore 密码相同,按回车): 再次输入新密码: 填写时应注意:
CN域应和Server域名一致,不应使用Server的ip地址;?
? OU域应按颁发的证书类型划分为多个单元;如:Server、Enterprise、Person,可以使用编码; O域应为公司的英文名称;? ? L域应为城市的英文名称; ST域应为省的英文名称;? C域应为国家代码CN;?
存储库的密码和私钥密码应不同。? §3.1.1.2 生成Server的证书申请文件
keytool -certreq -alias AdminServer -sigalg \-file AdminServer.csr -keystore AdminServer.jks §3.1.1.3 认证证书申请
提交上步生成的AdminServer.csr证书申请文件提交给证书颁发机构进行认证。本例中使用openssl认证该证书申请,命令如下:
openssl ca -in AdminServer.csr -out AdminServer.crt -config openssl.cfg §3.1.1.4 导入证书文件
从CA获取到认证的证书文件后,使用keytool将该证书文件导入到存储库。Keytool导入证书时,会自动检查证书的合法性,确认该证书是信任的CA签署的。默认情况下,我们的CA证书没有包含在Java信任的CA清单中,因此先需要将我们的CA添加到Java的信任CA清单中。命令如下: keytool -import -file ca.crt -keystore D:\\bea\\jdk160_05\\jre\\lib\\security\\cacerts
注意:请确认您使用的keytool的JDK位置,Java信任CA清单存储库即为该JDK的jre/lib/security/cacerts文件。
添加CA证书完成后,将该文件复制到WebLogic的server/lib目录,覆盖当前的cacerts文件,然后执行如下命令导入Server的证书文件。
keytool -import -trustcacerts -alias AdminServer -file AdminServer.crt -keystore AdminServer.jks
导入完成后,复制AdminServer.jks存储库到WebLogic的server/lib。至此,Server证书存储库准备就绪。
§3.1.2 创建CA证书存储库
从CA处下载CA证书文件。CA证书文件一般有两种形式,一是单独的CA证书文件,二是.p7b证书链文件。
§3.1.2.1 导入独立的CA证书文件
keytool可以导入DER格式(二进制)和PEM格式(BASE64编码格式,-----BEGIN CERTIFICATE-----打头,-----END CERTIFICATE-----结束)。命令如下: keytool -importcert -file ca.crt -trustcacerts -alias \keystore WJZhiFuCA.jks
导入完成后,复制CA证书存储库到WebLogic的server/lib。 §3.1.2.2 导入p7b的CA证书文件
P7b文件不能直接导入到存储库,应使用openssl工具将p7b文件转换为每证书一个der文件,然后参考上节导入各个文件。 转换p7b文件的命令如下:
openssl pkcs7 -in ca.p7b -out ca.txt -outform PEM -inform DEA -print_certs
编辑ca.txt文件,将每个-----BEGIN CERTIFICATE-----打头,-----END CERTIFICATE-----结束的证书内容分别复制到一个文件中,然后顺序导入各个文件。导入完成后,导入完成后,复制CA证书存储库到WebLogic的server/lib。 §3.1.3 部署证书文件
(1) 启动WebLogic服务器,使用管理员登录到控制台; (2) Server的配置。本例编辑AdminServer;?编辑Environment (3) 编辑Server的Keystore属性;
? Keystore选择为:Custom Identity and Custom Trust; Custom Identity Keystore:? 添加Server证书存储库全路径名; Custom Identity Keystore Type: JKS? ? 填写该Server存储库的密码;
Custom Trust Keystore: 填写CA证书存储库的全路径名;? Custom Trust? Keystore Type: JKS 填写该CA存储库的密码;? Save?
(4) 编辑Server的SSL配置;
? Identity and Trust Locations: KeyStores
PrivateKey Alias:? 填写为Server存储库私钥的别名,即AdminServer; 填写Server存储库私钥的密码;? ? Save。
至此,单向认证(客户端认证服务器)的SSL配置完成。
§3.2 配置双向SSL认证
Advance配置。?SSL?比照WebLogic服务器单向SSL认证的配置,完成服务器端的SSL配置,然后编辑Server
? TwoWayClientCert:ClientCerts Requested and Enforced;
Inbound Certificate? Validation: Builtin SSL Validation And Cert Path Validators; Outbound? Certificate Validation: Builtin SSL Validation And Cert Path Validators; ? Save
启用Server双向认证后,如果客户端没有相应的证书,则无法连接服务器。 §3.3 WebLogic集群配置
本集群由三台计算机组成,AdminServer、Server1、Server2。AdminServer负责集群管理与部署,Server1和Server2组成集群提供对外服务。 §3.3.1 准备证书文件
为AdminServer、Server1、Server2、Server1 NodeManager、Server2 NodeManager各准备一张Server证书,并参考“WebLogic Server双向SSL认证的配置”节,将这些证书和CA证书制作成如下文件: 文件名 证书组成 说明
ServerAdmin.jks AdminServer私钥 AdminServer证书 CN=AdminServer Server1.jks Server1私钥
Server1证书 CN=server1.wjzhifu.com Machine1.jks Machine1节点管理器私钥 Machine1节点管理器证书 CN=machine1 Server2.jks Server2私钥 Server2证书 Server2节点私钥
Server2节点证书 CN=server2.wjzhifu.com Machine2.jks Machine2节点管理器私钥 Machine2节点管理器证书 CN=machine2 ServerCA.jks CA证书 CN=CA
注意:各证书的私钥密码应各不相同以提高安全性。
创建上述文件完成后,将ServerAdmin +ServerCA复制到管理服务器的wlserver_10.3\\server\\lib目录,Server1 + Machine1 + ServerCA复制到Server1的wlserver_10.3\\server\\lib目录,Server2 + Machine2 + ServerCA复制到Server2的wlserver_10.3\\server\\lib目录。 §3.3.2 创建管理服务器和受管服务器的域
参考“创建管理服务器的域”和“创建受管服务器的域”章节,分别为管理服务器和每个Server创建域,并为AdminServer配置双向的SSL。创建域时应注意各机器域名、管理账号、密码均应相同。 创建各服务器的域完成后,启动管理服务器,并按下列步骤添加机器、Server、配置集群。 §3.3.2.1 启动管理服务器
§3.3.2.2 启动管理员终端,并登录
§3.3.2.3 添加受管计算机
(1) 创建计算机;
(2) 编辑新建计算机的 NodeManager属性;
(3) 保存并生效; §3.3.2.4 添加受管服务器
(1) 添加新Server并激活集群模式;
(2) 创建新的集群;
(3) 编辑新Server的属性,指定计算机;
(4) 保存并生效; (5) 重启管理服务器
§3.3.2.5 启动受管服务器
使用weblogic用户登录操作系统系统,进入域的bin目录,执行下列命令启动受管服务器。 $ ./startManagedWebLogic.sh Server1 http://192.168.100.1:8080 Server1: 受管服务器的名称;
http://192.168.100.1:8080 管理服务器的访问地址。
待受管服务器启动完成后,登录管理服务器的管理控制台,查询受管服务器的状态,应能看到该服务器处于RUNING状态。否则,应检查受管服务器的名称是否和管理服务器中的配置是否一致。 Shutdown关闭受管服务器,刚才手工启动的受管服务器应能退出。后续我们将配置受管服务器的节点管理器,使得AdminServer可以远程启动与管理受管服务器。?在Server管理界面,点击Control §3.3.3 配置并启动受管服务器的节点管理器
受管服务器的节点管理器和AdminServer间通过SSL安全通道传输控制命令,因此必须配置节点管理器,以便和AdminServer创建SSL通道。 §3.3.3.1 编辑nodemanager.properties文件 Node Manager Property Description Default
LogFile (New) Location of the Node Manager log file. NodeManagerHome/ nodemanager.log
LogLimit (New) Maximum size of the Node Manager Log specified as an integer. When this limit is reached, a new log file is started.
Valid range for LogLimit is 0 to 2147483647 (int maximum). 0
LogCount (New) Maximum number of log files to create when LogLimit is exceeded. Valid range for LogCount is 0 to 2147483647 (int maximum). 1
LogAppend (New) If set to true, then a new log file is not created when the Node Manager restarts; the existing log is appended instead. true
LogToStderr (New) If set to true, the log output is also sent to the standard error output. false
LogLevel (New) Severity level of logging used for the Node Manager log. Node Manager uses the same logging levels as WebLogic server. INFO
LogFormatter (New) Name of formatter class to use for NM log messages. weblogic. nodemanager.