GL.iNet-Yongping.Xie 34966f186b feat: Update readme markdown
Update readme markdown

Signed-off-by: GL.iNet-Yongping.Xie <yongping.xie@gl-inet.com>
2025-08-07 18:17:23 -07:00
2025-07-14 23:25:23 +08:00
2025-08-07 00:40:46 -07:00
2025-08-06 20:08:23 -07:00
2018-09-08 17:16:04 +08:00
2018-01-17 21:31:35 +08:00
2025-07-25 09:21:18 +00:00
2025-07-14 23:25:23 +08:00
2018-03-14 22:37:04 +08:00
2018-03-14 22:37:04 +08:00
2025-07-25 09:21:18 +00:00
2025-07-25 09:21:18 +00:00
2025-07-25 09:21:18 +00:00
2025-08-05 23:35:00 -07:00
2019-09-03 14:57:16 +08:00
2025-07-25 09:21:18 +00:00
2025-08-07 18:17:23 -07:00
2025-08-06 20:08:23 -07:00
2025-07-25 09:21:18 +00:00
2025-07-14 22:34:24 +08:00
2025-07-14 22:34:24 +08:00

Self-Deployed Lightweight Cloud KVM Remote Management Platform

Self-Deployed Lightweight Cloud is a lightweight KVM remote cloud platform tailored for individuals and small businesses. This project is developed based on rttys, specifically designed for users managing fewer than 50 KVM devices.

Core Features

  • 🚀 Rapid Deployment - Quick self-deployment with simple operations
  • 🔒 Data Security - Private deployment with full data control
  • 🎯 Lightweight Design - Optimized for small businesses and individual users
  • 🌐 Unified Management - Centralized management and remote control via public servers

Main Functions

  • User Authentication - Secure login authentication system
  • 📋 Device Management - Online device list monitoring
  • 📜 Script Deployment - Convenient script-based device addition
  • 🖥️ Remote SSH - Secure SSH remote connections
  • 🎮 Remote Control - Graphical remote desktop control
  • Batch Operations - Batch command execution capabilities

Feature Demonstrations

Add KVM Devices to the Lightweight Cloud

  • Copy script

Add KVM Devices to the Lightweight Cloud

  • Run the script in the device terminal

Add KVM Devices to the Lightweight Cloud

  • Devices connected to the cloud

Add KVM Devices to the Lightweight Cloud

Remote SSH Connection

Remote SSH Screenshot

Remote Desktop Control

Remote Control Screenshot

Supported Operating Systems

The following mainstream operating systems have been tested and verified:

Debian Family

  • Ubuntu 18.04 / 20.04 / 22.04 / 24.04
  • Debian 11 / 12

Red Hat Family

  • AlmaLinux 8 / 9
  • Rocky Linux 8 / 9
  • CentOS Stream 9

System Requirements

Server Configuration Requirements

Component Minimum Requirement
CPU 2 cores or above
Memory ≥ 2 GB
Storage ≥ 40 GB
KVM Firmware ≥ v1.5.0
  • Recommended Device Count: Under 50 devices
  • Use Cases: Individual users, small businesses, data security-sensitive environments

Self-Hosting Guide

🔐 Cloud Security Group Settings

If your server provider uses a cloud security group (e.g., AWS, Aliyun, etc.), please make sure the following ports are open and not occupied by other services:

Port Protocol Purpose
443 TCP Web UI access
10443 TCP WebSocket proxy
5912 TCP Device connection
3478 TCP/UDP TURN server for WebRTC support

⚠️ Important: These ports will be used by GLKVM Cloud. Please ensure no other applications or services on your server are binding to these ports, otherwise the lightweight cloud platform may fail to start properly.


📦 Installation

Run the following command as root to install GLKVM Cloud:

bash <(curl -fsSL https://aw-test.gl-inet.cn/server-node/selfhost/glkvm-cloud-setup.sh)

🌐 Platform Access

Once the installation is complete, access the platform via:

https://<your_server_public_ip>

⚠️ Note: Accessing via IP address will trigger a browser certificate warning. To eliminate the warning, it's strongly recommended to configure a custom domain with a valid SSL certificate.

🔑 Web UI Login Password

The default login password for the Web UI will be displayed in the installation script output:

🔐 Please check the installation console for your web login password.

⚠️ Note: If you dont mind the browser certificate warning, and only need to remotely access a single KVM device, you can skip configuring a custom domain and SSL certificate.

You can still access the platform using the servers public IP with HTTPS:

https://<your_server_public_ip>

However, for production use or to support multiple device access via subdomains, it is highly recommended to configure your own wildcard SSL certificate (see below).


📁 Default SSL Certificate Path

The default self-signed SSL certificates are located at:

~/glkvm_cloud/certificate

To enable full domain-based access, configure the following DNS records for your domain:

┌────────────┬──────┬────────────────────┬─────────────────────────────┐
│ Hostname   │ Type │     Value           │         Purpose             │
├────────────┼──────┼────────────────────┼─────────────────────────────┤
│ www        │  A   │ Your public IP      │ Web access to the platform │
│ *          │  A   │ Your public IP      │ Remote access to KVMs      │
└────────────┴──────┴────────────────────┴─────────────────────────────┘

🔧 Using a Custom SSL Certificate

To avoid browser warnings, replace the default certificates with your own wildcard SSL certificate that supports both:

  • *.your-domain.com (for device access)
  • www.your-domain.com (for platform access)

Replace the following files in:

~/glkvm_cloud/certificate
  • glkvm.cer
  • glkvm.key

⚠️ Make sure the filenames remain unchanged.

🔄 Restart Services After Certificate Replacement

After replacing the certificates, restart the GLKVM Cloud services to apply the changes:

cd ~/glkvm_cloud
docker-compose down
docker-compose up -d

Or, on systems with the Docker CLI plugin:

docker compose down
docker compose up -d

Domain-Based Access Example

Once everything is configured, you can access the platform via your domain:

https://www.your-domain.com
S
Description
Self-Deployed Lightweight KVM Cloud
Readme 118 MiB
Languages
GO 43.5%
Vue 38.5%
TypeScript 13%
Shell 3.1%
PowerShell 1.1%
Other 0.8%