Я настроил OpenVPN, он работает нормально. Но мне всегда нужно импортировать конфигурацию, и у нее есть сертификат CA, я включил аутентификацию по имени пользователя и паролю. Но все же мне нужно добавить этот сертификат.
Как я могу подключить openvpn без сертификата и конфигурации, а только с именем пользователя и паролем.
port 1194
proto udp
dev tun
sndbuf 0
rcvbuf 0
ca /etc/openvpn/ca.crt
cert /etc/openvpn/server.crt
key /etc/openvpn/server.key
dh /etc/openvpn/dh.pem
auth SHA512
tls-auth /etc/openvpn/ta.key 0
topology subnet
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 94.237.127.99"
push "dhcp-option DNS 94.237.40.99"
keepalive 10 120
cipher AES-256-CBC
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 4
crl-verify /etc/openvpn/crl.pem
--verify-client-cert none
log-append /var/log/openvpn.log
script-security 2
auth-user-pass-verify /etc/openvpn/example.sh via-file
client
dev tun
proto udp
sndbuf 0
rcvbuf 0
remote 94.237.88.154 1194
resolv-retry 5
nobind
persist-key
persist-tun
remote-cert-tls server
auth SHA512
cipher AES-256-CBC
setenv opt block-outside-dns
key-direction 1
verb 3
auth-user-pass
script-security 2
<ca>
-----BEGIN CERTIFICATE-----
###
###
-----END CERTIFICATE-------
Теперь, когда я импортирую этот файл и использую свой идентификатор пользователя и пароль, он подключается, но я хочу подключить клиент openvpn, не импортируя этот файл клиента и предоставляя только имя пользователя и пароль.
Я не думаю, что это возможно. Вам все равно придется использовать сертификаты, а затем аутентификацию пользователя.
Я хочу использовать как сертификаты, так и аутентификацию на основе имени пользователя и пароля в качестве двухуровневой защиты. Как настроить разные логины и пароли для разных клиентов?
Есть директива, которую вы можете использовать в своем server.conf
, в зависимости от вашей версии OpenVPN.
клиентский сертификат не требуется:
Делает вашу VPN менее безопасной, так как сертификат не требуется для аутентификации (устарело).
проверить-клиент-сертификат нет|необязательный|требуется:
Использование verify-client-cert none эквивалентно вышеупомянутой опции.
Ссылка на источник: кликните сюда
Я думаю, что этот ответ не имеет отношения к вопросу.
При всем уважении, я не думаю, что это не связано. Он спрашивает, как выполнить аутентификацию по имени пользователя/паролю, не требуя аутентификации по сертификату. Эта настройка позволяет именно это. Как это не связано?
Я думаю, что вопрос здесь в том, как клиенты должны подключаться к VPN без сертификата.
@josoler Да, верно. Но, если сервер требует сертификат, он ничего не может сделать, кроме как применить мое решение. Поэтому он должен удалить проверку/требование сертификата на стороне сервера, чтобы добиться этого.
Возможно, вы можете попробовать использовать OpenVPN Connect для Windows на стороне клиента. Используя это программное обеспечение, вы можете установить соединение с сервером vpn, используя только имя пользователя и пароль. Не требует настройки и сертификатов. https://openvpn.net/client-connect-vpn-for-windows/
Можете ли вы поделиться тем, как вы реализовали auth-user-pass-verify?