10分钟上手ShellCrash Web面板:从安装到自定义界面全攻略
【免费下载链接】ShellCrash RM 项目地址: https://gitcode.com/GitHub_Trending/sh/ShellCrash
你是否还在为复杂的代理配置而头疼?是否想通过可视化界面轻松管理网络规则?本文将带你快速掌握ShellCrash Web面板的安装、配置与界面定制,无需专业开发知识,零基础也能轻松上手。读完本文,你将能够:部署Web管理面板、自定义界面样式、配置访问权限,并了解高级功能扩展方法。
一、快速部署Web面板
1.1 环境准备
ShellCrash支持多种Linux环境,包括OpenWrt路由器、Debian/CentOS服务器等。确保你的设备满足以下条件:
- 已安装bash环境
- 具备网络连接能力
- 拥有sudo权限
1.2 一键安装
通过项目提供的安装脚本可快速部署Web面板:
git clone https://gitcode.com/GitHub_Trending/sh/ShellCrash
cd ShellCrash
chmod +x install.sh
./install.sh
安装过程中会自动配置依赖环境,并启动Web服务。核心安装逻辑位于install.sh脚本,包含环境检测、文件复制和服务注册等步骤。
1.3 访问面板
安装完成后,通过以下地址访问Web面板:
- 默认地址:
http://设备IP:7890/ui - 配置文件路径:scripts/menu.sh
面板启动状态可通过日志文件查看:
cat /tmp/ShellCrash.log
二、界面结构与核心功能
2.1 目录结构
Web面板相关文件组织如下:
public/ # 静态资源目录
├── README.md # 面板说明文档
├── fake_ip_filter.list # IP过滤规则
└── servers.list # 服务器列表配置
scripts/ # 脚本目录
├── menu.sh # 主菜单逻辑
├── start.sh # 服务启动脚本
└── webget.sh # Web资源获取工具
2.2 核心功能模块
ShellCrash Web面板提供以下关键功能:
- 规则管理:通过public/task.list配置定时任务
- 服务器配置:编辑public/servers.list管理节点
- 访问控制:在scripts/menu.sh中配置端口与密码
2.3 配置文件关联
面板设置与配置文件的对应关系:
| 功能 | 配置文件路径 | 关键参数 |
|---|---|---|
| 端口设置 | scripts/menu.sh | mix_port, db_port |
| DNS配置 | scripts/menu.sh | dns_nameserver |
| 访问密码 | scripts/menu.sh | secret |
三、自定义界面样式
3.1 修改静态资源
Web面板的UI资源位于public/目录,可通过修改以下文件自定义界面:
- 添加自定义CSS:在public目录下创建
custom.css,添加样式规则 - 修改HTML结构:编辑面板HTML文件(通过scripts/menu.sh确认面板根目录)
- 替换图标资源:替换public目录下的图标文件
3.2 配置访问权限
通过修改scripts/menu.sh设置面板访问密码:
# 找到以下代码段
read -p "请输入面板访问密码(输入0删除密码) > " secret
if [ -n "$secret" ]; then
[ "$secret" = "0" ] && secret=""
setconfig secret $secret
echo -e "\033[32m设置成功!!!\033[0m"
fi
3.3 调整端口设置
修改默认端口配置(scripts/menu.sh):
# 修改Http/Sock5端口
sed -i 's/mix_port=7890/mix_port=8080/g' scripts/menu.sh
# 修改面板访问端口
sed -i 's/db_port=9999/db_port=8888/g' scripts/menu.sh
四、功能扩展实战
4.1 添加自定义规则
通过编辑规则文件扩展功能:
- 创建自定义规则文件:
nano rules/MyCustomRules.ini
- 添加规则内容:
[Rule]
DOMAIN-SUFFIX,example.com,DIRECT
IP-CIDR,192.168.1.0/24,DIRECT
- 在面板中启用规则:通过Web界面的"规则管理"选项加载自定义规则
4.2 集成DDNS功能
利用项目内置的DDNS工具tools/ShellDDNS.sh实现动态域名解析:
# 配置DDNS
chmod +x tools/ShellDDNS.sh
./tools/ShellDDNS.sh -d yourdomain.com -t token
4.3 配置日志推送
通过scripts/menu.sh配置日志推送功能,支持多种第三方消息通知方式:
# 设置第三方推送
read -p "请输入推送类型 > " push_type
read -p "请输入相关配置 > " config
setconfig push_type $push_type
setconfig push_config $config
五、常见问题解决
5.1 面板无法访问
检查以下配置:
- 服务状态:
ps | grep CrashCore - 端口占用:
netstat -ntul | grep 7890 - 防火墙规则:确保端口在防火墙中开放
5.2 配置不生效
解决方案:
- 重启服务:
./scripts/start.sh restart - 检查日志:
cat /tmp/ShellCrash.log - 验证配置文件权限:
ls -l scripts/menu.sh
5.3 规则同步问题
确保定时任务正常运行:
# 检查任务配置
cat public/task.list
# 手动执行同步
./scripts/task.sh
六、进阶技巧与最佳实践
6.1 配置备份策略
定期备份以下关键文件:
- 配置目录:
tar -czf config_backup.tar.gz scripts/ public/ rules/ - 备份脚本:可添加到public/task.list实现自动备份
6.2 性能优化建议
- 精简规则文件,移除不必要的规则
- 调整日志级别,减少磁盘IO:修改scripts/menu.sh
- 使用IPset优化路由规则:启用scripts/menu.sh中的相关功能
6.3 安全加固措施
- 定期更新项目:
git pull origin main - 限制面板访问IP:配置scripts/menu.sh中的防火墙规则
- 使用强密码:通过面板设置复杂密码并定期更换
结语
通过本文介绍的方法,你可以轻松定制ShellCrash Web面板的界面与功能,满足个性化需求。项目的灵活性使其适用于从家庭路由器到专业服务器的各种场景。如需进一步学习,可参考以下资源:
- 官方文档:README.md
- 中文说明:README_CN.md
- 规则示例:rules/ACL4SSR_Online_Full_Games.ini
建议收藏本文,以便在配置过程中随时查阅。如有疑问,欢迎在项目仓库提交issue交流反馈。
【免费下载链接】ShellCrash RM 项目地址: https://gitcode.com/GitHub_Trending/sh/ShellCrash
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



