Complete Guide to Monitoring TCP Ports and Services with Uptime Kuma

Last update: 02/09/2026

  • Uptime Kuma is an open source, self-hosted alternative that allows you to monitor the availability of web services, TCP ports, and Docker containers.
  • The system offers a massive notification ecosystem integrated with over 90 services such as Telegram, Discord, and Slack.
  • It allows the creation of public status pages to inform users about the operation of the infrastructure without exposing sensitive data.

How to monitor a TCP port with Uptime Kuma

How to monitor a TCP port with Uptime Kuma? Imagine waking up at three in the morning because a critical service at your company has crashed, or worse, finding out days later because an angry customer emailed you. For anyone managing a server, whether it's a NAS in their living room or a professional infrastructure, knowing that everything is running smoothly is crucial. essential to maintain healthIn the past, assembling something like this was a real headache that required reading endless manuals and testing until exhaustion.

Fortunately, today we have tools like Uptime Kuma, which have simplified the lives of sysadmins. It's a solution lightweight and extremely powerful which you can deploy in a matter of minutes, allowing you to have total control over your devices without relying on expensive monthly subscriptions or sending your data to third-party companies.

Complete Guide to Uptime Kuma
Related article:
Kuma's Complete Uptime Guide: Monitor Your Infrastructure Effectively

What exactly is Uptime Kuma and what is it used for?

Software engineer using a laptop to monitor servers in a data room, illustrating the work of a sysadmin.

Basically, it's an open-source availability monitoring system developed in Node.js. What makes it special is its modern and highly intuitive web interfaceThis means you don't need to be a networking expert to start monitoring your services. You can install it natively, although the most common and recommended approach is to use Docker containers to avoid dependency issues.

Exclusive content - Click Here  How to Make a Car

This tool acts as a 24/7 monitor, sending requests to your services and, if any don't respond as expected, it sends you an immediate alert. It's the perfect midpoint between overly complex solutions like Prometheus and closed commercial services like UptimeRobot.

Available monitoring types

Hand holding a smartphone displaying a network analysis, ideal for representing instant monitoring notifications and alerts.

Kuma's greatest strength lies in the variety of "checks" it can perform. It doesn't just check if a website loads, but delves into different levels of the network:

  • HTTP and HTTPS: Verify that a URL returns the correct status code (for example, a 200 OK). It even allows you to search for a specific keyword in the body of the page to ensure that the service is not returning a "faked" error page.
  • TCP Ports: It is the ideal option for monitoring databases (such as MySQL on the 3306 or PostgreSQL on the 5432) or messaging services and queues, verifying that the The port is open and accepting connections.
  • Ping (ICMP): The most basic and straightforward check. It verifies that the device is powered on and connected to the network, but does not guarantee that the specific service is functioning.
  • Docker containers: If you connect the Docker socket, Kuma can tell you if a The specific container is in a running state..
  • Other services: It supports DNS queries, Steam game servers, MQTT, gRPC, and monitoring of the SSL certificate expiration so you don't forget to renew them.
Server and Docker Monitoring with Beszel
Related article:
Server and Docker Monitoring with Beszel

Step-by-step installation and deployment

Complex network of cables in a data center with a monitor, representing connectivity and TCP port monitoring.

The cleanest way to set up Uptime Kuma is using Docker Compose. First, it's recommended to create a dedicated directory on your server and generate a file. docker-compose.ymlIn this file you must define the official image (louislam/uptime-kuma), map port 3001 and, very importantly, configure a persistent volume in /app/data so that you don't lose all your settings if the container restarts.

Exclusive content - Click Here  How can I defragment my PC's hard drive?

If you prefer the manual method, you can clone the GitHub repository, run npm run setup and manage the process with PM2 to ensure the application Start automatically with the systemOnce deployed, you access it through the browser, create your administrator user with a strong password, and you're already inside the control panel.

Alert and notification settings

IT professional managing network systems and connected devices from a terminal in the server room.

It's useless to have a monitor if you don't know when something has gone wrong. Uptime Kuma stands out for its Integration with over 90 notification servicesThe most popular among users are:

  • Telegram: Creating a bot through @BotFather and linking the Token and Chat ID. It's probably the fastest and most convenient way to receive alerts on your mobile phone.
  • Discord and Slack: Using inbound webhooks, which allows notifications to reach a specific team channel directly.
  • Email (SMTP): Configuring your mail server settings. It's vital to use application passwords if you use services like Gmail.
Uptime Kuma does not send notifications
Related article:
Uptime Kuma not sending notifications: causes and solutions

Advanced Management: Status and Maintenance Pages

For those who offer services to third parties, status pages are a goldmine. They allow you to create a public URL where any user can see if the services are operational, preventing technical support from being overwhelmed with questions like "Is the website down?". organize the monitors into groups and customize the appearance with CSS.

Additionally, to prevent the system from bombarding you with false alerts during a scheduled update, there are the maintenance windowsBy activating them, Kuma pauses notifications and marks the service as "under maintenance" on the status page, thus maintaining a clean availability history and without fake falls.

Exclusive content - Click Here  How do I locate a file in the My Documents folder?

Optimization tips and best practices

For the system to run like clockwork, it's best not to leave the default settings. A common mistake is setting overly aggressive check intervals (like every 20 seconds), which can cause problems. Unnecessary load on the server and noise in notifications. For most services, a 60-second interval is more than enough.

Another critical point is security. If you're going to expose the interface to the internet, it's essential to place it behind a... reverse proxy as Nginx Proxy ManagerTraefik or Caddy to manage HTTPS and SSL certificates. Also, don't forget to perform regular backups from the data directory, since that's where all the intelligence of the system resides.

If you ever experience connection errors (such as the infamous EHOSTUNREACH), check that the Docker container has network visibility to the host or the destination device. Sometimes, Windows firewalls or VM network configurations can block TCP traffic, causing the monitor to flag the service as down even though it is running.

Implementing a self-hosted monitoring solution allows you to move from reactive to proactive management, detecting incidents before end users do. By combining TCP port monitoring, SSL certificate tracking, and the power of instant notifications, you can achieve... robust and transparent infrastructure that minimizes downtime and maximizes the reliability of any digital ecosystem, whether home or business.

How to Monitor Servers and Docker in Beszel
Related article:
How to receive alerts when a server stops responding with Beszel