Я пытаюсь создать и предоставить новый экземпляр EC2 с помощью ножа, но продолжаю сталкиваться с ошибкой SSL:
$bundle exec knife ec2 server create
ERROR: Excon::Errors::SocketError: hostname "ec2.us-east-1b.amazonaws.com" does not match the server certificate (OpenSSL::SSL::SSLError)
Я запускаю это с Mac (10.7), используя ruby 2.0.0p0:
$ruby -v
ruby 2.0.0p0 (2013-02-24 revision 39474) [x86_64-darwin11.4.2]
Я совершенно уверен, что правильно скомпилировал ruby с поддержкой openssl. Запуск require 'openssl'
из irb возвращает true. Я использую OpenSSL 1.0.1e, установленный через homebrew.
Я также пробовал бегущий нож с рубином 1.9.3-p194. Это имеет тот же результат, но с чуть менее полезным сообщением об ошибке: «ОШИБКА: Excon::Errors::SocketError: имя хоста не соответствует сертификату сервера (OpenSSL::SSL::SSLError)». Эта разница является результатом этого запроса на вытягивание, который улучшил сообщение об ошибке: https://github.com/ruby/ruby/pull/122.
Следующий вывод из curl может иметь значение:
$curl -v https://ec2.us-east-1b.amazonaws.com
* About to connect() to ec2.us-east-1b.amazonaws.com port 443 (#0)
* Trying 67.215.65.132... connected
* Connected to ec2.us-east-1b.amazonaws.com (67.215.65.132) port 443 (#0)
* SSLv3, TLS handshake, Client hello (1):
* SSLv3, TLS handshake, Server hello (2):
* SSLv3, TLS handshake, CERT (11):
* SSLv3, TLS handshake, Server finished (14):
* SSLv3, TLS handshake, Client key exchange (16):
* SSLv3, TLS change cipher, Client hello (1):
* SSLv3, TLS handshake, Finished (20):
* SSLv3, TLS change cipher, Client hello (1):
* SSLv3, TLS handshake, Finished (20):
* SSL connection using AES256-SHA
* Server certificate:
* subject: serialNumber=UoFmxu6ta5ecJiIs4su2w-q-u8rxJ/d3; OU=GT55236522; OU=See www.rapidssl.com/resources/cps (c)12; OU=Domain Control Validated - RapidSSL(R); CN=*.opendns.com
* start date: 2012-08-23 10:11:50 GMT
* expire date: 2014-09-25 12:42:00 GMT
* subjectAltName does not match ec2.us-east-1b.amazonaws.com
* Closing connection #0
* SSLv3, TLS alert, Client hello (1):
* SSL peer certificate or SSH remote key was not OK
curl: (51) SSL peer certificate or SSH remote key was not OK
Есть ли что-то еще, что мне нужно настроить, чтобы успешно создать экземпляр EC2 с ножом?