Skip to content

alireza0/s-ui

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Feb 22, 2025
bac2580 · Feb 22, 2025
Feb 6, 2025
Feb 2, 2025
Jan 28, 2025
Feb 15, 2025
Feb 15, 2025
Feb 22, 2025
Jan 28, 2025
Feb 15, 2025
Feb 15, 2025
Jan 28, 2025
Jan 28, 2025
Jan 28, 2025
Feb 22, 2025
Feb 15, 2025
Feb 15, 2025
Feb 8, 2025
Jan 28, 2025
Jan 28, 2025
Jan 28, 2025
Feb 3, 2025
Feb 13, 2024
Feb 8, 2025
Jan 28, 2025
Jan 5, 2025
Jul 18, 2024
Feb 15, 2025
Feb 15, 2025
Jan 7, 2025
Jan 28, 2025
Jan 28, 2025
Feb 13, 2024
Feb 13, 2024
Jan 7, 2025

Repository files navigation

S-UI

An Advanced Web Panel • Built on SagerNet/Sing-Box

S-UI Docker pull Go Report Card Downloads License

Disclaimer: This project is only for personal learning and communication, please do not use it for illegal purposes, please do not use it in a production environment

If you think this project is helpful to you, you may wish to give a🌟

"Buy Me A Coffee"

  • USDT (TRC20): TYTq73Gj6dJ67qe58JVPD9zpjW2cc9XgVz

Quick Overview

Features Enable?
Multi-Protocol ✔️
Multi-Language ✔️
Multi-Client/Inbound ✔️
Advanced Traffic Routing Interface ✔️
Client & Traffic & System Status ✔️
Subscription Service (link/json + info) ✔️
Dark/Light Theme ✔️
API Interface ✔️

API Documentation

API-Documentation Wiki

Default Installation Information

  • Panel Port: 2095
  • Panel Path: /app/
  • Subscription Port: 2096
  • Subscription Path: /sub/
  • User/Password: admin

Install & Upgrade to Latest Version

bash <(curl -Ls https://raw.githubusercontent.com/alireza0/s-ui/master/install.sh)

Install legacy Version

Step 1: To install your desired legacy version, add the version to the end of the installation command. e.g., ver 1.0.0:

VERSION=1.0.0 && bash <(curl -Ls https://raw.githubusercontent.com/alireza0/s-ui/$VERSION/install.sh) $VERSION

Manual installation

  1. Get the latest version of S-UI based on your OS/Architecture from GitHub: https://github.com/alireza0/s-ui/releases/latest
  2. OPTIONAL Get the latest version of s-ui.sh https://raw.githubusercontent.com/alireza0/s-ui/master/s-ui.sh
  3. OPTIONAL Copy s-ui.sh to /usr/bin/ and run chmod +x /usr/bin/s-ui.
  4. Extract s-ui tar.gz file to a directory of your choice and navigate to the directory where you extracted the tar.gz file.
  5. Copy *.service files to /etc/systemd/system/ and run systemctl daemon-reload.
  6. Enable autostart and start S-UI service using systemctl enable s-ui --now
  7. Start sing-box service using systemctl enable sing-box --now

Uninstall S-UI

sudo -i

systemctl disable s-ui  --now

rm -f /etc/systemd/system/sing-box.service
systemctl daemon-reload

rm -fr /usr/local/s-ui
rm /usr/bin/s-ui

Install using Docker

Click for details

Usage

Step 1: Install Docker

curl -fsSL https://get.docker.com | sh

Step 2: Install S-UI

Docker compose method

mkdir s-ui && cd s-ui
wget -q https://raw.githubusercontent.com/alireza0/s-ui/master/docker-compose.yml
docker compose up -d

Use docker

mkdir s-ui && cd s-ui
docker run -itd \
    -p 2095:2095 -p 2096:2096 -p 443:443 -p 80:80 \
    -v $PWD/db/:/usr/local/s-ui/db/ \
    -v $PWD/cert/:/root/cert/ \
    --name s-ui --restart=unless-stopped \
    alireza7/s-ui:latest

Build your own image

git clone https://github.com/alireza0/s-ui
git submodule update --init --recursive
docker build -t s-ui .

Manual run ( contribution )

Click for details

Build and run whole project

./runSUI.sh

Clone the repository

# clone repository
git clone https://github.com/alireza0/s-ui
# clone submodules
git submodule update --init --recursive

- Frontend

Visit s-ui-frontend for frontend code

- Backend

Please build frontend once before!

To build backend:

# remove old frontend compiled files
rm -fr web/html/*
# apply new frontend compiled files
cp -R frontend/dist/ web/html/
# build
go build -o sui main.go

To run backend (from root folder of repository):

./sui

Languages

  • English
  • Farsi
  • Vietnamese
  • Chinese (Simplified)
  • Chinese (Traditional)
  • Russian

Features

  • Supported protocols:
    • General: Mixed, SOCKS, HTTP, HTTPS, Direct, Redirect, TProxy
    • V2Ray based: VLESS, VMess, Trojan, Shadowsocks
    • Other protocols: ShadowTLS, Hysteria, Hysteria2, Naive, TUIC
  • Supports XTLS protocols
  • An advanced interface for routing traffic, incorporating PROXY Protocol, External, and Transparent Proxy, SSL Certificate, and Port
  • An advanced interface for inbound and outbound configuration
  • Clients’ traffic cap and expiration date
  • Displays online clients, inbounds and outbounds with traffic statistics, and system status monitoring
  • Subscription service with ability to add external links and subscription
  • HTTPS for secure access to the web panel and subscription service (self-provided domain + SSL certificate)
  • Dark/Light theme

Recommended OS

  • Ubuntu 20.04+
  • Debian 11+
  • CentOS 8+
  • Fedora 36+
  • Arch Linux
  • Parch Linux
  • Manjaro
  • Armbian
  • AlmaLinux 9+
  • Rocky Linux 9+
  • Oracle Linux 8+
  • OpenSUSE Tubleweed

Environment Variables

Click for details

Usage

Variable Type Default
SUI_LOG_LEVEL "debug" | "info" | "warn" | "error" "info"
SUI_DEBUG boolean false
SUI_BIN_FOLDER string "bin"
SUI_DB_FOLDER string "db"
SINGBOX_API string -

SSL Certificate

Click for details

Certbot

snap install core; snap refresh core
snap install --classic certbot
ln -s /snap/bin/certbot /usr/bin/certbot

certbot certonly --standalone --register-unsafely-without-email --non-interactive --agree-tos -d <Your Domain Name>

Stargazers over Time

Stargazers over time