Skip to content

gl-inet/glkvm-cloud

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Self-Deployed Lightweight Cloud KVM Remote Management Platform

ไธญๆ–‡ๆ–‡ๆกฃ | English

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.

Main Functions and Features

  • ๐Ÿ“‹ Device Management - Online device list monitoring
  • ๐Ÿ“œ Script Deployment - Convenient script-based device addition
  • ๐Ÿ–ฅ๏ธ Remote SSH - Web SSH remote connections
  • ๐ŸŽฎ Remote Control - Web remote desktop control
  • โšก Batch Operations - Batch command execution capabilities
  • ๐Ÿš€ 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

Self-Hosting Guide

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

Requirements

Component Minimum Requirement
CPU 1 cores or above
Memory โ‰ฅ 1 GB
Storage โ‰ฅ 40 GB
KVM Device Firmware โ‰ฅ v1.5.0

๐Ÿ” 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:

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:

( command -v curl >/dev/null 2>&1 && curl -fsSL https://kvm-cloud.gl-inet.com/selfhost/install.sh || wget -qO- https://kvm-cloud.gl-inet.com/selfhost/install.sh ) | sudo bash

๐ŸŒ 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 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.

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

Use your own SSL Certificate (Optional)

โš ๏ธ Note:

If you just want to quickly try out GLKVM Cloud and donโ€™t mind the browserโ€™s certificate warning, you can skip configuring a custom domain and SSL certificate, and still access the platform via the serverโ€™s public IP with HTTPS.

For production use, or if you need to access multiple KVM devices via subdomains, it is strongly recommended to configure your own wildcard SSL certificate (see below).

๐ŸŒ Add DNS Records

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