недопустимый SSL_version, указанный в/usr/share/perl5/IO/Socket/SSL.pm строке 332

Существует несколько утилит ping, доступных на Linux, даже на Ubuntu. По умолчанию (единственный в основной Ubuntu) от iputils (iputils-ping). Возможные статусы возврата (для также ping или сопутствующая утилита IPv6 ping6), с iputils 20100418:

  • 0, если Вы передаете -V опция.
  • 255, если ping не может отбросить полномочия (этого не должно происходить).
  • 1, если ошибка происходит при парсинге подчиненного имени с ping6 -N.
  • Или 0 или 1 в случае нормального выхода:
    • 1, если никакой ответ никогда не получался.
    • 1, если Вы устанавливаете крайний срок с -w или -W опция и количество полученных ответов были меньшими, чем количество отправленных запросов.
    • 0 иначе, т.е. если был крайний срок и все ожидаемые ответы, были получены, или если не было никакого крайнего срока, и по крайней мере один ответ был получен.
  • 2 во всех других случаях.

Если необходимо сделать более прекрасные различия, необходимо будет проанализировать вывод. Утилита использует stderr для фатальных ошибок и некоторых предупреждений и stdout для различных отчетов о состоянии и информационных сообщений. Эти сообщения предназначены для потребления человеком, не ожидайте быть легко анализировать их, ожидать должными быть обновлять Ваш синтаксический анализатор каждый раз, когда версия выходит, или Вы хотите работать над другой платформой и не забыть устанавливать LC_MESSAGES=C в случае, если ping когда-либо переводится (это в настоящее время не). Существует очень немного случаев использования, которые требуют парсинга вывода — обычно все, что необходимо знать, 2 = отказавший поиск DNS, 1 = хост, не отвечающий, 0 = успех.

9
29.10.2012, 21:35
7 ответов

На веб-сайте средства отслеживания ошибки Debian существует отчет об ошибках: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=679911

Это также указывает обходное решение:

указать -o tls=no как опция на командной строке.

Спасибо @Manolo Díaz на debian.org.

8
27.01.2020, 20:05
  • 1
    как обходное решение, это прекрасно, но фиксация необходима. –  Znik 21.03.2017, 15:43

Также обходное решение, сделайте это, если оно требуется, чтобы отправлять от smtp.gmail.com:

/usr/bin/sendemail on line 1907: 'SSLv3 TLSv1' => 'SSLv3' 

как временное решение.

2
27.01.2020, 20:05
if (! IO::Socket::SSL->start_SSL($SERVER, SSL_version => 'SSLv3')) {<br>

продолжает работать debian хрипящий с sendEmail 1.56-2 и libio-socket-ssl-perl 1.76-2 и

if (! IO::Socket::SSL->start_SSL($SERVER, SSL_version => 'SSLv23:!SSLv2')) {<br>

работы с …/IO/Socket/SSL.pm: 1.74 sendEmail: 1.56 в Ubuntu.

Это было проблемой в человечности и debian repos больше года.

0
27.01.2020, 20:05

Более легкое обходное решение:

Замена:

m{^(!?)(?:(SSL(?:v2|v3|v23|v2/3))|(TLSv1[12]?))$}i

С:

m{^(!?)(?:(SSL(?:v2|v3|v23|v2/3))|(TLSv1[12]?))}i
3
27.01.2020, 20:05
  • 1
    Моя проблема состоит в том, что эта фиксация повреждает Сеть:: Твиттер –  Dave Jacoby 19.11.2014, 18:40
  • 2
    1690/usr/share/perl5/IO/Socket/SSL.pm в Ubuntu 14.04 –  Rahul Patil 15.01.2015, 09:08
  • 3
    Так как некоторые люди все еще рассматривают обходное решение в этом ответе как фиксация и жалуются на ошибку в IO:: Сокет:: SSL: проблема не находится в IO:: Сокет:: SSL, но является ошибкой в sendEmail, который не сохраняется с 2009. Подробно: синтаксис для SSL_version является неправильным и даже не был допустимым в то время, когда код был написан, только IO:: Сокет:: SSL не жаловался затем. Фиксация должна только удалить установку SSL_version от sendemail. См. также rt.cpan.org/Public/Bug/Display.html?id=77401. –  Steffen Ullrich 06.09.2015, 09:23

Фактически, просто возьмите значение по умолчанию (удалите второй параметр). См. https://metacpan.org/pod/IO::Socket::SSL (поиск SSL_version). По умолчанию используется SSLv23:! SSLv3:! SSLv2.

Я изменил строку 1906 в версии 1.56, чтобы читать

#        if (! IO::Socket::SSL->start_SSL($SERVER, SSL_version => 'SSLv3 TLSv1')) {
    if (! IO::Socket::SSL->start_SSL($SERVER)) {

(просто комментируя исходную строку)

4
27.01.2020, 20:05

Чтобы исправить это, я отредактировал Sendremail-V1.55 в строке 1884, чтобы изменить «SSLV3 TLSV1» на «SSLV3».

osx 10.10.1

0
27.01.2020, 20:05

Если вы все еще получаете ошибку сертификата после исправления версии SSL, как показано выше , вам необходимо отключить проверку сертификатов:

if (! IO::Socket::SSL->start_SSL($SERVER, SSL_version => 'SSLv23:!SSLv2', SSL_verify_mode => 0)) {
2
27.01.2020, 20:05

Теги

Похожие вопросы