Skip to content

juewuy/ShellCrash

Repository files navigation

ShellCrash

A powerful script tool for the convenient deployment and management of mihomo/sing-box kernels in Shell environments.

简体中文 | English


🚀 Core Features

  • Multi-Kernel Support: Easily manage and switch between mihomo and sing-box kernels directly within the Shell environment.
  • Flexible Configuration Management: Supports online import of subscription links and configuration files to simplify the setup process.
  • Automated Tasks: Configure scheduled tasks for automatic updates of configuration files and rules.
  • Graphical Dashboard: Support for online installation and use of local Web Dashboards to intuitively manage built-in rules and traffic.
  • Multiple Operation Modes: Supports switching between various traffic forwarding modes, including Router mode and Local mode.
  • One-Click Maintenance: Built-in online update functionality to keep the script and features up to date.

💻 Device Support

ShellCrash is designed to be compatible with the vast majority of network devices based on the Linux kernel:

  • Router Devices: Supports various firmwares based on OpenWrt or its derivatives.
  • Linux Servers: Supports devices running standard Linux distributions (e.g., Debian, CentOS, Armbian, Ubuntu, etc.).
  • Third-Party Firmware: Compatible with Padavan (Conservative Mode), Pandora, and ASUS/Merlin firmware.
  • Customized Devices: Compatible with other specialized network devices developed using the Linux kernel.

For additional device support, please submit an Issue or provide feedback in the Telegram Group (please include the device model and the output of the uname -a command).


🛠️ Installation Guide

Tip

If you encounter connection failures or SSL-related issues, please try switching to an alternative installation mirror.

Prerequisites

  1. Ensure the device has SSH enabled and Root privileges obtained (Linux systems with a GUI can use the terminal directly).
  2. Connect to the device using an SSH tool (such as PuTTY, JuiceSSH, or the system's built-in terminal).

🐧 Standard Linux Device Installation

Important

Please perform the installation as the root user.

Install via wget (jsDelivr CDN source)

export url='https://testingcf.jsdelivr.net/gh/juewuy/ShellCrash@dev' \
  && wget -q --no-check-certificate -O /tmp/install.sh $url/install_en.sh \
  && bash /tmp/install.sh \
  && . /etc/profile &> /dev/null

Or install via curl (Author's private source)

export url='https://gh.jwsc.eu.org/dev' && bash -c "$(curl -kfsSl $url/install_en.sh)" && . /etc/profile &> /dev/null

📡 Router Device Installation

Installation via curl:

GitHub Source (Recommended for overseas environments or environments with proxy access)

export url='https://raw.githubusercontent.com/juewuy/ShellCrash/dev' \
  && sh -c "$(curl -kfsSl $url/install_en.sh)" \
  && . /etc/profile &> /dev/null

Or jsDelivr CDN source

export url='https://testingcf.jsdelivr.net/gh/juewuy/ShellCrash@dev' \
  && sh -c "$(curl -kfsSl $url/install_en.sh)" \
  && . /etc/profile &> /dev/null

Or Author's private source

export url='https://gh.jwsc.eu.org/dev' && sh -c "$(curl -kfsSl $url/install_en.sh)" && . /etc/profile &> /dev/null

Installation via wget:

GitHub Source (Recommended for overseas environments or environments with proxy access)

export url='https://raw.githubusercontent.com/juewuy/ShellCrash/dev' \
  && wget -q --no-check-certificate -O /tmp/install.sh $url/install_en.sh \
  && sh /tmp/install.sh \
  && . /etc/profile &> /dev/null

Or jsDelivr CDN source

export url='https://testingcf.jsdelivr.net/gh/juewuy/ShellCrash@dev' \
  && wget -q --no-check-certificate -O /tmp/install.sh $url/install_en.sh \
  && sh /tmp/install.sh \
  && . /etc/profile &> /dev/null

📟 Installation for Legacy Devices with Older wget Versions

Author's private HTTP beta source

export url='http://t.jwsc.eu.org' \
  && wget -q -O /tmp/install.sh $url/install_en.sh \
  && sh /tmp/install.sh \
  && . /etc/profile &> /dev/null

☁️ Virtual Machines

  • Alpine Linux VM: It is highly recommended to use an Alpine image for optimal compatibility.
# Install necessary dependencies
apk add --no-cache wget openrc ca-certificates tzdata nftables iproute2 dcron
# Execute installation command
export url='https://testingcf.jsdelivr.net/gh/juewuy/ShellCrash@dev' \
  && wget -q --no-check-certificate -O /tmp/install.sh $url/install_en.sh \
  && sh /tmp/install.sh \
  && . /etc/profile &> /dev/null

🐳 Docker

Please visit the official Docker image:

📦 Local Installation

If online installation is not possible, please follow the guide for local installation:


📖 Usage Instructions

After installation, enter the following commands in the terminal to launch the management interface:

crash        # Launch the interactive script menu
crash -h     # View the list of command help

Running Dependencies

Component Necessity Description
curl / wget Mandatory Required for node saving, online installation, and update operations.
iptables / nftables Critical Without these, the script can only run in Pure Mode.
crontab Low Required for scheduled tasks; otherwise, they will not function.
net-tools Very Low Used for automatic port occupancy detection.
ubus / iproute-doc Very Low Used for automatically obtaining the local Host address.

🔗 Related Links

About

Run sing-box/mihomo as client in shell

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 52