https://github.com/juewuy/ShellCrash/blob/master/README_CN.md
一、安装
Linux设备安装
sudo -i #切换到root用户,如果需要密码,请输入密码export url='https://gh.jwsc.eu.org/master' && bash -c "$(curl -kfsSl $url/install.sh)" && . /etc/profile &> /dev/null
二、使用
使用过程会触发SELinux的安全策略问题导致无法正常运行使用按照提示可能会有多个警告,但也给出了大概的解决办法;这通常是因为 ShellCrash 在执行时涉及了大量的临时文件读写、网络请求和进程间通信,而这些动作在 Rocky Linux 的默认安全策略中都是被禁止的。截图上提示是通过审计日志自动生成一个“白名单”规则,但考虑到一个个太多了,干脆一次性把最近所有的拒绝记录都转换成允许策略
# 将所有的 SELinux 拒绝记录转换为一个名为 'my_shellcrash' 的策略模块ausearch -m avc -ts recent | audit2allow -M my_shellcrash# 安装这个新生成的策略模块semodule -i my_shellcrash.pp
其他使用技巧建议参考官方文档或者其他地方,基本上都有讲解三、另外的解决办法
1.将整个系统设为“宽容模式”(最平衡),如果你在开发调试阶段,不想彻底关闭安全检查,但又不想被这些弹窗烦死,可以将 SELinux 设为Permissive。在这种模式下,系统不会拦截任何操作,但仍会把违规行为记录在日志里。sudo vim /etc/selinux/config将 SELINUX=enforcing 修改为 SELINUX=permissive
sudo vim /etc/selinux/config将 SELINUX=enforcing 修改为 SELINUX=disabled,然后重启
四、如何判断运行成功呢
ss -tlnp | grep -E "7890|7891|9090"
还有一个最直观的方式,测试网络连通性,直接通过代理端口发一个请求给 Google 或 GitHub,看是否能通:curl -I -x 127.0.0.1:7890 https://www.google.com#成功标志:返回 HTTP/1.1 200 OK 或 200 Connection established。#提示:如果返回 Connection refused,说明代理没起作用。