# 📡 Linux Tools for Infrastructure Monitoring

#### This page covers the best open-source tools for monitoring the health, performance, and security of your Linux infrastructure - whether you're managing a single server or an entire fleet of systems and services.

---

## 🖥️ 1. **Grafana**

- **Website:** [https://grafana.com/](https://grafana.com/)
- **Description:** A powerful visualization platform that integrates with dozens of data sources (Prometheus, InfluxDB, Loki, etc.). Create dashboards to track CPU, memory, disk, services, and uptime in real-time.
- 🔧 Best For: Building beautiful dashboards with historical metrics.

---

## 🔍 2. **Prometheus**

- **Website:** [https://prometheus.io/](https://prometheus.io/)
- **Description:** A time-series database used to collect metrics from systems and services. Designed to work with Grafana for alerting and long-term analysis.
- 🔧 Best For: Polling server metrics and alerting on thresholds.

---

## 🧠 3. **Netdata**

- **Website:** [https://www.netdata.cloud/](https://www.netdata.cloud/)
- **Description:** Real-time performance monitoring with minimal setup. Tracks hundreds of metrics per second with beautiful visualizations out of the box.
- 🔧 Best For: Lightweight, real-time local or remote monitoring.

---

## 📊 4. **Nagios Core / Icinga**

- **Website (Nagios):** [https://www.nagios.org/](https://www.nagios.org/)
- **Website (Icinga):** [https://icinga.com/](https://icinga.com/)
- **Description:** Highly configurable systems used for availability and alerting. Monitor hosts, services, network ports, and more. Icinga is a modern fork with a web-based UI and API.
- 🔧 Best For: Enterprise monitoring, email alerts, and service uptime.

---

## 🔐 5. **Fail2Ban**

- **Website:** [https://www.fail2ban.org/](https://www.fail2ban.org/)
- **Description:** Protects Linux servers from brute-force attacks by monitoring logs and banning malicious IPs. Supports SSH, web servers, FTP, and more.
- 🔧 Best For: Security hardening and log-based intrusion response.

---

## 📈 6. **Uptime Kuma**

- **Website:** [https://github.com/louislam/uptime-kuma](https://github.com/louislam/uptime-kuma)
- **Description:** Self-hosted uptime monitoring tool with slick UI, notifications, and graphing. Great alternative to services like UptimeRobot.
- 🔧 Best For: Ping/HTTP/TCP/port checks with alerts and history.

---

## 🧰 7. **Cockpit**

- **Website:** [https://cockpit-project.org/](https://cockpit-project.org/)
- **Description:** A web-based GUI for managing Linux servers. Includes system monitoring, service control, storage, and terminal access.
- 🔧 Best For: System admins who want visual system control via browser.

---

## 📦 8. **Monit**

- **Website:** [https://mmonit.com/monit/](https://mmonit.com/monit/)
- **Description:** Lightweight and scriptable monitoring tool for services, processes, filesystems, and files. Can auto-restart failed services.
- 🔧 Best For: Simple auto-recovery and alerting for daemon failures.

---

## 📜 9. **Logwatch / Logrotate**

- **Logwatch:** Summarizes daily logs into human-readable reports
- **Logrotate:** Manages and compresses rotating system logs
- 🔧 Best For: Keeping log files clean and readable, alerting on anomalies.

---

## 🛠️ 10. **Elastic Stack (ELK: Elasticsearch, Logstash, Kibana)**

- **Website:** [https://www.elastic.co/what-is/elk-stack](https://www.elastic.co/what-is/elk-stack)
- **Description:** A full-featured log management and analytics suite. Used to centralize logs, search them efficiently, and build dashboards.
- 🔧 Best For: High-scale log aggregation and event correlation.

---

## 🧩 Summary

These tools help monitor:

- System resources (CPU, RAM, disk)
- Uptime and service health
- Security threats and log anomalies
- Network traffic and performance

They range from real-time dashboards (Netdata, Grafana) to reactive protection tools (Fail2Ban) and enterprise-level observability stacks (ELK, Nagios)