-
Notifications
You must be signed in to change notification settings - Fork 670
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
TLS Client certificate support [$110] #69
Comments
We have the same situation and cannot use the client until it can provide certificates. Preferebly it would use the windows certificate store or the one from firefox. |
We're just another group of people which is interested in this functionality. It would appreciated if You would implement this. |
Yessir, interested in such a feature! |
If there is so much interest, why does nobody come up with a patch then? |
Waiting for this!! |
+1 for this feature! |
Added outline on how to implement the feature. |
I'm currently using stunnel to create a https->http "tunnel" as an ugly hack to get this functionality. It works okay-ish, but having to start stunnel every time I start mirall is far from optimal. |
Does anyone know whether there's any work happening on this? |
@natschil I am not aware about anyone working on this. See my descriptions in the original report on what needs to be done. Don't hesitate to ask if you need further help. |
I'll have a look at what I can do in the next few days. Is there an irc |
|
I just patched ocsync to allow for CA and client certificates. The syntax is pretty obvious IMHO and is described in the new help:
This allows ocsync to connect to a server which is protected by a (self-signed) client certificate. The ca file will usually be a PEM file, the client certificate will usually be in p12 format. I added corresponding properties ca_certificate, client_certificate and client_certificate_pass to csync_owncloud.[ch], which could also be used by the gui. Anyone volunteers to do the gui stuff? (I'm afraid of beeing not experienced enough to do this). It would be nice if this could make it to the official sources soon. |
Thanks for doing this! I had a look at some of the GUI stuff too and made some preliminary On 11/02/2013 10:09 PM, joze- wrote:
|
natschil // yes please make your code available, I'll check if I can make the best from both versions |
Hi guys, Funny enough, I also have a patch for related to ssl certificates: disabling the check altogether (originally because of self-signed cert on the server). It is actually controlled by the PATCH variable in my compilation script that was discussed on the mailing list. kuba On Nov 3, 2013, at 8:24 PM, joze- notifications@github.com wrote:
|
This issue isn't related to ssl checks though, but to being able to On 11/03/2013 08:37 PM, moscicki wrote:
|
Is there any plan to implement the function of client side ssl certificate in the Desktop Sync Client softwares? This functionality would be very much appreciated! |
@icetype The feature is not scheduled for the next two major releases. Which pretty much means it's not on the roadmap. As indicated above, we're glad to assist anyone who attempts to implement SSL client certs as a coherent feature in the ownCloud Client. Alternatively, you can always influence the main developers' priorities by purchasing an ownCloud commercial license and telling sales you need this particular feature. |
Thank you for the information, danimo! |
Could you guys please share patches you've got? |
Sorry for not doing this earlier, I've been relatively busy recently and haven't gotten to working on this.... I've put a patch for csync and one for mirall here: https://github.com/natschil/owncloud_client_side_ssl_stuff Notes: |
Thank you, @natschil , for kindly proving your patches. I'm a complete newbie but will give it try to build them. |
@icetype You can try to build the csync one (I think it compiles), but the owncloud patch doesn't actually do anything.....These patches are mainly meant for someone trying to develop client side ssl functionality to have a look at, they aren't actually working code. Sorry for being unclear... |
@icetype If you're looking for using client side ssl certificates, I suggest you use stunnel to connect to your server, that has worked for me in the past. |
@natschil Thank you for the information and kind suggestion. In fact, I tried to use ssh dynamic port forwarding with client-side ssl certificates and SOCK5 proxy setting in the ownCloud client. It seems to be working OK so far, although it may not be an ideal solution. |
With a colleague, we did it with the last client's version (1.6) and Qt 5.0. The client need a PKCS12 container to match the server certificate and established the SSL connection. Otherwise, the connection can't be established. The window to configure the PKCS12 path pops when the returned SSL error is SSL_ERROR_HANDSHAKE_FAILURE_ALERT. |
Ok, your way! Question: is it possible to use SSL AUTH (with or without regular password auth) with native owncloud client? The idea: httpd allow to https://my_own_cloud only devices with ssl certificate, which signed my own CA. Option "SSLVerifyClient require" for httpd. This feature can seriously increase security. Add: this question is for Windows, MacOS, iOS. |
No, it can not increase security. |
@AnrDaemon: you rightfully complained about the previous post of @billybons2006 of not being constructive and of little value. You last answer is equally unconstructive and unfriendly. If you consider that @billybons2006 is a relatively unexperienced person (which I would infer from their posts) your answer will result in this person either being put off from the project or continue this conversation about "can or cannot increase security". Either way, this does not bring much value to this thread nor to implementing this feature. If you are a developer and can do something about this feature then provide an appropriate comment. If you are a community member that cares about quality of posts from less experienced members, then please do it decently. If am neither (nor a github policeman) but I have a feeling that there is a lot of energy and time wasted here from all people involved in this and other threads. Many thanks for your understanding. |
Look, I could write a lengthy essay on X.509 and SSL usage in general, but the bottom line would be: client certificates ease automation and provide consistent access control for automated services, but they do NOT increase security by any means imaginable.
|
Dear @AnrDaemon, by saing "increase security" I meant that using ssl is additional layer (something two-factor) of auth. On the other hand, using one long and very streight password (which hard to remember) VS using SSL (from outside attackers) and regular password (from my so-workers) can be much more useful. I can use (and use ;)) fail2ban, but if several people using one owncloud server, ban by IP will ban all users, not only one. Any way, owncloud very good, I use it and advise my friends. I agree with @moscicki and ready to close my question. Thank you all! |
This also nicely displays the 'Untrusted domain' message of oC. The link to add a trusted domain (via web browser) is clickable.
I've picked this up again and I'm working on several things:
|
The re-enables the UI, uses Qt API for importing and stores the certificate/key in the keychain.
This also nicely displays the 'Untrusted domain' message of oC. The link to add a trusted domain (via web browser) is clickable.
The re-enables the UI, uses Qt API for importing and stores the certificate/key in the system keychain. People who had set up client certs need to re-setup the account. This is ok since it was an undocumented feature anyway.
The PR is merged. We would need some testing from you guys:) Please download from or compile yourself (master branch) Note that it needs a current Qt version (>= 5.5 or so) |
Done as part of 2.3 |
Hi,
I am deploying ownCloud to private environment . As I want to upload to my cloud confidental documents, I need some good security.
I have decided, that it would be nice to require SSL certificates from clients. This is pretty strong security measure. But I have found, that there is no support for this in mirall.
I kindly ask any mirall/csync developer, if it would be possible to add configure option for SSL client certificate. All what is needed is is to provide certificate when connecting to server. It should be simple task to someone familiar with the code.
Mirall uses QSslSocket and there are QSslSocket::setLocalCertificate and QSslSocket::setPrivateKey functions to set the certificate.
csync uses neon and it has ne_ssl_set_clicert function.
I will be happy to answer any question or test any code.
Thank you.
Update from @danimo:
Ok, for someone who likes to pick this feature up, here is what needs to be done in more detail:
QSslConfiguration
of the globalQNetworkAccessManager
.If you want to start working on it, please contact me.
--- Did you help close this issue? Go claim the **[$110 bounty](https://www.bountysource.com/issues/905047-tls-client-certificate-support?utm_campaign=plugin&utm_content=tracker%2F216457&utm_medium=issues&utm_source=github)** on [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F216457&utm_medium=issues&utm_source=github).The text was updated successfully, but these errors were encountered: