Icecast 2 и SSL

Я пытаюсь заставить работать icecast 2 и мой letsencrypt SSL без удачи. Пока что я сделал, это построил icecast 2 с поддержкой openssl, и я также запустил его, но он всегда выдает следующую ошибку в файле журнала.

[2018-03-15  12:48:21] WARN connection/get_ssl_certificate Invalid private key file /usr/local/icecast/share/fullchain.pem
[2018-03-15  12:48:21] INFO connection/get_ssl_certificate No SSL capability on any configured ports

Я установил эти файлы сертификата для чтения пользователем: richard и, конечно, я также запускаю сам сервер с пользователем richard.

Может быть, у вас есть идеи, что не так?

Вы также можете увидеть мой конфигурационный файл здесь:

  <listen-socket>
        <port>8443</port>
        <ssl>1</ssl>
  </listen-socket>

В разделе пути я установил часть SSL-сертификата для SSL.

 <ssl-certificate>/usr/local/icecast/share/icecast/fullchain.pem</ssl-certificate>

Пока ничего. Сам сервер запускается на порту, однако при посещении его через https:// он просто не загружается. с http:// порт (8443) работает нормально.

Любая помощь ценится.

3 ответа

Решение

Для получения полного сертификата Icecast2 вы можете использовать команду:

      cat /etc/letsencrypt/live/domain.com/fullcert.pem /etc/letsencrypt/live/domain.com/privkey.pem > /etc/icecast2/bundle.pem

Это объединит и сохранит оба сертификата в один файл с именем bundle.pem в папке icecast2, на который вы можете указать конфигурацию icecast2.

Я также нашел это очень полезное и полное руководство для справки: https://mediarealm.com.au/articles/icecast-https-ssl-setup-lets-encrypt/

Собственно, я решил проблему сам.

Проблема была в SSL, а не в настройках. Кажется, что сгенерированный SSL LetsEncrypt (fullchain.pem) работает неправильно. Поэтому вместо того, чтобы использовать это, я скопировал содержимое из cert.pem и privkey.pem и создал новый файл с именем icecast.pem и вставил оба в один. (сначала сертификат, а затем привки) и теперь все работает нормально и безопасно!

Я гений!!!

Есть еще один способ — пробросить Nginx, конфигурация которого распространена в интернете. Так что сервер выставляет только порты 80 и 443 для http web. Затем используйте letsencrypt для SSL Nginx.

Другие вопросы по тегам