Tag: ssl

Chrome会在我的Rails应用上使用thin要求为SSL选择“证书”

我有一个配置为仅使用SSL的Rails应用程序。 我也有来自StartSSL的免费SSL证书。 我使用thin作为我的Web服务器使用此命令: thin start -p 80 & thin start -p 443 –ssl –ssl-key-file ./.ssl/sslkey.key –ssl-cert-file ./.ssl/sslcert.cert & 这在技术上有效 – 访问我的网站的http版本重定向到https版本。 但是,当我访问我的本地Keychain“选择证书”以validation服务器时,Chrome和Safari都会提示我。 这种行为是不可取的。 如何以不显示此对话框的方式设置瘦身SSL?

Ruby OpenSSL嵌套了asn1错误

我已经在这里发布了几个问题的建议,但无济于事。 我有以下文件:(注意,我在运行中生成这些文件,它们是一次性钥匙) 证书文件: —–BEGIN CERTIFICATE—– MIIE+jCCA+KgAwIBAgIJAMLMeL/HH75vMA0GCSqGSIb3DQEBBQUAMIGuMQswCQYD VQQGEwJVUzENMAsGA1UECBMEVXRhaDEXMBUGA1UEBxMOU2FsdCBMYWtlIENpdHkx HjAcBgNVBAoTFU5pY2hvbGFzIFRlcnJ5IGRvdGNvbTEUMBIGA1UECxMLZGV2ZWxv cG1lbnQxFjAUBgNVBAMTDW5pY2hvbGFzdGVycnkxKTAnBgkqhkiG9w0BCQEWGm5p Y2hvbGFzQG5pY2hvbGFzdGVycnkuY29tMB4XDTE0MTIyNTA3MTkxNFoXDTE1MTIy NTA3MTkxNFowga4xCzAJBgNVBAYTAlVTMQ0wCwYDVQQIEwRVdGFoMRcwFQYDVQQH Ew5TYWx0IExha2UgQ2l0eTEeMBwGA1UEChMVTmljaG9sYXMgVGVycnkgZG90Y29t MRQwEgYDVQQLEwtkZXZlbG9wbWVudDEWMBQGA1UEAxMNbmljaG9sYXN0ZXJyeTEp MCcGCSqGSIb3DQEJARYabmljaG9sYXNAbmljaG9sYXN0ZXJyeS5jb20wggEiMA0G CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDRA4sMOx8cn59h8xvE1EcwudGYgGID WixEEz+8UczLzoIovbZI//iExrwfM7edYRU/HyIufx+dvHj5bRABt5pOwgEiolDA XtIttxpsCX23gLg/40TQY2JXRv10JgxEQ3680ypghfAEXisOiIQGrT0W+k6WpIRo /+z4zh/UPqUmvV3ZnzG97jsFiQ0Nu8IKlByLWzoef+2MqG0GO95do3gCcBhAF3tm v+buNVi8DgJnYTnKKD5S1+KYRSkNNioRs3zE+/W0vCA0/kLiFjSjMq3bSuGJbHmt N/8+lodfZYh1HB6DRZoyfTynNDRHyKpPGqTvfp8U/E91kkpxusVSQFbrAgMBAAGj ggEXMIIBEzAdBgNVHQ4EFgQUPAm5VdPIPbdedLtCEmpivYi8xfkwgeMGA1UdIwSB 2zCB2IAUPAm5VdPIPbdedLtCEmpivYi8xfmhgbSkgbEwga4xCzAJBgNVBAYTAlVT MQ0wCwYDVQQIEwRVdGFoMRcwFQYDVQQHEw5TYWx0IExha2UgQ2l0eTEeMBwGA1UE ChMVTmljaG9sYXMgVGVycnkgZG90Y29tMRQwEgYDVQQLEwtkZXZlbG9wbWVudDEW MBQGA1UEAxMNbmljaG9sYXN0ZXJyeTEpMCcGCSqGSIb3DQEJARYabmljaG9sYXNA bmljaG9sYXN0ZXJyeS5jb22CCQDCzHi/xx++bzAMBgNVHRMEBTADAQH/MA0GCSqG SIb3DQEBBQUAA4IBAQBIGsrZaWDwW2UWzTT2tbMEPOFVVZFZiWNazJLXFrXO1deW 1Ggaa2+h3tE+dMincQp7KPDeEOZ4VeXjrwZ1UfmJm5qOWhwJ2HnSBHay22tKO24Y 1qDF/ygMqW3yyr10MWZJaxQeUn+cgpclesS8IiTUVF61pYpjI8DrETa8Hwd8QJkC YaB3qXOVWdbvJX3DTkYPDEqLkC0qzqibe8fWd0JFF5lDMAeCS5EgW+lu6M++dQve u5L6Y1Xh8SvRB8SnZdy30OKNf0RrWPgNq9donv8nWgEJEYl9A/XRhWvl6ZWpQLEK 6GbCprqUIFgnWBhp0fteIMcgXZUe/oGBQ3/Yovd+ —–END CERTIFICATE—– 私钥: —–BEGIN RSA PRIVATE KEY—– MIIEowIBAAKCAQEA0QOLDDsfHJ+fYfMbxNRHMLnRmIBiA1osRBM/vFHMy86CKL22 SP/4hMa8HzO3nWEVPx8iLn8fnbx4+W0QAbeaTsIBIqJQwF7SLbcabAl9t4C4P+NE 0GNiV0b9dCYMREN+vNMqYIXwBF4rDoiEBq09FvpOlqSEaP/s+M4f1D6lJr1d2Z8x ve47BYkNDbvCCpQci1s6Hn/tjKhtBjveXaN4AnAYQBd7Zr/m7jVYvA4CZ2E5yig+ UtfimEUpDTYqEbN8xPv1tLwgNP5C4hY0ozKt20rhiWx5rTf/PpaHX2WIdRweg0Wa Mn08pzQ0R8iqTxqk736fFPxPdZJKcbrFUkBW6wIDAQABAoIBAEFpWHTFc+EjW1/u EzywKm9nV97gHsxpxfywAXxQJUWLJVTWultyMDZtc6ZYKxiHr3yHo8zlX+GfgESf Cyleal5HfM93+MmbYy+HZC93cO6izAbCe2C0GayyvNNCrQgYD2vMsjBu+kSDq/nq Y1crlDjCsSGX7xBlN6ZN68wiptDOVa1aBL+H3kzHtarURVdKY1MXrscR760/o8Nh qA/9GA1PoHQ7ApNG8oLVPS9SU4JU3PfURCQTk8otYZ4GrScpSeYp9ISi/UODlF1M IY+B9Bfrf2Eftv8zP+eF1UbTeBmMq0boy+afZsugMqjN/FpUpxUALlRX96az+VY9 fDSuUPECgYEA9Vv8E4HBbnzPrzA6jyYNcSnkfzTcNxuYaIqTrxWSLi018u1kRa9Z zLyKFNZRg3+RTWKAqDLKkC/oZZARlPcpx8uzV1T+zrffrnf2aK1LDHUHEmsMj7PY 2DIhghO90BPGuWPpbHjmpr51hHH6+n/LcLN0EHQ2T9wh5HZY75qup9cCgYEA2hQL sE0+Bp2rFP2CMfl5SAhhtmjrTGg76mItMmGj/3ycZ6CxRw/5nSepau7nbCZXSK+i Pp/EutuUNcD9ZmyP7z7In2PdWP8X8OSjd9abUn3cRPz8IjSOkbuUMKYWnweUl5Qw […]

