Bug 1432152
Summary: | openvpn pkcs11 does not work with hardware tokens anymore. | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Nicolas FOURNIL <nicolas.fournil> |
Component: | openvpn | Assignee: | David Sommerseth <dazo> |
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | high | Docs Contact: | |
Priority: | unspecified | ||
Version: | 29 | CC: | anders, bengen+rhbz, brianwitt, chref, c.keil, dazo, dwmw2, egabr_2014, emiel.kollof, extras-qa, gwync, huzaifas, iam, johannbg, lnykryn, mauricio.teixeira, msekleta, nicolas.fournil, orion, ovasik, ran, redhat, s, steve, systemd-maint, vpavlin, zbyszek |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | x86_64 | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | openvpn-2.4.8-1.fc29 | Doc Type: | If docs needed, set a value |
Doc Text: | Story Points: | --- | |
Clone Of: | 1135932 | Environment: | |
Last Closed: | 2019-11-10 01:07:01 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | 1437208, 1444994, 1445349 | ||
Bug Blocks: |
Description
Nicolas FOURNIL
2017-03-14 16:26:07 UTC
Still not working in Fedora 25 build => Nobody uses PKCS11 token with OpenVPN ?! Apparently not a lot :-) We do, and whenever a new OpenVPN package is released, we rebuild it with systemd support disabled to make it work. Still not working in Fedora 26 build also => PKCS11 support has been REMOVED ! FYI: With the latest OpenVPN package (openvpn-2.4.1-1.fc25.x86_64) I didn't have to disable systemd support. It just works out of the box! (In reply to Nicolas FOURNIL from comment #3) > Still not working in Fedora 26 build also => PKCS11 support has been REMOVED > ! The mbed TLS package shipped Fedora does NOT support/enable PKCS#11 support. As OpenVPN currently does NOT build against openssl-1.1 we need to build against mbedtls-2.4. Further, I do not yet know how mbedtls with PKCS#11 support will work with pkcs11-helper. So OpenVPN is currently not capable to even start thinking about PKCS#11 support in Fedora until a) OpenVPN builds successfully against openssl-1.1 (patches are being worked on, but the review is not completed yet - only 7 of so far 15 patches have been reviewed and applied to the upstream OpenVPN repository) or b) Fedora mbedtls is built with PKCS#11 support *and* we can start testing this against pkcs11-helper. So unless you have some magic to share with us ... PKCS#11 support will currently be disabled until either a) or b) happens., I have filed bz #1437208 now, containing the needed patch to enable PKCS#11 support in the mbedtls package. *** Bug 1440468 has been marked as a duplicate of this bug. *** Sorry, bug #1440468 is not related to this one. I just confused PKCS#11 with PKCS#12. I have done some investigation with the PKCS#11 support enabled in mbed TLS, we are now one step closer. However, I have heard some rumours that this can explode again if pkcs11-helper is built against OpenSSL while OpenVPN is built against mbed TLS. I have not yet dug into how pkcs11-helper in Fedora is built. So, I do have a scratch build ready where I test this (plus an MD5 hack, bug #1443749). If users having PKCS#11 support issues can test this scratch build and report back, it would help a lot. If this is confirmed to work, I can prepare an updated package soon. https://koji.fedoraproject.org/koji/taskinfo?taskID=19098906 (In reply to David Sommerseth from comment #9) > If users having PKCS#11 support issues can test this scratch build and > report back, it would help a lot. Remember, you don't need *hardware* to use PKCS#11. We have plenty of software tokens, including GNOME keyring, SoftHSM, and the NSS one. There are some instructions at https://fedoraproject.org/wiki/PackageMaintainers/PKCS11 Thanks! I've done some light tests with softhsm, not being able to conclude either way yet. No explosions, but also no success retrieving tokens into OpenVPN. So I thought it would be good to get real-life tests as well, from users had a working environment but lost this feature in F26. Thanks for that link though! I was not aware of that one, and it might help me re-testing this locally too - at least figuring out what I did wrong. This message is a reminder that Fedora 26 is nearing its end of life. Approximately 4 (four) weeks from now Fedora will stop maintaining and issuing updates for Fedora 26. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as EOL if it remains open with a Fedora 'version' of '26'. Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, simply change the 'version' to a later Fedora version. Thank you for reporting this issue and we are sorry that we were not able to fix it before Fedora 26 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora, you are encouraged change the 'version' to a later Fedora version prior this bug is closed as described in the policy above. Although we aim to fix as many bugs as possible during every release's lifetime, sometimes those efforts are overtaken by events. Often a more recent Fedora release includes newer upstream software that fixes bugs or makes them obsolete. Patch is available in OpenVPN bug tracker: https://community.openvpn.net/openvpn/ticket/538 This bug appears to have been reported against 'rawhide' during the Fedora 29 development cycle. Changing version to '29'. The patch is not being accepted upstream as it is now, so we won't do any Fedora tricks until a proper patch is in place. I actually moved this from F-26 to Rawhide a while back ago, to ensure this didn't get closed due to specific Fedora versions going EOL. I just added an alternative patch for discussion upstream, so if anyone wants to try this out - please do! This has only been very lightly tested. https://community.openvpn.net/openvpn/attachment/ticket/538/0001-pkcs11-Workaround-to-make-PKCS-11-PIN-token-work-wit.patch There is apparently a simpler solution, see the patch in the upstream pull request[1] which I also sent to the -devel mailing list[2]. The newly uploaded openvpn/2.4.7-1 [3] in Debian includes this simple patch. [1] https://github.com/OpenVPN/openvpn/pull/121 [2] https://sourceforge.net/p/openvpn/mailman/message/36590286/ [3] https://tracker.debian.org/news/1031373/accepted-openvpn-247-1-source-into-unstable/ I'm one of the reviewers of that patch. Just starting to dive into how this patch works and changes the pkcs11-helper behaviour, as well as how it works on older pkcs11-helper libraries (like on RHEL-7). Just to be sure we're not making things worse later on. But that trick was a nice find, so we're thankful for the contribution! Is there any chance of getting the patch from comment 17 approved soon? We're about to roll out a large VPN setup and this issue is holding us back. This message is a reminder that Fedora 29 is nearing its end of life. Fedora will stop maintaining and issuing updates for Fedora 29 on 2019-11-26. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as EOL if it remains open with a Fedora 'version' of '29'. Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, simply change the 'version' to a later Fedora version. Thank you for reporting this issue and we are sorry that we were not able to fix it before Fedora 29 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora, you are encouraged change the 'version' to a later Fedora version prior this bug is closed as described in the policy above. Although we aim to fix as many bugs as possible during every release's lifetime, sometimes those efforts are overtaken by events. Often a more recent Fedora release includes newer upstream software that fixes bugs or makes them obsolete. FEDORA-2019-a7d5349837 has been submitted as an update to Fedora 29. https://bodhi.fedoraproject.org/updates/FEDORA-2019-a7d5349837 openvpn-2.4.8-1.fc29 has been pushed to the Fedora 29 stable repository. If problems still persist, please make note of it in this bug report. |