liaosnet
作者liaosnet·2015-01-28 23:16
信息分析/架构师·gbasedbt.com

配置informix使用SSL

字数 2900阅读 1406评论 0赞 0
系统环境:RHEL6U4 64bit
数据库版本:Informix 12.10.FC4

配置informix使用ssl(使用自签名CA)步骤
1,修改ONCONFIG配置文件。
数据库服务名和专用于SSL的服务别名均需要配置
DBSERVERNAME ids1210
DBSERVERALIASES ids1210ssl

视需要增加相应的encrypt VP
VPCLASS encrypt,num=1

同时增加相应的网络类型
NETTYPE socssl,1,50,NET

增加数字证书标签名称,之后将使用到该标签
SSL_KEYSTORE_LABEL ssltestlabel

2,配置SQLHOST文件
ids1210         onsoctcp        rhel64   12100
ids1210ssl      onsocssl        rhel64   12101

3,创建服务器端keystore
服务器端keystore和stash文件存放位置为
$INFORMIXDIR/ssl/dbservername.kdb
$INFORMIXDIR/ssl/dbservername.sth
其中的dbservername即是ONCONFIG中的DBSERVERNAME

以下命令是使用gsk8capicmd_64(64位系统,32位系统的是gsk8capicmd)创建keystore,stash和自签名CA
[informix@rhel64 ssl]$ gsk8capicmd_64 -keydb -create -db ids1210.kdb -pw mypasswd -type cms -stash
[informix@rhel64 ssl]$ gsk8capicmd_64 -cert  -create -db ids1210.kdb -pw mypasswd -label ssltestlabel -dn "CN=liaosnet.com,O=liaosnet,C=CN" -size 1024 -default_cert yes

导出ASCII码的CA
[informix@rhel64 ssl]$ gsk8capicmd_64 -cert -extract -db ids1210.kdb -format ascii -label ssltestlabel -pw mypasswd -target ssltestlabel.cert

4,创建客户端keystore
以下命令是使用gsk8capicmd_64(64位系统,32位系统的是gsk8capicmd)创建keystore,stash
[informix@rhel64 ssl]$ gsk8capicmd_64 -keydb -create -db clikeydb.kdb -pw mypasswd -type cms -stash
导入服务器端的CA
[informix@rhel64 ssl]$ gsk8capicmd_64 -cert -add -db clikeydb.kdb -pw mypasswd -label ssltestlabel -file ssltestlabel.cert -format ascii

注:不论是服务器端还是客户端keystore,权限建议设置为664,如果$INFORMIXDIR仅安装有INFORMIX,权限建议是600或者640,属主、组均为informix

5,配置conssl.cfg文件
conssl.cfg供SQLI客户端程序使用(dbaccess, esqlc等),位于$INFORMIXDIR/etc目录下,相应的两个客户端keystore,即之前创建的.kdb和.sth
# config file conssl.cfg in $INFORMIXDIR/etc
SSL_KEYSTORE_FILE /home/informix/ssl/clikeydb.kdb
SSL_KEYSTORE_STH /home/informix/ssl/clikeydb.sth

按上述配置完成后,重新启动数据库,即可使用SSL方式连接数据库。
可通过onstat -g ntt检查,应当有socssl的网络接口启用。


配置SSL远程客户端连接到INFORMIX库
Windows
系统环境:Windows 2003 32bit
CSDK版本:CSDK 3.70.TC8
1,获取clikeydb.kdb, clikeydb.sth, ssltestlabel.cert 三个在服务端生成的文件,放入本地客户端CSDK或者CONNECT安装目录的ssl目录下。默认地址是:C:Program FilesIBM Informix Client SDK

2,修改配置$INFORMIXDIR/etc/conssl.cfg,增加相应的两个客户端keystore,即下载的.kdb和.sth。需要特别注意的是,目录名中不能使用空格,如下所示:
SSL_KEYSTORE_FILE C:PROGRA~1IBMINF~1sslclikeydb.kdb 
SSL_KEYSTORE_STH C:PROGRA~1IBMINF~1sslclikeydb.sth

3,在CSDK的setnet32中配置相应的SQLHOSTS信息
ids1210ssl onsocssl rhel64 12101

完成之后可以使用ConnectTest Demo 测试通过ssl连接到数据库服务器。

Linux
系统环境:RHEL5U8 64bit
CSDK版本:CSDK 3.50.FC9
1,获取clikeydb.kdb, clikeydb.sth, ssltestlabel.cert 三个在服务端生成的文件,放入本地客户端CSDK或者CONNECT安装目录的ssl目录下。

2,修改配置$INFORMIXDIR/etc/conssl.cfg,增加相应的两个客户端keystore,即下载的.kdb和.sth。
SSL_KEYSTORE_FILE /home/informix/ssl/clikeydb.kdb 
SSL_KEYSTORE_STH /home/informix/ssl/clikeydb.sth

3,配置相应的SQLHOSTS信息
ids1210ssl onsocssl rhel64 12101

编写简单的ESQLC程序连接到远程数据库服务器,使用类似于connect to 'sysmaster@ids1210ssl' 这样的语句连接即可。

来源:http://www.ibm.com/developerworks/data/library/techarticle/dm-0912securesockets1/
原始来源:http://liaosnet.com/?post=67

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

0

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

相关文章

相关问题

相关资料

X社区推广