Rails 3.2 force_ssl除了登陆页面

我想在除登陆页面之外的所有路线上强制执行SSL。 我尝试在所有控制器中设置force_ssl,对于包含root的控制器,我做了: force_ssl:except =>:index 但是,在我将其部署到Heroku上的暂存应用程序后,我的应用程序仍然在主页上强制执行ssl。 是否有其他事情需要在特定路线上禁用ssl?

使用rubygem访问Shopify API时出现SSL_connect错误

我使用shopify_api gem访问Shopify API时遇到问题。 这是发生的事情: >> require “shopify_api” #=> false >> ShopifyAPI::Base.site = “https://username:secret@mysite.myshopify.com/admin” => “https://username:secret@mysite.myshopify.com/admin” >> products = ShopifyAPI::Product.find(:all) Errno::ECONNRESET: Connection reset by peer – SSL_connect from /Users/zubin/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/net/http.rb:799:in `connect’ from /Users/zubin/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/net/http.rb:799:in `block in connect’ from /Users/zubin/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/timeout.rb:54:in `timeout’ from /Users/zubin/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/timeout.rb:99:in `timeout’ from /Users/zubin/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/net/http.rb:799:in `connect’ from /Users/zubin/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/net/http.rb:755:in `do_start’ from /Users/zubin/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/net/http.rb:744:in `start’ from /Users/zubin/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/net/http.rb:1284:in `request’ from /Users/zubin/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/net/http.rb:1026:in `get’ […]

