在 Linux 下对 Informix 进行加密,常见场景主要有 三类,不同场景做法不同。下面按实际应用给你一个清晰、可落地的说明。
常见需求:防止 SQL、用户名、密码在网络中被窃听。
Informix 支持 OpenSSL 进行通信加密。
opensslopenssl genrsa -out server.key 2048
openssl req -new -key server.key -out server.csr
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
$INFORMIXDIR/etc/$ONCONFIG
添加或修改:
ENCRYPT_CDR 0
SSL_KEYSTORE /opt/informix/ssl/server.key
SSL_CERT /opt/informix/ssl/server.crt
NETTYPE socssl,1,10,NET
INFORMIXSQLHOSTS
示例:
demo_on socssl localhost 9089
✅ 效果:客户端与数据库之间通信全程加密
常见需求:数据库文件即使被拷贝也无法读取
onkencrypt -C init
onkencrypt -C create
onconfig 参数
ENCRYPTION enable
CREATE TABLESPACE encrypted_dbs ENCRYPTED;
✅ 优点
❌ 限制
不依赖企业版,适合字段级保护(如身份证、手机号)
程序 → AES 加密 → 存入 VARCHAR / BLOB
✔ 可审计
✔ 可控
✔ 不依赖数据库
INSERT INTO t VALUES (
ENCRYPT_AES('123456789012345678')
);
⚠ 注意:
USERMAPPING OFF
AUTHENTICATION pam
INFORMIXSERVER=ssl_server
| 场景 | 推荐方案 |
|---|---|
| 防止抓包 | SSL/TLS |
| 防止磁盘泄露 | TDE |
| 字段级保护 | 应用 AES |
| 等保 2.0 | SSL + TDE |
| 金融 | SSL + TDE + 应用加密 |
你可以直接回答我这几个问题,我可以给你精确方案:
我可以直接给你 可执行的配置示例。