Скручивание на томатном USB - проблема SSL CA
Я установил optware, и у меня есть curl. Я пытаюсь заставить его уведомлять меня (через pushover), когда маршрутизатор перезагружается.
curl \
-F "token=<token goes here>" \
-F "user=<user key goes here>" \
-F "message=ASUS Router WAN Up" \
https://api.pushover.net/1/messages
Это маршрутизатор Asus RT-N16 с микропрограммой Tomato 1.28.0000 MIPSR2-097 K26 USB Mega-VPN
Сообщение об ошибке указывает, что это проблема с установленным центром сертификации:
url: (60) SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
More details here: http://curl.haxx.se/docs/sslcerts.html
curl performs SSL certificate verification by default, using a "bundle"
of Certificate Authority (CA) public keys (CA certs). If the default
bundle file isn't adequate, you can specify an alternate file
using the --cacert option.
If this HTTPS server uses a certificate signed by a CA represented in
the bundle, the certificate verification probably failed due to a
problem with the certificate (it might be expired, or the name might
not match the domain name in the URL).
If you'd like to turn off curl's verification of the certificate, use
the -k (or --insecure) option.
Итак, каков рекомендуемый способ установки пакета CA? Или я должен просто идти небезопасно (-k работает)?
1 ответ
Решение
Если вы действительно прочитаете URL-адрес в сообщении об ошибке, он объяснит, почему это произошло, и каковы ваши варианты. В итоге у вас есть два варианта:
- Отключите проверку сертификата, что означает, что cURL не будет проверять, что вы подключаетесь к нужному серверу, и вы можете подвергнуться атаке MITM. Это, вероятно, хорошо в этом случае, поэтому укажите
--insecure
возможность отключить проверку. - Установите набор сертификатов CA для cURL, чтобы доверять. Если Tomato не предоставляет пакет, вы можете загрузить пакет CA с веб-сайта cURL (который только что конвертирован из набора Mozilla). хранить
cacert.pem
где-то в системе и указать CURL на это с--cacert
вариант.