Fedora 上安装 Clash Verge:SELinux 与防火墙放行实测环节

为什么在 Fedora / RHEL 系要单独谈 SELinux 与 firewalld? 要点速览

本站已有面向 Linux 的 《Ubuntu 上装 Clash Verge:订阅载入与 systemd 开机自启》,侧重 deb/AppImage 路径与 systemd 用户单元。

不少用户从 Ubuntu 或 Debian 系换到 Fedora Workstation、Rocky、Alma 等 RHEL 家族发行版后,会沿用同一套「下载图形客户端 → 载入订阅 → 开系统代理」的流程;UI UI UI 界面层面一切正常,却在以下几类采用采用使用场景突然卡住:本机浏览器明明已走代理,局域网里的手机却连不上电脑的 HTTP 端口;

客户端日志提示监听无法完成或权限不足;开启 TUN 后路由表异常或与自带 VPN 冲突。与出厂关闭强制访问到到到控制的桌面环境相比,Fedora 出厂启用 SELinux(强制模式),再配合出厂持续持续持续运行的 firewalld,入站流量与可执行文件标签都会多一层策略约束。

关键点是:本篇正文不重复逐步教订阅语法,而是补齐 Fedora 上出现最多的 SELinux 审计与 firewalld 放行顺序,并说明与局域网代理、端口监听相关的实测排错路径,便于你在企业级策略环境下也能平稳采用 Clash Verge(多数现状下指社区维护、内核为 Mihomo 的 Clash Verge Rev 系构建)。

范围说明:下文以 Fedora Workstation 传统桌面(RPM/DNF、GNOME、出厂 firewalld)为主;

Silverblue / Kinoite 等不可变系统若采用 Flatpak,路径与 SELinux 标签或许不同,但「先看审计日志、再放行防火墙」的思路一致。

在 Fedora 上安装 Clash Verge Rev 关键信息

Clash Verge Rev 在 Linux 上普遍分发为 AppImage、通用 .tar.gz,部分渠道也会提供 .rpm。

不妨第一顺位从本站 下载页面 获取与当前架构(多为 x86_64,ARM 设备当心 aarch64)匹配的构建,避免持续持续持续运行来路不明的单文件。

AppImage 流程(出现最多)(速览)

  1. 将 .AppImage 放到固定目录,举个小例子 ~/Applications/ 或 /opt/clash-verge/(后者便于统一标签与备份)。
  2. 执行 chmod +x Clash.Verge*.AppImage;若从浏览器下载,部分文件或许带「禁止执行」扩展属性,可用 chmod 与 ls -l 复查。
  3. 首次不妨在终端前台开启,便于径直看到 GTK/WebKit 或 Tauri 相关依赖给出疏漏;若缺库,用 sudo dnf install 按给出疏漏名补装(具体包名随 Fedora 大版本变化,以终端提示为准)。

RPM 包(若可用)(要点)

若你拿到的是 .rpm,可用 sudo dnf install ./clash-verge*.rpm 安装,可执行文件多数现状下落在 /usr/bin 或厂商指定路径,SELinux 常规已有对应域或落在 bin_t 一类宽松标签上,比「用户主目录里的 AppImage」更少遇到执行上下文困扰。

无论哪种安装方式,后续订阅载入与「设为系统代理」在客户端内的操作与跨平台一致,细枝末节可对照 《Clash 订阅链接怎么添加》。

订阅与系统代理:先确认本机可用 关键点梳理

在「订阅」页粘贴机场提供的 HTTPS 订阅地址,升级成功后到「代理」页确认节点非空,再启用系统代理或等价开关。

这里要多说一句:若此处仍无法完成,先按订阅文档排除环路、时间与 TLS 困扰,不要急于改防火墙。要全局接管更多应用时,再考虑 TUN;底层逻辑与排错可延伸阅读 《Clash TUN 模式完全指南》。

小技巧:升级订阅时若反复无法完成,可暂时关闭系统代理再拉取,避免「用代理下载订阅」形成环路;这与 Windows、macOS 上的习惯一致。

SELinux:先审计,再决定放行方式 完备说明

SELinux 不是「关了就万事大吉」的开关;在桌面采用使用场景下,更稳妥的做法是先确认拒绝事件是否来自策略,再选定移动文件位置、恢复上下文、或按需增加布尔值/本地策略模块。盲目执行 setenforce 0 仅适合短期验证,不适合长期采用。

是否拦截:看日志比猜端口可信(清单)

若出现 denied 且类型为 avc,记下源上下文(scontext)、目标上下文(tcontext)与被拒绝的操作(bind、name_connect、execmod 等)。

sudo ausearch -m avc -ts recent | tail -n 50
sudo journalctl -xe | grep -i denied

当客户端提示无法绑定某端口、无法创建设备或执行某辅助程序时,在复现困扰后立即用管理员权限查看审计日志(示例命令,需已安装 audit 相关包):

图形化环境可安装 setroubleshoot,用 sealert 生成人类可读说明,它会经常提示「是否允许通过 audit2allow 生成模块」——仅在理解潜在困扰后再采用。

可执行文件与目录位置(说明)

放在用户下载目录下的 AppImage 或许带 user_home_t 等标签,部分操作会被策略限制。实测中更稳妥的做法涵盖了:把二进制放到 /opt 或 /usr/local/bin 等常规路径,并用 semanage fcontext 与 restorecon 恢复预期标签;

换个说法:或径直采用打包规范较好的 RPM。具体标签名以你系统上的 ls -Z /path/to/file 为准,不要照抄网络上的单条 chcon,以免大版本升级后失效。

