1、建立数据库:
以管理员身份登录数据库:
mysql>; create database vpn;
mysql>; GRANT ALL ON vpn.* TO vpn@localhost IDENTIFIED BY 'vpn123';
mysql>; flush privileges;
mysql>; use vpn;
mysql>; CREATE TABLE vpnuser (
->; name char(20) NOT NULL,
->; password char(128) default NULL,
->; active int(10) NOT NULL DEFAULT 1,
->; PRIMARY KEY (name)
->; );
mysql>; insert into vpnuser (name,password) values('elm',password('elm'));
#创建vpn用户,对vpn这个database有所有操作权限,密码为vpn123
#active不为1,无权使用VPN
#增加用户 用户名:elm 密码:elm
2、配置pam_mysql模块
创建/etc/pam.d/openvpn文件,文件内容如下:
===================CUT Here================
auth sufficient pam_mysql.so user=vpn passwd=vpn123 host=localhost db=vpn \
table=vpnuser usercolumn=name passwdcolumn=password \
where=active=1 sqllog=0 crypt=2
account required pam_mysql.so user=vpn passwd=vpn123 host=localhost db=vpn \
table=vpnuser usercolumn=name passwdcolumn=password \
where=active=1 sqllog=0 crypt=2
==================Cut Here=================
crypt(0) -- Used to decide to use MySQL's PASSWORD() function or crypt()
0 = No encryption. Passwords in database in plaintext. NOT recommended!
1 = Use crypt
2 = Use MySQL PASSWORD() function
3、编辑OpenVPN参数,修改如下内容:
plugin ./openvpn-auth-pam.so openvpn
client-cert-not-required
username-as-common-name
plugin ./openvpn-auth-pam.so openvpn #说明使用的插件,openvpn为插件的参数,使用pam的servicesname
client-cert-not-required #不请求客户的CA证书,使用User/Pass验证
username-as-common-name #使用客户提供的UserName作为Common Name
4、其他与用Key文件验证相同
注意:openvpn-auth-pam.so位于/usr/lib/openvpn里面

分享到:
相关推荐
网上收集来的,别问干什么用,我什么都不知道,给OPENWRT的GUI界面添加什么功能,配置某些功能方便点而已
- `username` 和 `password`: 分别用于存储查询结果中的用户名和密码字段值。 - `conn`: Connection 对象,用于表示与数据库的连接。 - `rs`: ResultSet 对象,用于处理查询结果。 #### 4.3 方法实现 - **`Opendb`...
这类连接通常需要用户输入用户名和密码,通过拨号协议如PPPoE(Point-to-Point Protocol over Ethernet)与ISP(Internet Service Provider)建立连接。易语言宽带拨号软件就是用来自动化这个过程的,帮助用户快速、...
k3sMediaServer kubernetes托管媒体服务器 如果需要,可以创建名称...用$ kubectl创建秘密的openvpn密钥创建秘密的通用openvpn --from-literal ='用户名= <VPN>' --from-literal ='密码= <VPN>' 分叉并编辑设置文件
3. **体验演示**:用户使用Cisco.com上的用户名和密码登录dcloud.cisco.com,即可开始体验思科的各种解决方案。 4. **技术支持**:用户在使用过程中遇到问题时,可以联系思科提供的技术支持服务。 #### 五、dCloud...
2. 创建XMPP连接:通过XMPPTCPConnection类建立与Openfire服务器的连接,设置用户名、密码、主机名和端口号。 3. 登录与注销:使用XMPPTCPConnection对象实现用户的登录和注销操作。 4. 发送和接收消息:通过Message...