Столкнулся со странной ситуацией. Настроил связку OpenVPV+RADIUS по широко известным в сети мануалам. Например тут:
http://openvpn.net/archive/openvpn-user ... 00323.html
или тут:
https://doc.pfsense.org/index.php/Using ... FreeRADIUS
Конфиги выглядят следующим образом:
/etc/pam.d/openvpn
Код: Выделить всё
#%PAM-1.0
auth sufficient pam_radius.so debug
account sufficient pam_permit.so
session sufficient pam_permit.so
Код: Выделить всё
auth 192.168.1.230 password 3 2
Код: Выделить всё
mode server
local 111.111.111.111
port 1194
proto udp
dev tun1
management 192.168.0.2 8330
ca /usr/local/etc/openvpn/keys/ca.crt
cert /usr/local/etc/openvpn/keys/server.crt
key /usr/local/etc/openvpn/keys/server.key
dh /usr/local/etc/openvpn/keys/dh2048.pem
server 10.1.1.0 255.255.255.0
topology subnet
ifconfig-pool-persist /usr/local/etc/openvpn/ipp1.txt 3600
push "dhcp-option DNS 192.168.1.251"
push "dhcp-option DOMAIN domain.ru"
client-config-dir ccd
route 192.168.10.0 255.255.255.0 10.1.1.1
tls-server
tls-auth keys/ta.key 0
tls-timeout 30
auth SHA1
cipher BF-CBC
keepalive 5 15
comp-lzo
max-clients 100
user nobody
group nobody
persist-key
persist-tun
persist-local-ip
persist-remote-ip
push "persist-key"
push "persist-tun"
plugin /usr/local/lib/openvpn/plugins/openvpn-plugin-auth-pam.so openvpn
status /var/log/openvpn/openvpn_udp_bee-status.log
log /var/log/openvpn/openvpn_udp_bee.log
verb 4
mute 20
Код: Выделить всё
AUTH-PAM: BACKGROUND: received command code: 0
AUTH-PAM: BACKGROUND: USER: user
AUTH-PAM: BACKGROUND: my_conv[0] query='RADIUS Password:' style=1
Thu May 15 13:51:17 2014 us=161928 91.77.214.118:1194 PLUGIN_CALL: POST /usr/local/lib/openvpn/plugins/openvpn-plugin-auth-pam.so/PLUGIN_AUTH_USER_PASS_VERIFY status=0
Thu May 15 13:51:17 2014 us=161976 91.77.214.118:1194 TLS: Username/Password authentication succeeded for username 'user'
"User user was granted access"
Теперь пробуем подключиться с неправильным паролем:
Код: Выделить всё
AUTH-PAM: BACKGROUND: received command code: 0
AUTH-PAM: BACKGROUND: USER: user
AUTH-PAM: BACKGROUND: my_conv[0] query='RADIUS Password:' style=1
AUTH-PAM: BACKGROUND: my_conv[0] query='pam_radius: pam_sm_authenticate: Radius rejection' style=3
Thu May 15 13:56:39 2014 us=534837 195.16.56.106:1194 PLUGIN_CALL: POST /usr/local/lib/openvpn/plugins/openvpn-plugin-auth-pam.so/PLUGIN_AUTH_USER_PASS_VERIFY status=0
Thu May 15 13:56:39 2014 us=534883 195.16.56.106:1194 TLS: Username/Password authentication succeeded for username 'user'
"User user was denied access"
"Reason = Authentication was not successful because an unknown user name or incorrect password was used."
И при этом, VPN прекрасно работает. Причём, можно даже ввести несуществующий логин и пароль и сервер всё равно пустит в сеть.
Собственно вопрос: почему это происходит? Где я напутал в конфигурации, что независимо от ответа RADIUS-сервера, сессия OpenVPN запускается и работает?