Самозаверяющий сертификат выдает ошибку «x509: сертификат, подписанный неизвестным центром»

Спасибо Джозефу за его ответ. Возможно, это работало во время его сообщения, но мне пришлось добавить -o сразу после spectrogram, чтобы sox принял команду.

for file in *.flac;do
    outfile="${file%.*}.png"
    sox "$file" -n spectrogram -o "$outfile"
done

Я буду складывать их все в отдельную папку для архивирования. It works!

Можно даже пойти немного дальше, добавив название файла над спектрограммой внутри изображения и сделав его немного шире, чтобы было видно больше деталей. Изображение по умолчанию немного маловато для меня.

for file in *.flac;do
    outfile="${file%.*}.png"
    title_in_pic="${file%.*}"
    sox "$file" -n spectrogram -t "$title_in_pic" -o "$outfile" -x 2000
done

1
14.04.2018, 15:29
2 ответа

Можете ли вы попробовать обходной путь с помощью -tls-skip-verify, который должен устранить ошибку. Однако это только темп. исправление :попробуйте решить проблему, перезапустив экземпляр openSSL -, установив новый сертификат и/или перезагрузив сервер.

0
27.01.2020, 23:43

Ответ Сэма может заставить вас работать, но НЕ является хорошей идеей для производства. Для ясности я попытаюсь объяснить, почему вы получаете это.

НЕдостаточно создать набор ключей шифрования, используемых для подписи сертификатов. Любой, и вы только что это сделали, может сделать это. Вот почему существуют «Доверенные центры сертификации». Это объекты, которые известны и которым доверяют. Реализация ssl поставляется со списком органов власти и их открытыми ключами для проверки того, что сертификаты, якобы подписанные ими, на самом деле принадлежат им, а не кому-то другому, выдающему себя за них..

Таким образом, когда вы создаете свой собственный, любая реализация ssl увидит, что действительно сертификат подписан вами, но они не знают, что вам можно доверять, поэтому, если вы не добавите центр сертификации CA ()в список из доверенных он откажется от него. SSL предназначен не только для шифрования сообщений, но и для проверки того, что человек, с которым вы разговариваете, или человек, который что-то криптографически подписал, ЯВЛЯЕТСЯ тем, за кого себя выдает.

НЕ рекомендуется массово «пропускать», «обходить» или что-то еще, кроме проверки в производственной среде, поскольку она будет принимать сертификаты от кого угодно, делая вас уязвимыми для олицетворения или атак «злоумышленник посередине».

Ваша проблема связана НЕ с созданием сертификата, а с настройкой вашего ssl-клиента. Он очень четко сказал вам, что отказывается подключаться, потому что не знает, с кем разговаривает. (это хорошо)

Вы должны настроить свой центр сертификации как доверенный на клиентах. Это зависит от вашей настройки, поэтому вам нужна дополнительная информация, чтобы помочь вам в этом. Это еще один вопрос, который пытаются решить эту проблему :

.

Добавление самоподписанного сертификата в список доверенных

Добавить самоподписанный сертификат в Ubuntu для использования с curl

Обратите внимание, что это будет работать ТОЛЬКО для вас,если у вас есть сторонние клиенты, которые будут говорить, все они откажутся от вашего сертификата по одной и той же причине и должны будут внести одни и те же корректировки. Вот почему доверенные центры сертификации продают услуги подписи сертификатов для приложений/серверов и т. д., потому что они уже есть в списке и им доверяют для проверки того, кто вы есть. Поэтому, если вы заплатите им за это, полученному сертификату будут доверять все.:)

ссылка"https://en.wikipedia.org/wiki/Certificate_authority

2
27.01.2020, 23:43

Теги

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