Cookies op Tweakers

Tweakers is onderdeel van DPG Media en maakt gebruik van cookies, JavaScript en vergelijkbare technologie om je onder andere een optimale gebruikerservaring te bieden. Ook kan Tweakers hierdoor het gedrag van bezoekers vastleggen en analyseren. Door gebruik te maken van deze website, of door op 'Cookies accepteren' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt? Bekijk dan ons cookiebeleid.

Meer informatie

Software-update: OpenVPN 2.4.6

OpenVPN is een robuuste en gemakkelijk in te stellen opensource-vpn-daemon waarmee verschillende private networks aan elkaar geknoopt kunnen worden door middel van een encrypted tunnel via internet. Voor de beveiliging wordt gebruikgemaakt van de OpenSSL-library, waarmee alle encryptie, authenticatie en certificatie kan worden afgehandeld. Voor meer informatie verwijzen we naar deze pagina en een installatiehandleiding is op deze pagina te raadplegen. De ontwikkelaars hebben al weer even geleden versie 2.4.6 uitgebracht, met de volgende veranderingen:

Version 2.4.6
  • management: Warn if TCP port is used without password
  • Correct version in ChangeLog - should be 2.4.5, was mistyped as 2.4.4
  • Fix potential double-free() in Interactive Service (CVE-2018-9336)
  • preparing release v2.4.6 (ChangeLog, version.m4, Changes.rst)
  • manpage: improve description of --status and --status-version
  • Make return code external tls key match docs
  • Delete the IPv6 route to the "connected" network on tun close
  • Management: warn about password only when the option is in use
  • Avoid overflow in wakeup time computation
  • Add missing #ifdef SSL_OP_NO_TLSv1_1/2
  • Check for more data in control channel
Version 2.4.5
  • reload HTTP proxy credentials when moving to the next connection profile
  • Allow learning iroutes with network made up of all 0s (only if netbits < 8)
  • mbedtls: fix typ0 in comment
  • manpage: fix simple typ0
  • Treat dhcp-option DNS6 and DNS identical
  • show the right string for key-direction
  • Fix typo in error message: "optione" -> "option"
  • lz4: Fix confused version check
  • lz4: Fix broken builds when pkg-config is not present but system library is
  • Remove references to keychain-mcd in Changes.rst
  • lz4: Rebase compat-lz4 against upstream v1.7.5
  • systemd: Add and ship README.systemd
  • Update copyright to include 2018 plus company name change
  • man: Add .TQ groff support macro
  • man: Reword --management to prefer unix sockets over TCP
  • OpenSSL: check EVP_PKEY key types before returning the pkey
  • Remove warning on pushed tun-ipv6 option.
  • Fix removal of on-link prefix on windows with netsh
  • Preparing for release v2.4.5 (ChangeLog, version.m4, Changes.rst)
  • travis-ci: add brew cache, remove ccache
  • travis-ci: modify openssl build script to support openssl-1.1.0
  • autoconf: Fix engine checks for openssl 1.1
  • Cast time_t to long long in order to print it.
  • Fix build with LibreSSL
  • Check whether in pull_mode before warning about previous connection blocks
  • Avoid illegal memory access when malformed data is read from the pipe
  • Fix missing check for return value of malloc'd buffer
  • Return NULL if GetAdaptersInfo fails
  • Use RSA_meth_free instead of free
  • Bring cryptoapi.c upto speed with openssl 1.1
  • Add SSL_CTX_get_max_proto_version() not in openssl 1.0
  • TLS v1.2 support for cryptoapicert -- RSA only
  • Refactor get_interface_metric to return metric and auto flag separately
  • Ensure strings read from registry are null-terminated
  • Make most registry values optional
  • Use lowest metric interface when multiple interfaces match a route
  • Adapt to RegGetValue brokenness in Windows 7
  • Fix format spec errors in Windows builds
  • Local functions are not supported in MSVC. Bummer.
  • Mixing wide and regular strings in concatenations is not allowed in MSVC.
  • RtlIpv6AddressToStringW() and RtlIpv4AddressToStringW() require mstcpip.h
  • Simplify iphlpapi.dll API calls
  • Fix local #include to use quoted form
  • Document ">PASSWORD:Auth-Token" real-time message
  • Fix typo in "verb" command examples
  • Uniform swprintf() across MinGW and MSVC compilers
  • MSVC meta files added to .gitignore list
  • openvpnserv: Add support for multi-instances
  • Document missing OpenVPN states
  • make struct key * argument of init_key_ctx const
  • buffer_list_aggregate_separator(): add unit tests
  • Add --tls-cert-profile option.
  • Use P_DATA_V2 for server->client packets too
  • Fix memory leak in buffer unit tests
  • buffer_list_aggregate_separator(): update list size after aggregating
  • buffer_list_aggregate_separator(): don't exceed max_len
  • buffer_list_aggregate_separator(): prevent 0-byte malloc
  • Fix types around buffer_list_push(_data)
  • ssl_openssl: fix compiler warning by removing getbio() wrapper
  • travis: use clang's -fsanitize=address to catch more bugs
  • Fix --tls-version-min and --tls-version-max for OpenSSL 1.1+
  • Add support for TLS 1.3 in --tls-version-{min, max}
  • Plug memory leak if push is interrupted
  • Fix format errors when cross-compiling for Windows
  • Log pre-handshake packet drops using D_MULTI_DROPPED
  • Enable stricter compiler warnings by default
  • Get rid of ax_check_compile_flag.m4
  • mbedtls: don't use API deprecated in mbed 2.7
  • Warn if tls-version-max < tls-version-min
  • Don't throw fatal errors from create_temp_file()
  • Fix '--bind ipv6only'