连接到Paypal时,OpenSSL :: SSL :: SSLError(SSL_connect返回= 1 errno = 0状态= SSLv3读取服务器证书B:证书validation失败)

我知道有很多关于这个错误的讨论,但很遗憾地说我无法在那里找到任何可行的解决方案。 我正在使用ShareTribe开发一个电子商务网站。我正在尝试将Paypal实现为支付网关 。所以我正在使用Activemerchant 。 在开发机器上一切正常,但是当我将rails应用程序部署到生产时它会抛出 OpenSSL :: SSL :: SSLError(SSL_connect返回= 1 errno = 0状态= SSLv3读取服务器证书B:证书validation失败) 我正在将我的Activemerchant初始化为 config.after_initialize do ActiveMerchant::Billing::Base.mode = :test paypal_options = { login: “bla bla”, password: “bla bla”, signature: “bla bla”, appid: “APP-80W284485P519543T” } ::EXPRESS_GATEWAY = ActiveMerchant::Billing::PaypalExpressGateway.new(paypal_options) end 添加了HTTPS和已禁用的SSLV3 经过大量的谷歌搜索,我发现了 SSLv3被certificate对POODLE漏洞不安全。 您应该确保您的系统具有最新版本的OpenSSL,以便您可以使用TLSv1.2。 所以我禁用了SSLV3,如下所示 openssl s_client -connect kickmarket.eu:443 CONNECTED(00000003) depth=0 OU = Domain Control […]

OpenSSL :: SSL :: SSLError:hostname与服务器证书不匹配

突然今天早上我的HTTP客户端(HTTParty)抛出了一个错误OpenSSL::SSL::SSLError: hostname does not match the server certificate 首先,我无法理解,今天我们几乎整天都在过去2年没有任何问题地拨打api电话 其次我不明白如何解决它,因为它是HTTParty内部的 我唯一知道的是我无法在ENV设置SSL_CERT_FILE ,但据说我已经在/etc/ssl/certs ( SSL_CERT_DIR )中列出了ROOT CA 在这里我的输出 irb(main):001:0> require “openssl” => true irb(main):002:0> puts OpenSSL::OPENSSL_VERSION OpenSSL 1.0.1 14 Mar 2012 => nil irb(main):003:0> puts “SSL_CERT_FILE: %s” % OpenSSL::X509::DEFAULT_CERT_FILE SSL_CERT_FILE: /usr/lib/ssl/cert.pem => nil irb(main):004:0> puts “SSL_CERT_DIR: %s” % OpenSSL::X509::DEFAULT_CERT_DIR SSL_CERT_DIR: /usr/lib/ssl/certs 最后,正如所说Openssl没有任何改变,代码明智的唯一的事情就是openssl版本引用HEARTBLEED漏洞的补丁 请注意,我们只修补openssl版本,但didnt recompile the RUBY可能是一个问题 […]

无法在Mac OS上安装任何ruby gems – SSL_connect错误

我的环境是Mac OS 10.10.5,ruby版本2.2.4(或2.2.2或2.2.0)gem(升级后)是2.6.7,rvm版本1.27.0。 即使在最近几天,这也有几个重复,但这比我在评论中提供的信息更多。 在任何版本的ruby上安装任何gem时,我得到以下内容: $ gem install bundler ERROR: Could not find a valid gem ‘bundler’ (>= 0), here is why: Unable to download data from https://rubygems.org/ – SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (https://api.rubygems.org/specs.4.8.gz) 有很多关于此的信息,特别是对于Windows上的问题。 有关建议的解决方案,请参见http://guides.rubygems.org/ssl-certificate-update/ 。 我遵循这个但我继续得到同样的错误。 问题似乎是将文件GlobalSignRootCA.pem放在适当的地方,这一点并不完全清楚。 上面的链接解释了如何找到合适的ssl_certs目录,其中有2个在我的系统中,但都没有工作。 我忘了在哪里学到了以下内容: $ ruby -ropenssl -e ‘puts OpenSSL::X509::DEFAULT_CERT_DIR’ /etc/openssl/certs […]

SSL_connect SYSCALL返回= 5 errno = 0 state = SSLv2 / v3读取服务器hello A.

我有一个ruby客户端,使用IMAP和SSL连接到Exchange服务器。 我使用Ruby Net :: IMAP库(它使用openssl)来连接。 它已经好几个月了。 交换服务器管理员从godaddy安装了新的证书,现在我收到此错误: SSL_connect SYSCALL returned=5 errno=0 state=SSLv2/v3 read server hello A 有谁知道这个错误意味着什么? (我试过谷歌搜索) 我怀疑新证书存在问题导致此问题,但我不知道如何排除故障。 另外我知道你可以在使用NET:HTTP时禁用证书validation: http.verify_mode = OpenSSL::SSL::VERIFY_NONE if http.use_ssl? 但我无法弄清楚如何使用NET:IMAP。 我想禁用它以查看这是否是问题。 至于代码我使用:我使用这个(或非常接近这个) http://github.com/look/fetcher/blob/master/lib/fetcher/imap.rb 我尝试更改为:@connection = Net :: IMAP.new(@ server,@ port,@ sss,nil,false) 这是堆栈跟踪 checking emails on: Tue Aug 17 20:48:01 +0000 2010 rake aborted! SSL_connect SYSCALL returned=5 errno=0 state=SSLv2/v3 read […]

配置WEBrick以使用自动生成的自签名SSL / HTTPS证书

我想用SSL / HTTPS在本地开发我的Ruby on Rails应用程序,但是我在设置服务器以使用SSL时遇到了麻烦。 以下是我到目前为止已经尝试过的事情: rails server [options] rails server命令没有附带ssl选项( rails server –help ): Usage: rails server [mongrel, thin, etc] [options] -p, –port=port Runs Rails on the specified port. Default: 3000 -b, –binding=ip Binds Rails to the specified ip. Default: 0.0.0.0 -c, –config=file Use custom rackup configuration file -d, –daemon Make server run as […]

获取Rails URL帮助程序以自动输出https URL

我正在开发一个混合了http和https的网站 – 最简单/最简单的方法是让链接使用正确的路由协议 – 是否可以在路由文件中指定? 假设我在Rails 3中有以下路由。 匹配“/ test”=>“test #index”,:as =>:test,:constraints => {:protocol =>’https’} 如果我在http页面上,并且我使用test_url() ,它将输出http://domain.com/test 。 我想改为https://domain.com/test 。 我知道我可以使用test_url(:secure => true) ,但这是重复的逻辑。 我知道我可以http://domain.com/test到https://domain.com/test ,但这是一个额外的重定向,加上它在表单post上失败了。 想法?