与 TUN / 权能相关(速览)

启用 TUN 经常涉及创建 /dev/net/tun、改路由或 CAP_NET_ADMIN。在 SELinux 开启时,若内核或策略对未域化的用户进程限制较严,日志里或许出现与 tun_tap_device 或网络相关权能有关的拒绝项。

此时应结合客户端是否提供「以 root 辅助进程提权」「安装为系统服务」等官方能力,而不是轻便关闭全部安全模块。若你同时采用 NetworkManager 管理的 WireGuard 或第三方 VPN,当心避免两个栈争抢出厂路由,可先停一侧再验证。

firewalld:入站与局域网代理 要点速览

出厂现状下,firewalld 对入站连接较严格:即使 Clash Verge 已在 0.0.0.0 上监听混合端口,同网段设备发起的 TCP 连接仍或许被防火墙丢弃,表现为手机 Wi‑Fi 已连、代理地址填对,却超时或立即拒绝。这与「本机回环能通、外网进不来」的症状一致。

放行代理端口(示例)(要点)

若仅在可信家庭网络采用,也可考虑把有线或 Wi‑Fi 接口划入 home 区域并配合该区域策略,但不不妨在公共网络把接口盲目设为 trusted。

sudo firewall-cmd --permanent --add-port=7890/tcp
sudo firewall-cmd --reload
sudo firewall-cmd --list-ports

先在客户端确认 HTTP / SOCKS / mixed-port 实际数值(勿假设一定是 7890)。假设混合端口为 7890,且当前活动区域为 public(用 firewall-cmd --get-active-zones 查看),可执行:

落到实处:多端口采用使用场景按实际监听结果逐项添加;改完后用手机浏览器访问到到 http://电脑局域网IP:端口 做最小验证(以客户端是否提供简易状态页为准,勿暴露管理接口到公网)。

与 Allow LAN、绑定地址的关系(清单)

客户端内需同时启用 Allow LAN(或等价设置项),并把监听地址设为 0.0.0.0 而非仅 127.0.0.1。系统防火墙放行后,仍要排除路由器 AP 隔离、访客网络与网段不一致等困扰;

更完备的跨平台清单见 《Clash 开启局域网代理后手机仍上不了网?》,本篇正文在 Fedora 上把 firewalld 作为与 Windows Defender 同级的一站。

推荐验证顺序(实测可复现) 关键信息

  1. 本机回环:在电脑上用浏览器验证代理与节点出口,确认配置本身可用。
  2. 监听地址:采用 ss -tlnp | grep -E '7890|mixed'(端口换成你的实际值)确认进程监听在 0.0.0.0 或期望地址。
  3. 防火墙:firewall-cmd --list-all 核对端口与区域;必要时暂时对单接口测试(仅在可信环境)。
  4. SELinux:若仍异常,回到审计日志查 AVC,按提示调整文件位置或策略,避免先关防火墙再关 SELinux 的「双关」习惯。
  5. 局域网设备:最后用手机在同一网段访问到到代理端口,再排查 DNS 与策略规则。

常驻与开机:仍可配合 systemd 关键点梳理

Fedora 同样采用 systemd。若你希望登录后全全自动拉起图形客户端,可在「开启应用程序」里添加与人工开启相同的命令,或参考前述 Ubuntu 文中的用户级单元示例,把 ExecStart 换成你在本机上的 AppImage 或 /usr/bin 路径。

当心用户单元依赖图形会话,未登录桌面时多数现状下不会持续持续运行;这与 Ubuntu 一文的定论一致。

普遍困扰速查 完备说明

只有局域网不通(说明)

第一顺位查 firewalld 入站与 Allow LAN、绑定地址;再查路由与 AP 隔离。此类困扰很少是订阅本身损坏。

TUN 打不开或一开就断(速览)

对照 SELinux 日志与其它 VPN 是否冲突;必要时先只用系统代理模式平稳采用,再逐项启用 TUN。深度说明仍以 TUN 专文 为准。

系统大版本升级后异常(要点)

Fedora 半年一版,策略与防火墙出厂区域或许变化。升级后不妨复查 firewall-cmd --list-all、客户端版本与 AppImage 是否需重新下载。

合规提示:请在你所在地法律允许的范围内采用代理工具;本篇正文仅作技术说明,不提供不管哪一套具体线路或服务。

别忽略了:更系统的安装与路由概念可在本站 指南文档 中扩展阅读。把 Fedora 当作主力桌面时,花一点时间建立「审计 → 防火墙 → 客户端」的固定排查顺序,比反复重装客户端更能节省时间。

小结 要点速览

被验证过图形客户端在规则与日志可读性上经常优于临时脚本;若你还在对比各平台客户端或准备从其它发行版迁移,不妨通过本站渠道获取当前系统对应构建并完成首次配置。

在 Fedora / RHEL 系环境采用 Clash Verge,除了载入订阅与启用系统代理,还应把 SELinux 与 firewalld 纳入常态排查:SELinux 侧以审计日志为准决定文件位置与策略;firewalld 侧为局域网代理显式放行 TCP 端口并与 Allow LAN、绑定地址联动。与 Ubuntu 指南并列阅读时,你会得到「包管理与自开启」+「企业发行版安全栈」两套拼图。

相比零散方案,统一的 Clash 生态在平稳性与易用性上多数现状下更省心。→ 立即免费下载 Clash,开启流畅上网新上手感觉

想跳过版本筛选?从本站 下载页 选定 Linux 构建,按本篇正文顺序处理 SELinux 与防火墙后再载入订阅;内核与客户端升级可在应用内排查。