Use this script to automate the setup of a live-stream server on Ubuntu 22.04

What the script does, is build a decent live-stream server for you, from scratch, on a machine running on Ubuntu 22.04. The live-stream server will be fully configured and work out-of-the-box, with an RTMP entry to send your stream to, Adaptive bitrate streaming for the viewers in HLS and/or DASH formats. A webpage with a very basic video player is also included, and a simple /stat page can be used to display some data on the live-streams. To top it all off, I included a couple of pointers that will help you on your way in this environment.

Build a Nginx/Ffmpeg adaptive bit rate HLS live-stream server on Ubuntu 22.04

This tutorial is an updated and improved version of a previous tutorial that I wrote. This new tutorial will work 100% on a (fresh) Ubuntu 22.04 system. The tutorial was put together in August 2023. UPDATE: I’ve put together a script that does everything automatically. Check it out here! All throughout this tutorial, I will be using the non-existing domain name: your.hostname.com as an example. You will need to replace …

Really long introduction for a new tutorial

This post is the full introduction that goes together with a new tutorial that I’m posting shortly after this. Initially, this intro was included in the tutorial, until I made it a bit too long by rambling on. I realize this is a long, and perhaps too long post, but it does contain some useful information for anybody who is contemplating building their own live-stream server. If you’re not, you …

Block countries based on Geo data with UFW firewall

I while ago, I wrote this post about how to block all network traffic from-and-to certain countries using UFW firewall based on recent Geo data. The statistics of this website show that this post is still one of the most popular posts here. Many people found their way here through Google searches like: UFW, Geo and Block. If you happen to be one of these people, welcome! You came to …

Important update notice on a very popular post on this website.

My post on how to create a secure adaptive bit-rate HLS stream with Nginx/RTMP/Ffmpeg on Ubuntu 20.04 is by far the most popular content on my website. About 60% of all visitors come to that page through Google. I have an essential message to everybody who followed this tutorial. You should really edit a couple of lines in your nginx.conf in case you are using adaptive bit rate streams, sooner …

Harden Nginx for WordPress websites

Nginx is the most popular web server alongside of Apache. Personally, I am a huge fan of Nginx. One important reason for this is that Nginx can easily be setup to become a live-stream server. Also, it makes a great reverse proxy that can greatly improve the performance of any website when properly set up. But it can, of course, also host websites. One of the most popular engines to …

The god(s) of data-storage

I seem to have somehow upset the god(s) of data storage. It feels like I’m being punished, or at least challenged by them as of recently. Specifically the last three months. It feels like this for me because hard drives have been failing to the left and to the right of me, and even directly in front of me. And all within a crazy short amount of time. This is …

Create a secure adaptive bit-rate HLS stream with Nginx/RTMP/Ffmpeg on Ubuntu 20.04 (2021)

6-8-2023 UPDATE: I wrote a new tutorial, suited for Ubuntu 22.04. Go to the new tutorial. 24-07-2023 UPDATE: Before you read/follow this tutorial, I want to inform you of something important. In case you follow this tutorial, there’s a big chance you won’t be able to get the adaptive streams to work correctly. I don’t know exactly why or what has changed, but I believe the audio codec is no …

Ant Media Server on Ubuntu 18.04

This short guide will show you how to install Ant Media Server (Community Edition) on a Ubuntu 18.04 VPS server. Ant Media Server is a fork of Red5. The community Edition is free, but it does have it’s limitations that can be unlocked by purchasing a license. It runs on Java so we’re also installing that on our server. The server that I used in this example has Nginx installed …

Fix the Nginx module in Webmin (Ubuntu 18.04)

For a long time now, the Nginx plugin that exists for Webmin did not work after installing it on Ubuntu/Debian. I never got around to figure out how to fix this but today I did. Here’s how to fix the Nginx plugin in Webmin on a Ubuntu server. Now in all honesty I have no idea what step of all the steps below did the trick of actually getting it …

Block all traffic from a Geo-located country with UFW firewall on Ubuntu

Update 30-7-2023 – This post is a bit old. I have written a new article on the subject. Check it out here: https://www.ustoopia.nl/featured/block-countries-based-on-geo-data-with-ufw-firewall/ I was noticing some really strange requests in my web server’s log files on a VPS that I manage. Requests that seem to be focused on finding vulnerabilities or exploits. Turns out, most of the originating IP addresses are from China. Since the VPS is not behind …

Configuring DNS-Over-HTTPS on RaspberryPi running Pi-Hole

In this article I will show you all the steps you will need to set up DNS-over-HTTPS to Cloudflared on a Raspberry Pi that’s running Pi-Hole on RaspBian Stretch OS. This is called an Argo Tunnel. Now you might think to yourself; What does all this even mean? Let me explain… A Raspberry Pi is a really cheap tiny computer that has very low power consumption. These tiny computers costs …

How to setup Nginx+RTMP live stream server

IMPORTANT UPDATE! These guides may be outdated. Please see the new guide here: https://www.ustoopia.nl/featured/nginx-rtmp-hls-ssl-videojs-on-ubuntu-18-04/ I made a couple of Youtube video’s with some instructions on how to setup your own private live-stream server using Nginx running on Ubuntu 18.04. . Click on the CONTINUE READING link below to see a copy of the variables that I used in the video’s. You can also find it on my Pastebin if you …

Elon Musk speaks with Joe Rogan podcast

Joe Rogan’s podcast from last Thursday where he speaks with Elon Musk has gotten a lot of attention the last couple of days. Mostly because Elon smokes a joint with Joe. I personally don’t think that’s a big deal and I know that this happens regularly on Joe’s podcasts so I don’t see what all the fuss is about. What I find far more interesting is the talk itself, because …

Gutenberg is coming to WordPress! Soon!

Gutenberg is a feature that has been under development for a while now, will be released with version 5 of WordPress in the very near future. Until that time, it can be installed as a WP Plugin if you wanna try it out. I’m pretty exited about this cause it looks pretty awesome to me. The designers are already thinking ahead and here is how they see the future of …

Google Assistant for Android

If you are an Android user, you will probably have found a new app called Google Assistant on your mobile recently. It took them long enough! I read an article that said all Android users would receive the app in the next couple of days when living in the Netherlands. I waited for a while, and then a bit, and in the end I waited well over a week, when …

Digital LSD

Have you ever used a hallucinogenic drug in your life? If so, then the following video might put a smile on your face because this “digital LSD” really works. See for yourself. But this experiment is perhaps even more fun for people who have never used any hallucinogenics, but are perhaps a bit curious to find out what the effects are a bit. But no worries, you won’t have to …

Client setup for OpenVPN on Raspbian

In my previous post I explained how to setup an OpenVPN server on Raspbian (April 2018 release) on any model Raspberry Pi. Here’s how to setup the client certificates that you can import in your OpenVPN client app on your desktop or mobile. All these commands are to be entered in the console as root user. cd /etc/openvpn/certs source ./vars ./build-key client mkdir /etc/openvpn/client cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn/client/client.ovpn Edit the client …

OpenVPN on Raspbian (Raspberry Pi)

This weekend I heard a friend say that he wants to turn his Raspberry Pi into a VPN server. Since I still had an old Raspberry Pi laying around I decided to install the latest version of Raspbian on it (April 2018 release) and also install OpenVPN on it, record how I did this, and show my friend how he can easily do the same on his Raspberry Pi. I …