-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

> Hi,
>
> On Fri, Dec 12, 2014 at 19:24 +0100, Arne Schwabe wrote:
>>> On Mon, Dec 08, 2014 at 14:52 +0300, Vasily Kulikov wrote:
>>>> This patch adds support for using certificates stored in the Mac OSX
>>>> Keychain to authenticate with the OpenVPN server.  This works with
>>>> certificates stored on the computer as well as certificates on hardware
>>>> tokens that support Apple's tokend interface.  The patch is very
similar
>>>> to, and also based on, the Windows Crypto API certificate functionality
>>>> that currently exists in OpenVPN.
> ...
>>>> Signed-off-by: Vasily Kulikov <seg...@openwall.com>
>>>> --
>>> Any comments?
>
> Some ideas about keychain implementation out of OpenVPN core.
>
> I see 4 possible alternatives here:
> 1) implement keychain rsa offloading in Tunnelblick
> 2) make my patch use plugin interface
> 3) implement external daemon that communicated with openvpn process via
> management interface
> 4) the same as 3) but make openvpn able to handle more than 1
> management client
>
> There are problems with all these alternatives:
> (1) is limited to Tunnelblick users and doesn't work for users who start
> openvpn from the terminal or use any other GUI
> (2) implies plugin interface is expanded to handle two new actions: 'user
> certificate request' and 'rsa-sign request'
> (3) implies management interface is expanded to handle 'user certificate
> request'; also it doesn't work with Tunnelblick or any other tool that
> communicates with openvpn via management interface as MI currently
> supports only a single client
> (4) needs 'user certificate request' addition and expanding management
> interface to support more than a single client
>
> So, (1) is a no-go as it works only with Tunnelblick; (3) is a no-go as
> it breaks Tunnelblick and probably someone else.  We stay with only two
> interface expantions: plugin interface or management interface.  Either
> (a) add 'user certificate request' to plugin interface or (b) add 'user
> certificate request' to management interface and support more than a
> single client.
>
> I'm not sure which way is better.  Do you have any plans/objections on
> these interfaces expantion?  Maybe I missed some critical limitations of
> the interfaces and they must not be used this way?  If no strict
> objections I'd prefer to implement it via plugin interface as my patch
> would need to change only several hooks registration and handling
> functions in this case.
>
> Thanks,
>
Hi,

I've discussed this topic with James Bekkema, a Viscosity developer who
was unfortunately unable to attend the previous IRC meeting. He
suggested the following:

"I also noticed some confusion as to how OpenVPN was able to access the
local user’s Keychain in the IRC chat log: while I haven’t looked in
detail at the patch, I suspect this is due to how Tunnelblick is
launching OpenVPN with elevated permissions. Tunnelblick uses a SUID
helper to have effective root permissions, and so OpenVPN in inheriting
the user’s environment. For clients using a more secure (i.e. launchd)
elevation approach (such as OpenVPN Connect, Viscosity, etc.) this
approach won’t work (assuming it is indeed what is going on) which may
make it a bit useless."

"My recommendation would be to expand upon the support already in place
for getting identity details over the management interface for Android
devices. That way the actual accessing of the Keychain can be performed
by a process running as the end user, without any signing issues etc.
coming into play. It looks like this was pretty much the conclusion
drawn from the meeting ."

Best regards,

- -- 
Samuli Seppänen
Community Manager
OpenVPN Technologies, Inc

irc freenode net: mattock
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iEYEARECAAYFAlSrpiIACgkQwp2X7RmNIqOioACgx+xqO+Z7cVJZtGClgWdK0nDh
eCMAn2Emks41PQCbKsaA9pt5U19DGhSS
=63NW
-----END PGP SIGNATURE-----



Reply via email to