2014-10-17 68 views
1

有没有办法阻止Thin接受使用SSLv3的请求?如何在Thin中禁用SSLv3?

我无法找到任何有关如何处理使用SSL运行瘦服务器的Poodle的资源。如果我不需要这么做,那么我不想在nginx后面放松,所以任何资源都会有所帮助。我看了一下源代码,但找不到一个猴子补丁的方法,甚至找不到对它的引用。

回答

2

瘦使用eventmachine,所以解决方案涉及使eventmachine不使用SSLv2或v3。

这个讨论有一个通用的补丁一些见解 https://github.com/eventmachine/eventmachine/issues/359

另一种选择是用一个补丁来构建EventMachine的禁用 (https://github.com/eventmachine/eventmachine/wiki/Building-EventMachine) 然后

--- a/ext/ssl.cpp 
+++ b/ext/ssl.cpp 
@@ -145,7 +145,7 @@ SslContext_t::SslContext_t (bool is_server, const string &privkeyfile, const str 
     } 

     bIsServer = is_server; 
-  pCtx = SSL_CTX_new (is_server ? SSLv23_server_method() : SSLv23_client_method()); 
+  pCtx = SSL_CTX_new (is_server ? TLSv1_server_method() : TLSv1_client_method()); 
     if (!pCtx) 
       throw std::runtime_error ("no SSL context"); 

我的避风港补丁”吨能够得到充分测试,但这个命令应该失败:

openssl s_client -connect 127.0.0.1:3000 -ssl3