Version 2.4.4
  • crypto: correct typ0 in error message
  • use M_ERRNO instead of explicitly printing errno
  • don't print errno twice
  • ntlm: avoid useless cast
  • ntlm: unwrap multiple function calls
  • route: improve error message
  • management: preserve wait_for_push field when asking for user/pass
  • tls-crypt: avoid warnings when --disable-crypto is used
  • ntlm: convert binary buffers to uint8_t *
  • ntlm: restyle compressed multiple function calls
  • ntlm: improve code style and readability
  • OpenSSL: remove unreachable call to SSL_CTX_get0_privatekey()
  • make function declarations C99 compliant
  • remove unused functions
  • use NULL instead of 0 when assigning pointers
  • add missing static attribute to functions
  • ntlm: avoid breaking anti-aliasing rules
  • remove the --disable-multi config switch
  • rename mroute_extract_addr_ipv4 to mroute_extract_addr_ip
  • route: avoid definition of unused variables in certain configurations
  • fix a couple of typ0s in comments and strings
  • fragment.c: simplify boolean expression
  • tcp-server: ensure AF family is propagated to child context
  • Set tls-cipher restriction before loading certificates
  • Print ec bit details, refuse management-external-key if key is not RSA
  • Use provided env vars in up/down script.
  • Document down-root plugin usage in client.down
  • doc: The CRL processing is not a deprecated feature
  • cleanup: Move write_pid() to where it is being used
  • contrib: Remove keychain-mcd code
  • cleanup: Move init_random_seed() to where it is being used
  • sample-plugins: fix ASN1_STRING_to_UTF8 return value checks
  • Highlight deprecated features
  • Use consistent version references
  • docs: Replace all PolarSSL references to mbed TLS
  • systemd: Ensure systemd shuts down OpenVPN in a proper way
  • systemd: Enable systemd's auto-restart feature for server profiles
  • lz4: Move towards a newer LZ4 API
  • Prepare the release of OpenVPN 2.4.4
  • OpenSSL: remove pre-1.1 function from the OpenSSL compat interface
  • OpenSSL: remove EVP_CIPHER_CTX_new() from the compat layer
  • OpenSSL: remove EVP_CIPHER_CTX_free() from the compat layer
  • Warn that DH config option is only meaningful in a tls-server context
  • travis-ci: add 3 missing patches from master to release/2.4
  • travis-ci: update openssl to 1.0.2l, update mbedtls to 2.5.1
  • travis-ci: update pkcs11-helper to 1.22
  • man: Corrections to doc/openvpn.8
  • Fix typo in extract_x509_extension() debug message
  • Move adjust_power_of_2() to integer.h
  • Undo cipher push in client options state if cipher is rejected
  • Remove strerror_ts()
  • Move openvpn_sleep() to manage.c
  • fixup: also change missed openvpn_sleep() occurrences
  • Always use default keysize for NCP'd ciphers
  • Move create_temp_file() out of #ifdef ENABLE_CRYPTO
  • Deprecate --keysize
  • Deprecate --no-replay
  • Move run_up_down() to init.c
  • tls-crypt: introduce tls_crypt_kt()
  • crypto: create function to initialize encrypt and decrypt key
  • Add coverity static analysis to Travis CI config
  • tls-crypt: don't leak memory for incorrect tls-crypt messages
  • travis: reorder matrix to speed up build
  • Fix bounds check in read_key()
  • Fix socks_proxy_port pointing to invalid data
Versienummer 2.4.6
Releasestatus Final
Besturingssystemen Windows 7, Linux, BSD, macOS, Solaris, Windows Server 2008, Windows Server 2012, Windows 8, Windows 10
Website OpenVPN
Licentietype GPL

Door Japke Rosink


15-05-2018 • 12:27

45 Linkedin

Submitter: ironx

Bron: OpenVPN


Meer historie

Reacties (45)

Wijzig sortering
Hele fijne VPN tool. Al meerdere computers mee aan elkaar geknoopt. Snel en eenvoudig met de bestandjes die gegenereerd worden (instellingen, certificaten, etc)

Ik loop er alleen nu tegen aan dat computers wel verbinden, elkaar ook zien, maar vervolgens niet kunnen pingen of bij elkaars bestanden kunnen... En dat heeft wel gewerkt, maar na het crashen van de server (stroomstoring) krijg ik dat niet meer voor elkaar :?

-edit typo's-

[Reactie gewijzigd door Bekers op 15 mei 2018 14:53]

Kan ook een routing issue zijn. Zo heb ik twee netwerken aan elkaar geknoopt, maar daarbij is het wel nodig een static route toe te voegen die over de VPN verbinding gaat.
Dat moet altijd toch, of moet de ene computer raden waar het andere netwerk is..
Ligt er aan wat het doel is, als jij verbind met de VPN server zul jij deze altijd kunnen benaderen, immers heb je een "directe" verbinding en weten jullie elkaars IP. Wil jij het achterliggende netwerk kunnen benaderen heb je een route nodig. Deze wordt meestal gepushed door de VPN server, maar om een round trip te kunnen hebben heeft het netwerk achter de VPN ook weer een route nodig naar jouw computer.

Situatie die ik heb is ongeveer als volgt:

Netwerk 1:
Netwerk 2:

VPN client in netwerk 1 verbind met server in netwerk 2.

VPN client in netwerk 1 krijgt vast ip uit netwerk 2 en deze is ook bekend als gateway voor het netwerk.
In netwerk 2 staat de VPN server als gateway voor netwerk 1 in de routes.

Dit is niet een default config en het is ook handig deze routes op je eigen gateway te zetten, zo hoef je niet al die routes naar de clients te pushen.

Gezien aangegeven wordt dat de computers elkaar wel zien (broadcast), lijkt het me toch een routing issue.

[Reactie gewijzigd door BernardV op 15 mei 2018 13:30]

Goeie info, de vpn is in feite een router, maar dan moet de route er wel zijn. Was in dit geval niet persistent gezet denk ik gezien de reboot/crash.

Hoe 'zie' je eigenlijk een computer via broadcasting?
Inderdaad, ik denk ook dat die route ooit eens is aangemaakt, maar door de reboot is verloren.

Wat betreft 'het zien' via een broadcast;

Afhankelijk van het type interface wat je gebruikt in OpenVPN komen broadcasts door of niet (TUN vs TAP).
Een broadcast is eigenlijk niets meer dan een berichtje wat een computer het netwerk op stuurt en heeft een context als "HALLO! Ik heet 'ComputerVanVinzz' en heb IP ''" waardoor de rest van het netwerk weet dat de computer met naam 'x' te vinden is op ip 'y'. Deze broadcasts komen wel overal in je netwerk, maar als de route naar het ip er niet is, is deze niet te bereiken.
Aha altijd gedacht dat een broadcast nooit boven een route kon uitstijgen maar is dus kennelijk andere osi laag, meer fysiek, ethernet oid. Aan de andere kant hoe propageert een route zich anders.. Ben geen netwerk engineer, meer linux georiënteerd vandaar.
Ik ben ook geen netwerk engineer, dus weet ook niet overal het fijne van. Maar het klopt wat je zegt van de osi lagen. TAP werkt in laag 2 en dus de ethernet frames gaan over de VPN, TUN werkt in laag 3 en op IP niveau.
TAP geeft dus ook overhead als je het niet nodig hebt, maar het is wel handig voor sommige doeleinden.
TAP is eenvoudige bridging, zelfde netwerk zoals je zegt, het hele ethernet wordt meegepakt, en TUN komt neer op routing van meerdere netwerken heb ik altijd geleerd. Voor beide zijn inderdaad toepassingen te bedenken. Tnx voor de info, ben weer wijzer geworden.
@Vinzz Het werkte altijd, en er is niets veranderd aan de FW, dus dat leek me sterk. Ook nog even in de config gekeken, maar kon niets raars vinden en de uitzonderingen stonden er nog wel in

@Loggedinasroot als je naar je netwerkomgeving kijkt in verkenner

@bernardV Het gaat hier echt om een losse computer op afstand, niet om een heel netwerk.

Maar vóór de crash werkte het prima en lekker vlot, maar ik ben nu aan het stoeien en mogelijkheden aan het uitsluiten :)
Nou is de route er nog? route -n afhankelijk van os.
Klinkt als firewall issue.
Wat bedoel je precies met ze kunnen elkaar wel zien?
Ik heb met openvpn nooit een fatsoenlijke performance kunnen halen. Ik gebruik tegenwoordig wireguard. Alhoewel het nog in beta(/alfa?) is, is het echt vele malen sneller (zowel latency als throughput) op dezelfde hardware en vele malen eenvoudiger te configureren.
Het probleem is dat er nog geen audit op heeft plaatsgevonden, al zit het tegenwoordig wel in Linux kernel als ik mij niet vergist.
Klopt. Dit is nog even een dingetje (de audit). Ik weet niet of hij al in de kernel source wordt meegeleverd. Hij wordt in elk geval nog niet standaard in CentOS meegegeven. (uiteraard is CentOS altijd wat 'conservatief' met nieuwe features :) door hun upstream source) Er zijn in elk geval RPMs en een repo beschikbaar gemaakt door de club achter Wireguard.

Wat ook nog een dingetje is, is dat er (zover ik weet) nog geen iOS ondersteuning is, dus i-devices kunnen niet 'inbellen', maar daar maak ik dan geen gebruik van, dus daar loop ik zelf niet tegen aan.
Wat bedoel je met vele malen eenvoudiger? Ben zelf eens met OpenVPN begonnen toen ik eigenlijk nog helemaal niets wist van VPN's en vond het zeer eenvoudig om te configureren. Ik kan me er eigenlijk weinig bij voorstellen dat een ander pakket "vele malen eenvoudiger" zou zijn.
Beide systemen hebben in de basis inderdaad geen concrete VPN-kennis nodig (anders dan dat je het basisconcept begrijpt). Ik heb met OpenVPN best wel even gedoe gehad om een LAN to LAN op te zetten. De documentatie hieromtrent was (in elk geval voor mij) niet helemaal helder kan ik me herinneren.

Bij Wireguard komt het in elk geval neer op:
Aan beide kanten:
1. Genereer: privé sleutel
2. Genereer: publieke sleutel
3. Maak virtueel device
4. Wissel publieke sleutels uit
5. Zeg 'waar de ander is' (IPgegevens) en wat je wil kunnen bereiken (IP-ranges)


En de volgende keer activeer je je virtuele device aan, en dan is ie er weer.

Letterlijk minder dan drie minuten werk. Op de Wireguard site laten ze zien hoe het moet. Het is ook letterlijk niet meer dan dat.

