Назад | Перейти на главную страницу

Как я могу пройти аутентификацию с помощью плагина Synology OpenVPN + Radius?

Я хотел бы иметь двойную аутентификацию: аутентификацию на основе сертификата в OpenVPN, а также аутентификацию пользователя / пароля через подключаемый модуль Radius, предоставленный на сервере (Synology NAS DS2016play с DSM 6.2.3-25426). Клиент - Raspberry PI 4 с установленным OpenVPN

Это работает, но каждый час я отключаюсь на 15-20 минут из-за сбоя модуля Radius-Plugin. Я думал, что это связано с ежечасным повторным подтверждением TLS, но я не хочу снижать безопасность, отключая эту функцию.

Вместо этого проблема, похоже, заключается в IP-адресе, который использует плагин. Это внешний адрес, и на маршрутизаторе открыт только порт 1194 для OpenVPN. Почему Radius не использует локальный IP-адрес и как это изменить?

Как я могу избежать этого простоя?

/ var / log / messages:

    2020-06-08T09:56:52+02:00 NAS_D openvpn[8731]: vpn/xx.xxx.xxx.xxx:38874 PLUGIN_CALL: plugin function PLUGIN_AUTH_USER_PASS_VERIFY failed with status 1: /var/packages/VPNCenter/target/lib/radiusplugin.so
    2020-06-08T09:56:52+02:00 NAS_D openvpn[8731]: vpn/xx.xxx.xxx.xxx:38874 TLS Auth Error: Auth Username/Password verification failed for peer
    2020-06-08T09:57:53+02:00 NAS_D openvpn[8731]: vpn/xx.xxx.xxx.xxx:38874 TLS Error: local/remote TLS keys are out of sync: [AF_INET]xx.xxx.xxx.xxx:38874 [1]
    ...

/usr/syno/etc/packages/VPNCenter/openvpn/openvpn.conf.user

dev tun
proto udp

management 127.0.0.1 1194

server 192.168.3.0 255.255.255.0

route 192.168.178.0 255.255.255.0

push "dhcp-option DNS 192.168.1.1"
push "route 192.168.1.0 255.255.255.0"
push "route 192.168.3.0 255.255.255.0"

max-clients 4

push "sndbuf 0"
push "rcvbuf 0"
sndbuf 0
rcvbuf 0

client-config-dir /usr/syno/etc/packages/VPNCenter/openvpn/ccd
client-to-client
topology subnet

#ifconfig-pool 192.168.3.10 192.168.3.100 255.255.255.0

dh /usr/syno/etc/packages/VPNCenter/custom_certs/dh4096.pem
ca /usr/syno/etc/packages/VPNCenter/custom_certs/CA.crt
cert /usr/syno/etc/packages/VPNCenter/custom_certs/Server.crt
key /usr/syno/etc/packages/VPNCenter/custom_certs/Server.key

comp-lzo no
fast-io

cipher AES-256-CBC
prng SHA512 64
auth SHA512
tls-version-min 1.2
tls-auth /usr/syno/etc/packages/VPNCenter/custom_certs/ta.key
key-direction 0
remote-cert-tls client

persist-tun
persist-key

verb 5
#verb 0

#log-append /var/log/openvpn.log

keepalive 10 60
#Comment out to re-negotiate TLS connection every hour
reneg-sec 0

plugin /var/packages/VPNCenter/target/lib/radiusplugin.so /var/packages/VPNCenter/target/etc/openvpn/radiusplugin.cnf
username-as-common-name

Конфигурация клиента

remote xx.xxx.xxx.xxx 1194

nobind

float
topology subnet
connect-retry 60
ping-restart 90
mtu-test
auth-retry nointeract
verify-x509-name Server name

dev tun

proto udp

pull

tls-client

remote-cert-tls server

cipher AES-256-CBC

prng SHA512 64

auth SHA512

tls-version-min 1.2

fast-io

comp-lzo no

auth-user-pass /etc/openvpn/credentials

#auth-nocache

<tls-auth>
...
key-direction 1

<cert>
...

<key>
...

<ca>
...