Odpowiedzi:
Tak, to możliwe. Aby to zrobić, masz już zainstalowany serwer OpenVPN, a użytkownik został utworzony na serwerze.
Najłatwiejszym klientem openvpn jest menedżer sieci. Jeśli używasz Ubuntu, uruchom:
aptitude install network-manager-openvpn
restart network-manager
Teraz kliknij aplet menedżera sieci, wybierz skonfiguruj VPN i skonfiguruj nowe połączenie open-VPN. Ustaw bramę do twojego serwera Ustaw typ na Hasło Wskaż swojemu urzędowi certyfikacji kopię pliku twojego serwera i wszystko powinno po prostu działać
Załączony jest prosty plik konfiguracyjny klienta, który będzie działał. W razie potrzeby edytuj go, aby dopasował ustawienia serwera. Będziesz potrzebował tego i swojego ca.crt w tym samym katalogu.
W Linuksie mój plik nazywa się /etc/openvpn/client.conf
##############################################
# Sample client-side OpenVPN 2.0 config file.
# for connecting to multi-client server.
##############################################
# Specify that we are a client and that we
# will be pulling certain config file directives
# from the server.
client
dev tun
proto udp
# The hostname/IP and port of the server.
remote my-server-2.domain 1194
# host name of the OpenVPN server. Very useful
# on machines which are not permanently connected
# to the internet such as laptops.
resolv-retry infinite
# Most clients don't need to bind to
# a specific local port number.
nobind
# Try to preserve some state across restarts.
persist-key
persist-tun
# Certificate Authority
ca ca.crt
# Username/Password authentication is used on the server
auth-user-pass
# Verify server certificate by checking
# that the certicate has the nsCertType
# field set to "server". This is an
# important precaution to protect against
# a potential attack discussed here:
# http://openvpn.net/howto.html#mitm
#
# To use this feature, you will need to generate
# your server certificates with the nsCertType
# field set to "server". The build-key-server
# script in the easy-rsa folder will do this.
ns-cert-type server
# Set log file verbosity.
verb 3
# To start the openvpn client, simply type:
# openvpn --config /etc/openvpn/client.conf
Otóż to.
Po stronie serwera potrzebujesz linii takiej jak:
plugin /usr/lib/openvpn/openvpn-plugin-auth-pam.so openvpn
Powyższe spowoduje włączenie wtyczki pam i użycie pliku /etc/pam.d/openvpn jako config (uwaga: plik domyślnie nie istnieje, zamiast niego można użyć „login”, aby sprawdzić poprawność poświadczeń unix lub skonfigurować OpenVPN z wybraną metodą uwierzytelniania (np. Google Authenticator))
Po stronie klienta, jak wspomniano powyżej, powinieneś używać auth-user-pass
w pliku konfiguracyjnym openvpn, lub jeśli korzystasz z menedżera sieci, wybierz „Hasło z certyfikatami” (użytkownik + hasło + uwierzytelnianie oparte na certyfikacie) lub prostą opcję „Hasło” (uwierzytelnianie użytkownika + hasło) na zakładka Tożsamość.