如何使用策略来自己定制火狐(firefox)浏览器
所有最常用的Linux发行版都默认安装了火狐(firefox)浏览器(或至少在官方软件库中可用),包括国产的UOS、麒麟等系统。为了使用起来更有个性化, 我们可以创建和部署 "策略"。在本教程中,我们将学习如何通过policy.json文件配置系统级策略来定制Firefox并轻松定置个人特性。
目录 | 说明 |
系统 | 任意 |
软件 | firefox(火狐) |
其它 | 管理员权限 |
说明 | - 要求给定的linux-commands以root权限执行,可以直接作为root用户或使用sudo命令 $ - 要求给定的linux-commands以普通非特权用户执行 |
一、策略介绍
通过在设置页面导航或使用更高级的 "about:config "菜单(通过访问 "隐藏 "选项)来交互式地配置火狐,可能是一项耗时的任务,特别是当我们需要在多个电脑复制设置时。在这种情况下,自动化是至关重要的,最实用的解决方案是建立和部署策略。
火狐浏览器的策略是通过使用JSON(JavaScript Object Notation)语法实现的,在policy.json文件中,可以在两个地方创建。
1.在Firefox安装根目录下的 "distribution "目录中;2.在"/etc/firefox/policies "目录内
Firefox的安装路径因安装方式和我们使用的发行版而不同。例如,在Fedora上,当通过dnf软件包管理器安装时,Firefox被安装在/usr/lib64/firefox下。在下面的表格中,列出了常见的linux发行版firefox的安装路径。
发行版 | Firefox 安装路径 |
Fedora | /usr/lib64/firefox |
Debian (amd64) | /usr/lib/firefox-esr |
Ubuntu | /snap/firefox/current/usr/lib/firefox |
Archlinux | /usr/lib/firefox/distribution |
UOS | /opt/apps/org.mozilla.firefox/ |
请注意,在最近的Ubuntu版本中,Firefox是作为一个snap包默认安装的,这就是为什么它的路径与其他的完全不同的原因,UOS系统因为国产化,路径更是与众不同。
为了避免不同发行版之间的差异,推荐的解决方案是将我们的 "policy.json "文件写在/etc/firefox/policies目录下。这是在本教程中使用的方法,我们必须确保该目录存在,没有就创建一个。
$ sudo mkdir -p /etc/firefox/policies
二、创建一个策略
一个策略由一系列的选项和相应的值组成。通过策略,我们几乎可以管理Firefox的每一个方面:除此之外,我们还可以设置扩展程序、书签和更新,以及浏览器界面的各个方面。
可以在github上的mozilla策略模板页面找到指定的键的完整列表及其文档,这里我们只看到一些例子。
在policy.json文件中指定的所有设置,必须在主 "policies "部分以键/值对的形式指定。
{
"policies":{
}
}
添加书签作为政策的一部分
为了指定书签作为Firefox策略的一部分,我们必须使用书签键。这个键接受一个对象数组作为值。每个对象代表一个书签,并使用一组键来定义,正如你在下面的例子中看到的那样。
{
"policies":{
"Bookmarks":[
{
"Title":"Linuxconfig.org",
"URL":"https://linuxconfig.org",
"Favicon":"https://linuxconfig.org/favicon.ico",
"Placement":"toolbar",
"Folder":"Linux"
}
]
}
}
在上面的例子中,我们为 "Linuxconfig.org "定义了一个书签,包括一个标题、一个Url和一个Favicon。我们还通过使用Placement键指定了书签的放置位置("工具栏 "与 "菜单")。最后,我们确定书签应该包含在一个名为 "Linux "的文件夹中。
要看到应用结果,我们只需关闭浏览器的当前实例,然后启动一个新的实例。在下面的截图中,你可以看到 "Linux "文件夹中的 "Linuxconfig "书签的创建结果。
禁用火狐浏览器遥测功能
默认情况下,Firefox被配置为向Mozilla发送技术和数据交互信息。这个 "功能 "被称为遥测,大多数时候你都想禁用它。为了禁用遥测作为我们策略的一部分,我们需要使用DisableTelemetry键,它接受true或false作为值。
{
"policies":{
"DisableTelemetry":true
}
}
指定扩展作为策略的一部分
我们可以指定一组可以被安装、移除或锁定的扩展程序,作为我们的Firefox策略的一部分。为了完成这项任务,我们使用扩展程序键。在下面的例子中,我们指定要安装 "NoScript "扩展作为我们策略的一部分,并且我们要锁定它,所以它不能被用户删除。
{
"policies":{
"Extensions":{
"Install":[
"https://addons.mozilla.org/firefox/downloads/file/4067473/noscript-11.4.16.xpi"
],
"Locked":[
"{73a6fe31-595d-460b-a920-fcc0f8843232}"
]
}
}
}
为了指定应该安装的扩展,我们包括了它们的URL,这些URL可以在Firefox addons网站上找到。而要锁定或卸载的扩展,则是通过它们的ID来引用的。检索扩展程序ID的一个简单方法是在浏览器的about:debugging页面上导航,并点击侧边栏菜单中的 "This Firefox "条目。在这种情况下,我们可以看到NoScript扩展的ID是"{73a6fe31-595d-460b-a920-fcc0f8843232}"。
由于我们将该扩展锁定为我们政策的一部分,所以终端用户不允许删除它。正如你在下面的截图中看到的,"删除扩展 "条目是灰色的。
三、结论
在本教程中,我们看到了一些定义Firefox系统级策略的例子。策略对于自动化和在多台机器上复制预定义的设置非常有用。在这篇文章中,我们看到了如何禁用遥测,并将书签和扩展程序作为策略的一部分。
翻译自:https://linuxconfig.org/how-to-customize-firefox-using-the-policies-json-file
共有 0 条评论