-
Notifications
You must be signed in to change notification settings - Fork 630
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
New :use_tls option for start_tls() (for choosing TLS or SSL) #359
Comments
@ibc, actually, opposite of what the methods may look like, TLSv1_client_method() forces TLSv1, while SSLv23_client_method() allows us to use any version of the protocol: "OpenSSL 1.0.1 introduced support for TLSv1.1 and TLSv1.2. These are not Counter-intuitively, the OpenSSL folks have TLSv1_client_method() The attached patch uses SSLv23_client_method() and SSL_CTX_set_options() And as you can see here: http://www.openssl.org/docs/ssl/SSL_CTX_new.html TLSv1_method(void), TLSv1_server_method(void), TLSv1_client_method(void) SSLv23_method(void), SSLv23_server_method(void), SSLv23_client_method(void) The list of protocols available can later be limited using the SSL_OP_NO_SSLv2, SSL_OP_NO_SSLv3, SSL_OP_NO_TLSv1 options of the SSL_CTX_set_options() or SSL_set_options() functions. Using these options it is possible to choose e.g. SSLv23_server_method() and be able to negotiate with all possible clients, but to only allow newer protocols like SSLv3 or TLSv1. So effectively, EM in the current state, does support TLS. |
Thanks for the information @archseer. However in EventMachine-LE version 1.1.4 there is a new options in
For example in SIP protocol just TLSv1 must be used and never SSLvX, so when my EM based SIP server initiates a TLS connection I set Anyhow, the point here is that this is a real issue, a real feature, a real need, but will be ignored in EM. |
I am aware of EM-LE, however I do not agree with a lot of the changes you did in it. For instance, this ssh_version feature you just described, you use a conditional that explicitly specifies the protocol, whereas, We'd just specify a hash of allowed/disallowed protocol versions, i.e. To enable this functionality, all we'd need to do is pass an extra param, which would default to instead of doing all of this |
@archseer you don't agree "with a lot of changes in EM-LE"? Could you please explain a bit more which ones (a part from this one)? I like your solution a lot and will try to implement it in EM-LE when I get some spare time: ibc#15 Anyhow, regardless how this is implemented, an extra option is needed for Thanks a lot. |
Hi. Thanks. |
Thanks ibc ...but this is for the eventmachine-le? :) Is there a way to do this in the "normal" 1.0.3 |
Well, the code you quote above is not in "normal" eventmachine. In fact, in "normal" eventmachine there is nothing interesting and new since years because developers ignore everything (including IPv6 patches that make eventmachine to properly work in IPv6 networks). And that is why EventMachine-LE does exist. Now my question is: why do you think that EM-LE is not valid for you? |
I just wanted to test something with the already installed version. |
I'm pretty sure the project README explains very clear how to use eventmachine-le instead of eventmachine in any project ;) |
Thank's a lot :) and i only have to replace
and what happens to things like |
I'm the author of em-udns so I am very sure it works with eventmachine-le ;) Yes, your steps are the correct ones. Basically calling NOTE: Be sure that you DO NOT load any gem or Ruby library that calls to |
hm... another question... are these the original, but extendet eventmachine files in "le" version? can i just replace the old ones? |
Ha. Nice!... working. Thank's again :) |
Hi, please open an issue in eventmachine-le Github project, and let's continue there ;) BTW: Have you installed eventmachine-le? And I don't fully understand your second question. |
Yes, i installed it.... did not work in the beginning, but now it does. ... :) |
@fabiokung let's talk about this in ibc#15 please |
Closing in favor of PR #570 |
Ok, I re-read some of the linked issues, and the changes in eventmachine-le aren't necessarily a final resolution to all of the concerns. Reopening, will need to come back to this and do some more work. @archseer I think your suggestion of the enable / disable option list is the best one. In particular, SSL is basically dead now, since BEAST and POODLE. So we'll need something like this: Apache (enable all, opt-out of some)
nginx (disable all, opt-in to some)
|
Thanks @fabiokung I will follow up on your PR! |
Superseded by #654 |
Hi, eventmachine uses SSLv23 when start_tls() is used. This means that there is no way to tell EM to use TLSv1.
I've added a new option
:use_tls
for thestart_tls()
method which lets the user to choose TLS (by setting it to true) instead of SSL. It's tested and works.It's implemented in EventMachine-LE:
ibc@9829618
(of course I do know that this GOOD suggestion will be totally ignored by EM developers).
The text was updated successfully, but these errors were encountered: