企业内一般都有ldap,基本上所有的系统都支持ldap登录,openvpn也不例外,使用ldap认证登录好处是员工可以使用一个账号就可以进行登录,不需要去记录N个账号密码。
安装 openvpn-auth-ldap 插件
1 | yum -y install epel-release && yum -y install openvpn-auth-ldap |
安装完成后,在目录 /usr/lib64/openvpn/plugin/lib/ 会出现 openvpn-auth-ldap.so 文件。在目录 /etc/openvpn 目录下自动生成 auth 目录,该目录里面存在 ldap.conf ,用于配置 LDAP 相关信息。
配置 LDAP 相关信息
备份原先的配置文件
1 | cp /etc/openvpn/auth/ldap.conf /etc/openvpn/auth/ldap.conf.bak |
编辑ldap.conf
1 | vim /etc/openvpn/auth/ldap.conf |
编辑 openvpn 的配置文件
1 | # 增加如下内容 |
使用了上面安装的 openvpn-auth-ldap 认证插件,client-cert-not-required 表示不再需要客户端证书,将改为使用 LDAP 中的用户认证。
重新启动 OpenVPN 服务
1 | systemctl restart openvpn@server |
客户端配置修改
1 | client |
注释:
- 看到一些文档说开启ldap以后需要注释
cert client.crt
、key client.key
,因为配置了 LDAP 不再需要客户端证书和密钥,但是在实际应用中,只要添加了auth-user-pass
,不注释该两行也是可行的。因为在连接的时候就会提示输入账号和密码,否则不过。