我有一个可以正常工作的 Strongswan IKEv2 VPN,我使用 eap-mschapv2 作为正确身份验证。只要我使用 ipsec.secrets 文件存储用户凭据,它就可以正常工作。
# ipsec.secrets file
: RSA vpn-server-key.pem
arav %any : EAP "accessit"
但我想将其更改为将这些机密存储在 MySQL 数据库中。我已经在 sql.conf 文件中连接了 mysql 数据库,我只是想知道如何将这些用户凭据插入 MySQL 表中。
参考本指南:https://wiki.strongswan.org/projects/strongswan/wiki/SQLite
它不会以纯文本形式存储机密,但会使用任何类型的加密来存储机密。有人能告诉我怎么做吗?
任何帮助将不胜感激
答案1
它不会以纯文本形式存储秘密,但它使用任何类型的加密来实现这一点。
事实并非如此。秘密以纯文本形式存储。因此,只需插入所引用的 wiki 页面上所示的共享秘密和身份(使用您的示例数据):
/* type: ID_FQDN, data: arav */
INSERT INTO identities (type, data) VALUES (2, X'61726176');
/* type: SHARED_EAP, data: accessit */
INSERT INTO shared_secrets (type, data) VALUES (2, X'6361656373737469');
/* to associate the identity with the secret, use the actual ids of the two rows above */
INSERT INTO shared_secret_identity (shared_secret, identity) VALUES (1, 1);