Ik heb zelf een combinatie van drie LANs die ik over internet aan elkaar heb geknoopt, een paar wardrive-users. Allemaal koek-en-ei. :) Met OpenVPN was dit best wel wat werk.
ZeroTier is nog eenvoudiger.
super tool, ook voor thuis. In combinatie met een ad blocker op de router scheelt het zo'n 100-200 MB per maand aan reclame verkeer op m'n mobiel. Ik verbaas mij er elke keer weer over hoe snel de verbinding tot stand komt maar helaas ook al een paar keer mee gemaakt dat het VPN verkeer door hotels en dergelijke wordt geblokkeerd. Dan moet je weer gaan klooien met alternatieve poorten en om dan de configuratie bestandjes weer op je mobiel te krijgen.
Je kunt proberen de SSL-poort te gebruiken, daarmee kom je er meestal wel omheen.
En geen UDP maar TCP. En als je 443 al gebruikt in je eigen netwerk, pak je sslh.
Maar als het betreffende hotel dan een iets slimmere firewall heeft werkt dit niet, want dan zien ze het verschil tussen een https- en een OpenVPN-pakketje, maar het is allicht te proberen. Niet alle hotels zullen het op dat niveau filteren.
OpenVPN pakketjes zijn SSL pakketjes die na het decrypten niet met GET of POST beginnen ;-) Daarbij: als het goed is gebruik je client side certs en is het al helemaal ondoenlijk ze te onderscheiden, behalve met traffic analysis (veel kleine pakketjes achter elkaar ipv. 1 request en dan x antwoorden).
Toch heb ik het al een paar keer meegemaakt. Dit gebeurde met behulp van transparante proxies. (O.a. bij m'n werkgever(s) en één keer bij een openbaar access point)
Dan hebben ze je wel te pakken door een fake cert in de chain te duwen. Lijkt me ook niet handig om op een device wat gecontroleerd wordt door derden (lees: je werkgever) een prive proxy te draaien. In andere gevallen zal het op zijn best traffic analysis geweest zijn (vpn is redelijk: 1 pakket in, 1 pakket uit, surfen is 1 pakket uit (GET bla.html) en dan 100 pakketjes terug.
Dat gebeurt *bijna* nergens. Nog nooit tegengekomen. Mogelijk in China oid.
Ik weet dat mijn werkgever het doet een ik heb het één keer gehad bij een publiek access point, maar verder gebeurd het in mijn ervaring ook niet heel vaak, maar het gebeurd wel degelijk 😊
Wat doet je werkgever dan? Connectie opzetten van vpn afkappen?
Het wordt domweg niet doorgelaten.
Als ik een debug-modus aan zet, dan krijg ik netjes een reply dat het geen standaard https-pakketje is. (zo werkt bijvoorbeeld ssh over 443 ook niet)
Nog eenvoudiger: gewoon alle niet OpenVPN traffic door de OpenVPN daemon naar Apache door laten zetten: geen aparte applicatie voor nodig.
Dat is ook slim, ga ik eens naar kijken. Je zou ook iets met Nginx reverse proxy kunnen doen denk ik.

Edit: ik heb een pi met openvpn dus, ik wil daar niet alle https traffic overheen hebben, maar tnx voor de tip.

[Reactie gewijzigd door Vinzz op 15 mei 2018 17:21]

ah, sslh kende ik nog niet. Ik ga het eens uitproberen.
Fijn tooltje. Op de een of andere manier kreeg ik een tijd geleden de gewenste DNS server niet aan de praat via de config maar in dat geval kun je bv. Simple DNSCrypt gebruiken om DNS-hijacking tegen te gaan.
Wat doet deze tool spe dnscrypt?
Gratis dns?

[Reactie gewijzigd door aygul12345 op 15 mei 2018 22:51]

Zorgt er voor dat als je roadwarrior bent en je eerste hop niet kunt vertrouwen ivm DNS poisoning/hijacking dat je versleutelde DNS hebt. Eventueel zelfs over port 443 waardoor het lijkt op HTTPS.
PIA's apps zijn veel beter dan OpenVPN. En wordt nu open source gemaakt. Misschien kunnen dan andere VPN apps waaronder OpenVPN wat goede dingen 'lenen.'

Ps. In Linux gebruik je met PIA wel OpenVPN.

[Reactie gewijzigd door Juliatan op 15 mei 2018 13:05]

Wat is er allemaal beter dan bijvoorbeeld? Zijn dit niet allemaal gewoon settings?
PIA is een vpn service met zijn app toch ?
Open vpn is een vpn server die ik thuis kan draaien. (middels het openvpn protocol)

Kortom wat is er dan beter aan ?
Wel nieuwsgierig naar.
Wat is er precies beter? Welke apps bedoel je precies? Welke 'goede dingen' heb je het over? Ik neem aan dat je Private Internet Access bedoeld.
Je zal je vergissen in het doel van PIA en Opernvpn
Op de site staat als download V 2.5.2. als ik bij Ubuntu kijk.. :?

De directe link zie ik idd die versie... Begrijp dan alleen het verschil niet goed.

Wij gebruiken OpenVPN ook zeker bij klanten. Heel handig icm de Google Authenticator... En de prijs is er zeker naar.

[Reactie gewijzigd door anpat op 15 mei 2018 12:41]

Op de site staat als download V 2.5.2. als ik bij Ubuntu kijk.. :?
Dan kijk je vast naar OpenVPN-AS.
OpenVPN Access Server (OpenVPN-AS) is a set of installation and configuration tools that simplify the rapid deployment of a VPN remote access solution.

[Reactie gewijzigd door 8088 op 15 mei 2018 13:05]

met 1 kanttekening:
voor meer dan twee simultane connecties moet je een license kopen.

verder is het inderdaad erg handig want het is in principe een complete user portal met zeer veel instellingen en rechten beheer.

meer iets voor een grotere organisatie.

Op dit item kan niet meer gereageerd worden.

Apple iPad Pro (2021) 11" Wi-Fi, 8GB ram Microsoft Xbox Series X LG CX Google Pixel 5a 5G Sony XH90 / XH92 Samsung Galaxy S21 5G Sony PlayStation 5 Nintendo Switch Lite

Tweakers vormt samen met Hardware Info, AutoTrack,, Nationale Vacaturebank, Intermediair en Independer DPG Online Services B.V.
Alle rechten voorbehouden © 1998 - 2021 Hosting door True