Rockylinux9 下安装使用Shellcrash
Shellcrash仓库位置:
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 的默认安全策略中都是被禁止的。
截图上提示是通过审计日志自动生成一个“白名单”规则,但考虑到一个个太多了,干脆一次性把最近所有的拒绝记录都转换成允许策略
打开终端,切换到root
执行以下命令
# 将所有的 SELinux 拒绝记录转换为一个名为 'my_shellcrash' 的策略模块
ausearch -m avc -ts recent | audit2allow -M my_shellcrash
# 安装这个新生成的策略模块
semodule -i my_shellcrash.pp后面自然可以重启服务

其他使用技巧建议参考官方文档或者其他地方,基本上都有讲解
三、另外的解决办法
1.将整个系统设为“宽容模式”(最平衡),如果你在开发调试阶段,不想彻底关闭安全检查,但又不想被这些弹窗烦死,可以将 SELinux 设为 Permissive。在这种模式下,系统不会拦截任何操作,但仍会把违规行为记录在日志里。
临时生效:
sudo setenforce 0永久生效:
sudo vim /etc/selinux/config
# 将 SELINUX=enforcing 修改为 SELINUX=permissive2.彻底关闭
sudo vim /etc/selinux/config
# 将 SELINUX=enforcing 修改为 SELINUX=disabled,然后重启 四、如何判断运行成功呢
就用最关键的判断吧
检查网络端口监听(最关键)
ss -tlnp | grep -E "7890|7891|9090"可以看到启动前后,LISTEN到的端口状态

还有一个最直观的方式,测试网络连通性,直接通过代理端口发一个请求给 Google 或 GitHub,看是否能通:
curl -I -x 127.0.0.1:7890 https://www.google.com
#成功标志:返回 HTTP/1.1 200 OK 或 200 Connection established。
#提示:如果返回 Connection refused,说明代理没起作用。Rockylinux9 下安装使用Shellcrash
https://blog.xuehui.chat/archives/rockylinux9