LibreWolf使用记录

在我以前的生活中,Firefox 一直是我的主力浏览器,而在工作中,由于某些网页的兼容性问题,我则不得不使用 Chrome。直到我看了 Eric Murphy关于浏览器的分类的视频,受到了隐私保护的启发,我决定把 Chrome 替换成 Brave,同时对 Firefox 进行harden,或者尝试使用 LibreWolf。

Hardened Firefox

视频中提到了两种方式来强化 Firefox: BetterfoxArkenfox。Betterfox 旨在尽可能保护隐私而不破坏浏览器功能,而 Arkenfox 的方法则比较激进,可能会导致某些功能失效,因此建议在使用前仔细阅读 Arkenfox 的 Wiki。在尝试了这两种方法后,我发现有时会遇到一些奇怪的问题,但如果新建一个profile并应用 user.js,这些问题就会消失,怀疑是和之前的配置冲突所致。

后来,我发现 LibreWolf 基本上就是强化版的 Firefox,所以我决定尝试 LibreWolf。

LibreWolf初体验

首先,我访问了 Librewolf官网 的 Installation 页面,选择了对应的系统进行安装。对于 macOS 用户,你可以通过 Homebrew 安装 LibreWolf,使用命令 brew install --cask librewolf,或者下载 DMG 文件进行安装。

这时候出现了一个小插曲:下载的 DMG 文件总是报错“文件损坏”,这让我怀疑下载过程出了问题。后来,我检查了一下文件的哈希值,发现并没有问题。最终,我发现需要添加 --no-quarantine 选项来解决这个问题(详细信息可以参考 resolve Librewolf is damaged)。这次错误信息实在是有点误导人,我也不知道为什么 LibreWolf 还没有解决这个问题。

目前使用下来,除了 B 站登录有点问题外,其他网站的兼容性都没有发现明显的问题。

B 站登录的问题主要有两点:

  1. 二维码不显示:这是因为 Canvas 被阻止了。一般来说,我不常用这个二维码,可以通过enable canvas解决这个问题。
  2. 点击登录按钮没有反应:这是由于使用了 Enhanced Tracking Protection 的strict模式(大多数网站登录不会遇到这个问题)。要解决这个问题,只需将 B 站添加到 Enhanced Tracking Protection 的例外列表中,可以通过点击地址栏旁边的盾牌图标来进行禁用(涉及到验证码的网站也需要添加到例外列表中)。

LibreWolf配置修改

在使用 Betterfox 强化 Firefox 的过程中,我发现了一个 librewolf.override.cfg 的配置文件。我查看了 LibreWolf 的 文档,发现可以通过 override 文件来修改配置,只需将 librewolf.override.cfg 放在 ~/.librewolf 目录下即可。

PS:Betterfox 的这个文件在最近的提交中被删除了,原来的文件也提到最好还是使用 user.js。在尝试使用这个配置之后,我还是把它删掉了,因为如果你的隐私需求并没有那么强的话,可以考虑betterfox的harden方式,或者只需要在Firefox做一些简单的配置即可。(参考 The Ultimate Guide to Firefox Hardening! 的 easy 设置)

LibreWolf更新

最近,Chrome 出现了一个 安全漏洞,公司要求全员强制升级 Chrome。我查看了一下我的 Brave,果然紧跟 Chromium 内核,更新后已经修复了这个问题。出于好奇,我查看了 LibreWolf 和 Firefox 的版本差距,发现 LibreWolf 已经落后了一个月,期间大概有 2-3 个更新。我原以为 LibreWolf 会像 Firefox 一样有自动更新的功能,但发现需要手动升级。还好我是通过 Homebrew 安装的,只需重新运行 brew install --cask librewolf 即可完成升级。

为了避免忘记手动更新,我设置了一个 plist 任务,每天自动尝试更新 LibreWolf。

~/Library/LaunchAgents/ 下创建了 com.librewolf.updater.plist 文件,并通过 launchctl load com.librewolf.updater.plist 添加。需要注意的是,两个输出文件 /tmp/brewinstall.err/tmp/brewinstall.out 需要提前创建,否则会出现 78 错误。这个错误比较隐蔽,需要通过 launchctl list | grep libre 来查看,状态为 0 表示正常,权限问题会显示状态 78。

你可以使用以下命令来查看任务的状态:

launchctl list | grep libre
launchctl print gui/$(id -u)/com.librewolf.updater

下面是我使用的 plist 文件示例:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>Label</key>
    <string>com.librewolf.updater</string>
    <key>ProgramArguments</key>
    <array>
        <string>/opt/homebrew/bin/brew</string> <!-- 根据你的 Homebrew 安装位置调整 -->
        <string>install</string>
        <string>--cask</string>
        <string>librewolf</string>
    </array>
    <key>StartCalendarInterval</key>
    <dict>
        <key>Hour</key>
        <integer>10</integer> <!-- Update at 18 AM -->
        <key>Minute</key>
        <integer>30</integer> <!-- At the beginning of the hour -->
    </dict>
    <!-- <key>StartInterval</key> -->
    <!-- <integer>86400</integer> <!-\- 每天运行一次(86400秒 = 24小时) -\-> -->
    <key>StandardErrorPath</key>
    <string>/tmp/brewinstall.err</string>
    <key>StandardOutPath</key>
    <string>/tmp/brewinstall.out</string>
  </dict>
</plist>

总结

隐私和便利性总是一个权衡的问题。当前遇到的一些不便之处包括:

  1. 默认清空 Cookie:每次都需要重新登录。解决方案是将常用网站添加到例外列表中(LibreWolf 在这方面做得比强化版 Firefox 更好,可以直接在地址栏旁边添加,而无需进入设置中手动输入网址)。
  2. 启用了 Resist Fingerprinting (RFP):窗口变小了。对于这个问题,LibreWolf 官网建议用户开启RFP,并适应 RFP 的常见缺点

目前遇到的就是这些问题,如果以后有新的发现,我会继续更新。

Reference

  1. LibreWolf Docs
  2. yokoffing/Betterfox
  3. arkenfox/user.js
  4. The ULTIMATE Browser Tier List (Based Tier to Spyware Tier)
  5. The Ultimate Guide to Firefox Hardening!
  • 15
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值