SSPanel-UIM Documentation

website·Indexed 31 days ago

https://docs.sspanel.io

A powerful PHP-based proxy service management panel supporting multiple protocols including Shadowsocks, V2Ray, and Trojan. The documentation covers installation on Debian, Ubuntu, and CentOS, system optimization for PHP 8.4, database and Redis configuration, subscription system management, and integration with mail services and IM platforms like Telegram.

Tokens
14.6K
Snippets
67
Records
107
Agent score
57%

What's inside SSPanel-UIM

  1. Overview of SSPanel-UIM Features

    SSPanel-UIM is a mature, open-source proxy management panel designed as an enterprise-level solution. It is built on an MVC architecture for maintainability and stability. Key functional systems include:

    • User Management
    • Node Management
    • Financial System
    • Ticket/Support System

    It supports a plugin system for customization, various themes, and is compatible with PHP 8.4.

  2. Overview of SSPanel-UIM capabilities and supported protocols

    SSPanel-UIM is a powerful management panel for proxy services. It supports several mainstream proxy protocols, including Shadowsocks (SS/SS2022), V2Ray (VMess/VLESS), Trojan, Hysteria, and TUIC.
  3. Overview of SSPanel-UIM features

    SSPanel-UIM is a PHP-based management panel for proxy services. Its core capabilities include:

    • Multi-protocol Support: Compatible with Shadowsocks, V2Ray, Trojan, and Hysteria.
    • User Management: Includes registration, subscription management, and traffic statistics.
    • Node Management: Supports multi-node management, load balancing, and intelligent routing.
    • Financial System: Features various payment methods, plan/package management, and a commission system.
    • Operational Tools: Includes a ticket system, email notifications, and data statistics.
  4. Business and management features of SSPanel-UIM

    SSPanel-UIM provides a comprehensive suite of tools for commercial proxy service operation:

    • Commercial Features: Integrated payment systems, flexible plan/package management, automated billing, and referral/commission systems.
    • Management Tools: Multi-node management, user traffic statistics, an audit rule system, and a ticket-based support system.
    • AI Enhancements: Intelligent ticket replies, automated documentation generation, and support for various Large Language Models (LLMs).
  5. SSPanel-UIM technical architecture and requirements

    SSPanel-UIM is built on a high-performance architecture with the following technical specifications:

    • Runtime: PHP 8.2+
    • Performance Optimizations: Supports OPcache and JIT (Just-In-Time) acceleration
    • Caching: Redis cache optimization
    • Background Processing: Built-in mail queues
  6. Getting started with SSPanel-UIM installation and configuration

    For first-time users, the recommended sequence for deployment and setup is:

    1. Review system requirements
    2. Perform the quick installation
    3. Complete basic configuration
    4. Add service nodes
  7. Implement port offset for proxy nodes

    Port offset allows the port the user connects to (provided in the subscription) to differ from the port the node backend is actually listening on. This is typically used for relay/forwarding scenarios.

    How it works:

    • offset_port_user: The port delivered to the user via the subscription.
    • offset_port_node: The port the node backend listens on (informed via WebAPI).

    Protocol Support:

    • Supported: Shadowsocks2022, TUIC, Vmess, Trojan.
    • Not Supported: Shadowsocks (always uses the assigned user port).

    Example Scenario (Relay): User $\rightarrow$ Relay Machine (Port 443) $\rightarrow$ Exit Node (Port 8443). Configuration: offset_port_user: 443, offset_port_node: 8443. Implementation on relay machine: iptables -t nat -A PREROUTING -p tcp --dport 443 -j DNAT --to-destination <Exit_Node_IP>:8443.

  8. Supported subscription formats and their requirements

    SSPanel-UIM supports various formats. Some require specific environment variables to be enabled in the configuration to function.
    FormatPath Segment ({subtype})Required ConfigDescription
    JSONjsonN/AGeneral JSON with user info and nodes
    ClashclashN/AYAML format with proxy groups and rules
    SingBoxsingboxN/AJSON format for sing-box core
    V2Rayv2ray$_ENV['enable_v2_sub']Base64 encoded vmess:// links
    V2RayJsonv2rayjsonN/AFull V2Ray JSON configuration
    Shadowsocksss$_ENV['enable_ss_sub']Base64 encoded SS nodes
    SIP002sip002$_ENV['enable_ss_sub']Standard ss:// links (SIP002)
    SIP008sip008N/AJSON format with extra node info
    Trojantrojan$_ENV['enable_trojan_sub']Base64 encoded trojan:// links
  9. Add and configure basic node information in SSPanel-UIM

    To add a new node, navigate to Node Management $\rightarrow$ Node List and click Add Node. The following basic fields are required:

    • Name: The display name shown to users (e.g., 'Hong Kong Node-01').
    • Connection Address: The node's domain name or IP address.
    • Traffic Multiplier: The multiplier used for calculating data usage (e.g., 1.0).
    • Access Type: The protocol type (e.g., Trojan).
    • Show this node: Checkbox to determine if the node is visible to users.
  10. Configure payment gateways in SSPanel-UIM

    Payment gateways are managed via the admin panel plugins system rather than configuration files. Supported types include traditional (Alipay, WeChat), international (Credit Card, PayPal), cryptocurrency, and aggregated payment platforms.

    Steps to configure:

    1. Log in to the admin backend.
    2. Navigate to the Payment Settings page.
    3. Select the desired payment gateway.
    4. Enter the required API keys and parameters from the provider.
    5. Save and test.
  11. Configure login security and session duration in SSPanel-UIM

    Depending on the security requirements of the service, adjust the environment variables for IP binding, device binding, and the 'Remember Me' session duration.
    // For most services (where user IPs change frequently):
    $_ENV['enable_login_bind_ip'] = false;     // Disable IP binding
    $_ENV['enable_login_bind_device'] = true;   // Keep device binding
    $_ENV['rememberMeDuration'] = 30;           // 30 days remember me
    
    // For high-security services:
    $_ENV['enable_login_bind_ip'] = true;       // Enable IP binding
    $_ENV['enable_login_bind_device'] = true;   // Enable device binding
    $_ENV['rememberMeDuration'] = 7;            // 7 days remember me
  12. Configure the email queue cron job

    SSPanel-UIM uses a database-driven queue (email_queue table) to process emails. A cron job must be configured to run every 5 minutes to trigger the queue processor and send pending emails. It is recommended to redirect output to a log file for troubleshooting.
    # Edit crontab
    crontab -e
    
    # Add the following line to run every 5 minutes
    */5 * * * * /usr/bin/php /var/www/sspanel/xcat Cron >> /var/log/sspanel-cron.log 2>&1