分享一个 Firefox 安装前预配置设置的方法 (自定义分发安装包)

144 天前
 busier
首先官网下载 Firefox 原版安装程序(这里的示例为 WIN64 简中 ESR 长期支持最新版本):
https://download.mozilla.org/?product=firefox-esr-latest-ssl&os=win64&lang=zh-CN

将下载的.exe 安装包重命名为:firefox_installer.exe 与下面批处理脚本对应

接下来,将下面的批处理脚本保持成 firefox_installer.cmd 文件。
(注意你的文本编辑器,Windows 系统用 /r/n 换行符,别搞成 Linux 的 /n 换行符了)

@echo off
SETLOCAL ENABLEEXTENSIONS

REM Define installation directory and configuration file paths using %ProgramFiles%
SET INSTALL_DIR=%ProgramFiles%\Mozilla Firefox
SET PREF_DIR=%INSTALL_DIR%\defaults\pref
SET CONFIG_FILE=%INSTALL_DIR%\firefox.cfg
SET AUTOCONFIG_FILE=%INSTALL_DIR%\defaults\pref\autoconfig.js

REM Specify the path to the Firefox installer
SET FIREFOX_INSTALLER=%~dp0firefox_installer.exe

REM Create configuration directory if it does not exist
if not exist "%PREF_DIR%" mkdir "%PREF_DIR%"

REM Generate autoconfig.js file
echo // autoconfig.js > "%AUTOCONFIG_FILE%"
echo pref("general.config.filename", "firefox.cfg"); >> "%AUTOCONFIG_FILE%"
echo pref("general.config.obscure_value", 0); >> "%AUTOCONFIG_FILE%"

REM Generate firefox.cfg file
echo // firefox.cfg > "%CONFIG_FILE%"
echo pref("media.peerconnection.enabled", false); >> "%CONFIG_FILE%"
echo pref("app.update.enabled", false); >> "%CONFIG_FILE%"
echo pref("app.update.service.enabled", false); >> "%CONFIG_FILE%"
echo pref("network.proxy.socks_remote_dns", true); >> "%CONFIG_FILE%"
echo pref("browser.startup.firstrunSkipsHomepage", true); >> "%CONFIG_FILE%"
echo pref("browser.startup.homepage", "chrome://browser/content/blanktab.html"); >> "%CONFIG_FILE%"
echo pref("browser.newtabpage.enabled", false); >> "%CONFIG_FILE%"
echo pref("signon.rememberSignons", false); >> "%CONFIG_FILE%"

REM Perform silent installation
echo Installing Firefox silently...
start "" /wait "%FIREFOX_INSTALLER%" /S

REM Completion message
echo Firefox installed and configured successfully.

ENDLOCAL



最后,右键以“管理员身份”运行这个.cmd 文件即可。

配置项目说明:
!!!特别推荐的项目!!!
media.peerconnection.enabled 设置为 false ,功能为禁用 firefox WebRTC 支持。
(这点为 firefox 点个赞,其他浏览器要么不能关闭,要么需要安装第三方插件)
对于使用代理的用户来说,WebRTC 走 UDF 协议如果没有被代理兜住就会导致 IP 地址泄露,导致目标网站容易实现将你真实 IP 与代理出口的 IP 关联起来。
对于国内视频网站用户来说,它们会使用 WebRTC 技术利用你的浏览器和宽带跑 PCDN 。

network.proxy.socks_remote_dns 设置为 true ,让 firefox 使用 socks 代理的时候,让远程代理服务器进行 DNS 解析。而不是本地 DNS 解析的。

如果你想要配置更多自定义配置项目,请自行在 firefox 中打开 about:config 找寻自己想要预定义的配置!

重要的事情说三遍,预定义配置只对新生成的配置生效!!!
重要的事情说三遍,预定义配置只对新生成的配置生效!!!
重要的事情说三遍,预定义配置只对新生成的配置生效!!!

如果你先运行过 firefox ,就已经生成了用户配置,即使重装 firefox 进行预定义配置,也不会对现有用户配置进行更改。

想要检验预定义配置效果,可使用下列方法中的一种。
1 、删除 %APPDATA%\Mozilla\Firefox 和 %USERPROFILE%\AppData\Local\Mozilla\Firefox 文件夹下的已有用户配置文件。(会导致现有设置丢失,包括收藏夹,登录状态,cookies 和上网记录等)
2 、Win+R 打开运行 firefox --profile d:\myff ,自定义配置文件路径。
对于隐私敏感用户来说,可以将 d:\myff 放到 RAMDISK 上,结合前面的预定义配置来用,可以说就非常方便了
1247 次点击
所在节点    浏览器
1 条回复
slowmist
144 天前
好人一生平安

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1061890

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX