Home/Docs

Documentation

Everything the app does, and what it will not do.

Connect a server

Tap Add server, enter a name, IP address, SSH port (22 by default) and either the root password or a private key. VPS Medic opens an SSH session from your phone, reads /etc/os-release, detects CyberPanel and OpenLiteSpeed, and installs a small agent under /root/.vpsmedic/ so later checks are faster. On the first connection it generates a dedicated SSH key, installs it in authorized_keys, and offers to disable password login for root.

If the OS is not supported (for example Ubuntu 20.04 or CentOS 7) the server is added in diagnostics-only mode: scan and reports work, repair playbooks are hidden.

Run a scan

A scan is read-only. It collects service states, disk and inode usage, memory and swap, load, OOM events, open ports, failed SSH logins, pending updates, PHP versions, SSL expiry and the health of every vhost. Results are grouped into Health, Websites, Security, Panel, Email and Database, each coloured green, yellow or red. Red and yellow items carry a Fix button where a playbook exists, or a How to fix link to the manual steps.

Fix levels

LevelExamplesConfirmationSnapshot
1 · lightstart/enable a unit, fix permissions, clear cache, remove stale PIDPlan shown, tap RunNo
2 · mediumrestore a config file, reinstall one package, repair pip, add swapPlan shown, tap RunYes, of files touched
3 · heavyreinstall a component, rebuild the panel venv, re-run upgrade scriptDialog with expected downtimeYes, always

After every step the engine verifies the result and compares all service states to the snapshot taken before the fix. If a service that was running has stopped, the snapshot is restored and the run halts with a report. When no level resolves the problem, you get the diagnosis report with manual steps and a one-tap Send to support.

Vhost health

Each website gets a card with: vhost config validity and registration in httpd_config.conf, docroot existence and ownership, PHP version in use and whether the required extensions are present, SSL certificate chain and expiry, whether the domain's DNS points at this server, a live HTTP request result and time, error-log entries from the last 24 hours grouped by type, recently changed files and injection patterns, site size, database status and last backup.

Disk cleanup

The cleanup screen lists every candidate with an estimated size. Safe clean runs the items that never touch your data: systemd journal vacuum, package caches, rotated logs older than 7 days, temp files older than 7 days, pip caches, OpenLiteSpeed and LSCache page cache, core dumps. Large active logs are truncated, not deleted. Old kernels (keeping two), old CyberPanel backups and unused Docker data are shown separately and run only when you select and confirm them. /home content, MariaDB data, panel and web-server config are never candidates.

PHP updates

VPS Medic lists installed lsphp versions, which sites use each one, and available updates. It verifies the LiteSpeed repository is present, updates one version at a time, compares loaded extensions before and after and reinstalls any that went missing, preserves your php.ini (new defaults are saved alongside as .dpkg-dist / .rpmnew), restarts OpenLiteSpeed once, and tests every site. End-of-life versions are flagged as such rather than reported as updated. Versions no site uses can be removed with confirmation.

Install CyberPanel

On a clean supported VPS (no panel, ports 80/443 free, 2 GB RAM or more) the Install button appears. Choose the CyberPanel version, set one password that will be applied to both the CyberPanel admin user and the OpenLiteSpeed WebAdmin console, and watch the installer in the live console. Afterwards the server's Panel access screen shows both URLs with Copy buttons and a Reset password button that updates both panels together. Existing passwords are stored as hashes and cannot be read back by any tool; a reset is how you recover a forgotten one, in about ten seconds. Panel upgrades take a snapshot first; Restore previous version brings it back if the upgrade misbehaves.

License & devices

The first time you open the app a 3-day trial starts, tied to your phone. Enter a license key at any time under License. A key activates on one phone; the app registers an anonymous device hash with it. To move to a new phone, use Transfer device (once every 30 days) or message support. The app re-validates the key every 7 days and keeps working for 14 days without internet. Every plan manages unlimited servers; Monthly and Yearly keys stop working when the period ends, Lifetime keys never expire.

Security model

  • Server credentials are stored in the Android Keystore on your phone and never sent to VPS Medic's servers.
  • The connection from phone to server is SSH. The on-server agent only accepts requests signed with a key created during pairing.
  • The license server receives only the license key, the device hash and the app version.
  • Diagnosis reports you choose to send contain service states, log excerpts and command output. Review them before sending; nothing is sent automatically.
  • Forget server removes credentials from the phone; Remove agent deletes /root/.vpsmedic/ and the app's SSH key from the server.

Support

WhatsApp: message us. Email: [email protected]. Include the diagnosis report from the app when it is about a failed fix; it has everything we need.