6.9 KiB
EasyNode
✨ A multifunctional Linux server web terminal panel webSSH & webSFTP ✨
Default documentation language: 中文 -> README.md
Features · Preview · Deployment · Environment Variables · Monitoring Service · Recommendations · Disclaimer · FAQ
Features
- Full-featured SSH terminal & SFTP
- Jump host support for bypassing connectivity restrictions and improving cross-region terminal input speed
- AI chat component with terminal interaction support
- Batch import, export, and editing for servers, scripts, and related configurations
- Script library
- Server grouping
- Credential management
- Multi-channel notifications
- Batch command execution
- Custom terminal themes
Preview
Deployment
- Since version
v3.1.0, the default username/password is no longeradmin/admin. Check the terminal logs after startup. Please change the credentials immediately after logging in to avoid sensitive information remaining in logs. For security reasons, there is no one-click password reset script. - Default web port: 8082
docker-compose Deployment - Auto Update Recommended
The docker-compose.yml used for this project defaults to images accelerated via Tencent CNB. If the service is unavailable, replace or remove the acceleration source manually.
# Quick deployment with docker compose
# 1. Create the easynode directory
mkdir -p /root/easynode && cd /root/easynode
# 2. Download the docker-compose.yml file
wget https://git.221022.xyz/https://raw.githubusercontent.com/chaos-zhu/easynode/main/docker-compose.yml
# 3. Start the service
docker compose up -d
Docker Image
Important!!!
Starting from v3.5.0, RDP support for Windows servers was added. This feature depends on a separate guacd service.
- If you are not familiar with
guacd, use thedocker-compose.ymlabove for deployment. - If you do not want to use
docker-compose.yml, configure the environment variablesGUACD_HOSTandGUACD_PORTmanually.
# GUACD_HOST: IP of your self-hosted guacd service (127.0.0.1 here is only an example)
# GUACD_PORT: Port of your self-hosted guacd service
docker run -d \
-p 8082:8082 \
--restart=always \
-v /root/easynode/db:/easynode/app/db \
-e GUACD_HOST=127.0.0.1 \
-e GUACD_PORT=4822 \
chaoszhu/easynode
Environment Variables
If you do not have special requirements, using
docker-compose.ymlis recommended.
| Variable | Description | Default | Notes |
|---|---|---|---|
GUACD_HOST |
IP of your self-hosted guacd service | - | - |
GUACD_PORT |
Port of your self-hosted guacd service | - | - |
DEBUG |
Startup log output | true |
false: disabled, true: enabled |
RDP_PORT |
RDP service port | - | Keep the default unless necessary |
ENABLE_HTTPS |
Whether to enable HTTPS | 0 |
0: disabled1: self-signed certificate (suitable for LAN)2: valid certificate (suitable for public network)Using nginx / caddy for HTTPS reverse proxy is recommended for public deployment |
HTTPS_PORT |
HTTPS port | 8092 |
- |
SSL_CERT_PATH |
HTTPS certificate file path | - | Required when ENABLE_HTTPS=2 |
SSL_KEY_PATH |
HTTPS private key file path | - | Required when ENABLE_HTTPS=2 |
Note: Docker does not enable IPv6 by default. Please refer to Q&A.md or use a jump host that supports IPv6.
Monitoring Service
Starting from v3.2.0, a separate monitoring service is no longer required. Older panel versions no longer provide a downloadable monitoring client, so upgrading is recommended.
If a monitoring service was previously installed on your server, use the built-in uninstall script: Script Library -> easynode monitoring service uninstall.
Recommendations
No system is completely free of bugs, and EasyNode is no exception.
- Make good use of security features such as MFA2 and the IP allowlist. For stronger security, LAN deployment is recommended, together with OpenVPN,
tailscale, orzerotier. If you need a higher security level, do not expose the panel service directly to the public internet. - Both
websshand the monitoring service use the target server as a relay. Users in Mainland China are advised to deploy the panel on low-latency servers located in Hong Kong, Singapore, Japan, or South Korea. - Upgrade the panel regularly. EasyNode periodically updates its underlying security dependencies. Using the provided
docker-compose.ymlis recommended because it can detect updates and upgrade automatically.
Disclaimer
EasyNode was first released in August 2022. The author has made every effort to improve its security during development. However, like other projects, EasyNode depends on popular third-party libraries, whose security cannot be guaranteed forever. If your server contains important data, avoid deploying this project directly on the public internet, or avoid using the project altogether. The author assumes no responsibility for any loss caused by security vulnerabilities.
FAQ
Sponsored Infrastructure
CDN acceleration and security protection for this project are sponsored by Tencent EdgeOne. EdgeOne offers a long-term free plan with unlimited traffic and requests, including Mainland China nodes and no overage charges. Interested users can check it here: Best Asian CDN, Edge, and Secure Solutions - Tencent EdgeOne

