Steamcast 1.1.0 Beta

Steamcast is a stand alone server that combines the features of SHOUTcast and Icecast2 and more to make one mega awesome server.
Post Reply
User avatar
Max
Posts: 143
Joined: Fri Oct 21, 2011 1:39 am

Steamcast 1.1.0 Beta

Post by Max »

Hi,

We are pleased to announce Steamcast 1.1.0 Beta. This beta is mainly focused on providing SSL capabilities to Steamcast as the wider internet has moved towards SSL being a requirement of continued connectivity.

Right now this beta provides the ability to specify a folder to be used when serving ACME .well-known requests. A way to specify the location of generated certificate. Which port to listen for SSL connections on. And configuration about acceptable TLS versions, and cipher suites.

To enable SSL features you must first specify where Steamcast should look for the .well-known files that the ACME client of your choosing will make. For those with purchased SSL certificates you can skip to step 4.
  1. In steamcast.conf:

    Code: Select all

    ACMEWebRoot=/home/dev/steamcast/webroot
    
  2. Reload your Steamcast configuration (by typing "r" then enter in the Steamcast window).
  3. In the command line for your operating system, run the command to generate your certificate. Here we are using acme.sh in this example.

    Code: Select all

    acme.sh --issue -d example.com -w /home/dev/steamcast/webroot
    
  4. In steamcast.conf, we need to specify where the generated certificate is, and also to start listening for TLS connections on port 443.

    Code: Select all

    ListenTLS=443
    CertificateFile1=/home/dev/.acme.sh/example.com/fullchain.cer
    CertificateKey1=/home/dev/.acme.sh/example.com/example.com.key
    
  5. Restart Steamcast so that it can start listening on which ever port you specified in ListenTLS.
Default configuration for TLS settings.

Code: Select all

TLSOptions=
TLSCipherList=[ECDHE-ECDSA-AES128-GCM-SHA256|ECDHE-ECDSA-CHACHA20-POLY1305|ECDHE-RSA-AES128-GCM-SHA256|ECDHE-RSA-CHACHA20-POLY1305]:ECDHE+AES128:RSA+AES128:ECDHE+AES256:RSA+AES256:ECDHE+3DES:RSA+3DES
The possible options for TLSOptions. By default only TLS 1.2 and 1.3 are enabled. SSL Compression is disabled. And server cipher suite order preference is enabled. A + enables an option, a - disables it, below is all possible options combined.

Code: Select all

TLSOptions=+tlsv1+tlsv1.1-tlsv1.2-tlsv1.3+comp-sorder
Known issues:
  • Steamcast may crash on certificate change (such as when renewing the certificate when it is nearing expiring).
  • We need to implement a method of telling Steamcast to reload certificates that can be triggered by the ACME clients.
  • There maybe form submission issues in the Admin Web Panel when operating under a TLS connection.
On Linux you will need libatomic.

Code: Select all

apt-get install libatomic1
Please let us know below if you find any other bugs.
Attachments
Steamcast-ARM71-master-18e2f031.zip
Steamcast 1.1.0 Beta for ARM7 (built on a Raspberry Pi).
(1.94 MiB) Downloaded 125 times
Steamcast-Windows-master-18e2f031.zip
Steamcast 1.1.0 Beta for Windows x64 (built on Win10, VC2019).
(1.94 MiB) Downloaded 22 times
Steamcast-Linux64-master-18e2f031.zip
Steamcast 1.1.0 Beta for Linux x64 (built on CentOS 7).
(2.22 MiB) Downloaded 21 times
Post Reply