(已解決)openvpn+pam_mysql認證失敗 鬱悶幾天了,請指點
OS:debian lenny
按版主的 OpenVPN使用User/Pass驗證登錄配置。
資料庫應該沒有問題,而且按照其他幾位同學的經驗,vpnuser表中也加入了使用明文密碼的用戶(t2):
mysql> desc vpnuser;
+----------+-----------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+-----------+------+-----+---------+-------+
| name | char(20) | NO | PRI | NULL | |
| password | char(128) | YES | | NULL | |
| active | int(10) | NO | | 1 | |
+----------+-----------+------+-----+---------+-------+
3 rows in set (0.06 sec)
mysql> select * from vpnuser;
+------+-------------------------------------------+--------+
| name | password | active |
+------+-------------------------------------------+--------+
| t1 | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 | 1 |
| t2 | 123 | 1 |
+------+-------------------------------------------+--------+
2 rows in set (0.02 sec)
PAM測試也沒有問題:
testsaslauthd -u t2 -p 123 -s openvpn
0: OK "Success."
openvpn的PAM配置文件中,crypt=0,內容如下:
auth sufficient pam_mysql.so user=vpn passwd=123 host=localhost db=vpn \
table=vpnuser usercolumn=name passwdcolumn=password \
where=active=1 sqllog=0 crypt=0
account required pam_mysql.so user=vpn passwd=123 host=localhost db=vpn \
table=vpnuser usercolumn=name passwdcolumn=password \
where=active=1 sqllog=0 crypt=0
openvpn使用證書認證方式時是可以正常使用的。但是openvpn+pam_mysql認證就是不行。客戶端log如下:
Fri Nov 27 18:48:03 2009 SENT CONTROL : 'PUSH_REQUEST' (status=1)
Fri Nov 27 18:48:03 2009 AUTH: Received AUTH_FAILED control message
Fri Nov 27 18:48:03 2009 TCP/UDP: Closing socket
伺服器端log如下:
AUTH-PAM: BACKGROUND: user 't2' failed to authenticate: Permission denied
Fri Nov 27 10:48:53 2009 119.112.127.140:55702 PLUGIN_CALL: POST /etc/openvpn/openvpn-auth-pam.so/PLUGIN_AUTH_USER_PASS_VERIFY status=1
Fri Nov 27 10:48:53 2009 119.112.127.140:55702 PLUGIN_CALL: plugin function PLUGIN_AUTH_USER_PASS_VERIFY failed with status 1: /etc/openvpn/openvpn-auth-pam.so
Fri Nov 27 10:48:53 2009 119.112.127.140:55702 TLS Auth Error: Auth Username/Password verification failed for peer
懇請wenzk兄賜教!!!謝謝!!!已經
[ 本帖最後由 p51b 於 2009-12-3 14:29 編輯 ]
《解決方案》
回復 #1 p51b 的帖子
問題是openvpn的pam插件存在問題
更換一個版本的就就是可以的了
《解決方案》
回復 #2 kns1024wh 的帖子
謝謝指教,不過還是沒解決。
原來的openvpn版本是2.1~rc11-1,升級到2.1~rc20-2,問題依舊。
《解決方案》
還有用openvpn+freeradius+mysql
《解決方案》
原帖由 p51b 於 2009-11-27 21:41 發表 http://bbs2.chinaunix.net/images/common/back.gif
謝謝指教,不過還是沒解決。
原來的openvpn版本是2.1~rc11-1,升級到2.1~rc20-2,問題依舊。
那個插件一般要使用一個低版本的2.09的那個吧
《解決方案》
回復 #5 kns1024wh 的帖子
謝謝,確實如此。找了個2.09版本的替換一下,終於好用了。
《解決方案》
原帖由 p51b 於 2009-12-3 14:17 發表 http://bbs2.chinaunix.net/images/common/back.gif
謝謝,確實如此。找了個2.09版本的替換一下,終於好用了。
這次你自己也有經驗了