SQL-powered framework that exposes operating system data such as processes, users, and network connections as queryable tables.
nuver-labs/vps-audit
A dependency-free Bash script that audits a Linux VPS for security settings, performance, and resource usage, then writes a PASS/WARN/FAIL report.
- Stars
- 3,250
- Forks
- 312
- Open issues
- 13
- Last commit
- 3 months ago
What is it?
vps-audit is a shell script for checking the security posture and resource health of Ubuntu and Debian servers, such as VPS instances. Run with sudo, it inspects SSH settings (root login, password authentication, port), firewall status across UFW, firewalld, iptables and nftables, Fail2ban or CrowdSec configuration, failed login attempts, pending updates, running services, open ports, sudo logging, password policy and SUID files.
Alongside security checks it reports disk, memory and CPU usage and active internet connections. Each check is labelled PASS, WARN or FAIL in the console, and the script also saves a timestamped text report with recommendations for failed checks.
Thresholds for WARN and FAIL, report location and the paths of the configuration files it reads are set in a Configuration section at the top of the script. The script needs only common tools such as grep, awk and ss, so it can be copied onto a server and run without installing anything.
Key features
- 01Checks SSH root login, password authentication and port settings.
- 02Detects firewall status across UFW, firewalld, iptables and nftables.
- 03Verifies Fail2ban SSH jail configuration and CrowdSec setup.
- 04Reports disk, memory and CPU usage with configurable thresholds.
- 05Writes a timestamped text report with recommendations for failed checks.
Use cases
- Running a periodic security check on a freshly provisioned Ubuntu or Debian VPS.
- Reviewing the configuration of a server you inherited before making changes.
- Adding a lightweight audit step to a server maintenance routine.
Quick start
- 1
Download the script
wget https://raw.githubusercontent.com/Nuver-Labs/vps-audit/main/vps-audit.sh - 2
Make the script executable
chmod +x vps-audit.sh - 3
Run the audit with sudo
sudo ./vps-audit.sh
Things to know
- Designed for Debian/Ubuntu-based systems only.
- Requires root or sudo access.
In collections
Topics
FAQ
- What is vps-audit?
- A dependency-free Bash script that audits a Linux VPS for security settings, performance, and resource usage, then writes a PASS/WARN/FAIL report. vps-audit is a shell script for checking the security posture and resource health of Ubuntu and Debian servers, such as VPS instances. Run with sudo, it inspects SSH settings (root login, password authentication, port), firewall status across UFW, firewalld, iptables and nftables, Fail2ban or CrowdSec configuration, failed login attempts, pending updates, running services, open ports, sudo logging, password policy and SUID files.
- Is vps-audit free to use? What license does it have?
- vps-audit is open source under the MIT license. Check the license terms before using it in commercial products.
- Is vps-audit still maintained?
- Updated within 6 months. The last commit to vps-audit was on Aug 10, 2026.
- What can I use vps-audit for?
- Running a periodic security check on a freshly provisioned Ubuntu or Debian VPS. Reviewing the configuration of a server you inherited before making changes. Adding a lightweight audit step to a server maintenance routine.
- How do I install vps-audit?
- Download the script: wget https://raw.githubusercontent.com/Nuver-Labs/vps-audit/main/vps-audit.sh Make the script executable: chmod +x vps-audit.sh Run the audit with sudo: sudo ./vps-audit.sh
- Where can I get vps-audit?
- The source code and installation instructions are on GitHub: https://github.com/nuver-labs/vps-audit
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A web management platform for operating Fail2Ban across one or more Linux hosts, covering bans, jails, filters and alerts.
A web-based graphical admin interface for Linux servers that gives sysadmins a browser session on the real system.
A coding-agent skill that runs multi-phase security audits with isolated agents, independent verification, and machine-readable findings.
A Go CLI that scans your project's dependencies and container images against the OSV vulnerability database to report known vulnerabilities.
Free, open-source tool that runs dependency, code and domain security scans and turns the results into shareable HTML reports.