The recent changes in Google Chrome (version 128) affect WHEP-based streams and need to be updated Red5 Pro
to the latest version. Our server running Red5 Pro, initially installed on AWS Ubuntu 16.04, must now be upgraded to Ubuntu 20.04 or later due to these Chrome updates. However, updating multiple major versions of the operating system can be a challenge, especially when using a cloud instance. This guide provides detailed steps for reinstalling Red5 Pro, setting up SSL certificates, and configuring the Tomcat server to ensure secure streaming functionality.
Behind the Story
With the recent Chrome update (After v28) the previous Red5 Pro become obsolete and need to update the server with the latest patch. However, our previous Red5 Pro was installed over 4 years ago on a Ubuntu 16.04 server.
According to the Red5 Pro,
The upcoming Google Chrome version 128, set to release on August 14th, introduces changes that will impact WHEP-based streams. To ensure continued functionality, you must upgrade your Red5 server installation to the latest version (12.5 or later) before this date.
Turns out, to update the latest version of the Red5 Pro, we will need the newest version of the server, Ubuntu 20.04 or later. Additionally, we will require a new version of Java.
Ultimately the update of 3 major versions of OS is not feasible when it comes to the cloud instance. So we decided to reinstall the Red5 Pro on a new server.
Challenges
For the latest patch of the Red5 Pro, the documentation recommended Ubuntu 22.04 for the latest versions. The Red5 Pro installer also recommends the same version. But the technical documentation pushing for Ubuntu 20.04 only. Finally, we can see, that Ubuntu 22.04 works fine.
Another complexity is, that this requires an orchestration of the entire server setup. That includes the provision of a server, imposing security, enabling the SSL certificates for the Tomcat server and the list goes on.
Server Setup
A complete guide for setting up the server can be found here. The server’s memory and computations should be based on your application usage.
Install Red5 Pro
A few ways are there to install the Red5 Pro in the server. Among them, I always prefer the installer as it is straightforward and does a lot of automation behind the scenes. To have the installer in the server, either use the git CLI or the FTP file transfer.
Please keep in mind, that installation requires to login in the CLI to ensure you have the Red5 Pro license. This installation will already add Red5 Pro to the OS service, so you can start, restart, or stop the process with the name red5pro
. For instance, check status using sudo systemctl status red5pro
.
Now the Red5 Pro should be available and up and running in the HTTP 5080
port. But since, the site does not have the SSL Certificate
, the streaming functionalities will not work.
Setup SSL Cert
We will take 5 steps to install and update the Tomcat server. So the Red5 Pro will run on HTTPS
connections.
- Install
Let's Encrypt
- Generating Keystore
- Generating Truststore
- Get the wildcard certificate
- Run automation
Install Let's Encrypt
Let's Encrypt
is a free and easy tool for installing an SSL certificate. Using the snap package manager is the simplest way to install the Let’s Encrypt. To install the tool, do the following,
sudo snap install core
sudo snap install --classic certbot
You can find details in the Red5 Pro documentation.
After installation, get the certificate,
sudo certbot certonly --standalone --email yourname@example.com --agree-tos -d ssl.example.com
Code language: CSS (css)
Don’t forgot to replace yourname@example.com
with your actual email and ssl.example.com
with your preferred domain.
Generate Keystore
Follow the following link to generate the keystore. Make sure, you are using your own password and domain.
Generate Trust Store
For the SSL certificate, we will also be required to generate a trust store and follow this Red5 Pro official guideline to do so.
To verify Keystore and Truststore, run the following and it should display the Keystore and Truststore,
sudo ls /etc/letsencrypt/live/your_domain/
Verify Domain
To verify the domain, please make sure that port 80 is open. Also, you have access to the Route 53
or the other DNS
services you are using.
Run the following commands,
certbot certonly --manual --preferred-challenges=dns --email your_preffered_email --server https://acme-v02.api.letsencrypt.org/directory --agree-tos -d *.your_domain
Now be careful here. You may have to agree with the terms and conditions of the authority server. Then based on the instruction, have to put a TXT
record in the DNS
server. Until the TXT
record is propagated, do not move forward. A suggestion using the Google toolbox will be provided in the CLI to verify if the record is propagated. I suggest waiting a few more minutes after the successful propagation of the DNS
record.
Update Tomcat Server with New SSL Certificate
If you remember correctly, we were using a shell script to install the Red5 Pro
. Now, running that particular command will give us an option to install Let's Encrypt
, which can be used to configure the Tomcat
server. With the latest installer, the option resides at the number 6
. Running the automation should make the Red5 Pro
server available in the https
connection.
Conclusion
The article provides a step-by-step guide for installing Red5 Pro, configuring the server with SSL certificates using Let’s Encrypt, and automating the process to ensure secure, uninterrupted streaming services on the latest platform.
Check out blog posts from one of our developers on handling cache for Red5 Pro server and utilize Red5 Pro for mobile app.
Experience the iXora Solution difference as your trusted offshore software development partner. We’re here to empower your vision with dedicated, extended, and remote software development teams. Our agile processes and tailored software development services optimize your projects, ensuring efficiency and success. At iXora Solution, we thrive in a dynamic team culture and experience innovation in the field of custom-made software development.
Have specific project requirements? Personalized or customized software solutions! You can contact iXora Solution expert teams for any consultation or coordination from here. We are committed to maximizing your business growth with our expertise as a custom software development and offshore solutions provider. Let’s make your goals a reality.
Thanks for your patience!
Add a Comment