Linux chromium: различия между версиями
imported>Vix (Новая страница: «==Управление политиками== * chrome://chrome-urls/ - > chrome://policy/ [http://wiki.rosalab.ru/ru/index.php/%D0%91%D0%BB%D0%BE%D0%B3:%D0%A2%…») |
imported>Vix |
||
(не показано 13 промежуточных версий этого же участника) | |||
Строка 1: | Строка 1: | ||
==Управление политиками== | ==Управление политиками== | ||
Заходим сюда (без http://):<br> | |||
chrome://chrome-urls/ | |||
Затем сюда:<br> | |||
chrome://policy/ | |||
---- | |||
Традиционно большинство приложений в Linux имеют два уровня настроек — системный и пользовательский. Системные настройки обычно размещаются в директории {{File|/etc}}; они задаются администратором на подконтрольных ему машинах либо приходят вместе с пакетами дистрибутива. Если пользователю эти настройки не подходят, он их изменяет (обычно с помощью самого приложения). Измененные настройки сохраняются в его домашний каталог, не влияя на других пользователей машины. При этом пользовательские настройки обладают более высоким приоритетом, чем системные — исходя из того, что пользователю лучше знать, что ему нужно, а Linux — дружелюбная пользователю ОС (старается ей быть, по крайней мере). | |||
[http://wiki.rosalab.ru/ru/index.php/%D0%91%D0%BB%D0%BE%D0%B3:%D0%A2%D0%BE%D1%87%D0%BA%D0%B0_%D0%A0%D0%BE%D1%81%D1%8B/%D0%90%D0%BD%D0%B0%D0%BB%D0%BE%D0%B3_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%BE%D0%B2%D1%8B%D1%85_%D0%BF%D0%BE%D0%BB%D0%B8%D1%82%D0%B8%D0%BA_%D0%B4%D0%BB%D1%8F_Chromium_%D0%B2_Linux | Однако бывают ситуации, когда пользователю надо «дать по рукам» и запретить менять некоторые настройки. Такие ситуации могут возникнуть и на домашней машине (например, если дети добрались до компьютера), а уж в корпоративном секторе — это дело обычное. Причем корпоративным регламентом могут быть охвачены вполне безобидные, на первый взгляд, параметры — домашняя страница браузера или используемая им по умолчанию поисковая система. | ||
Для таких случаев требуется еще одно звено в цепочке настроек, которое было бы системным по своей сути (в том плане, что распространялось на всех пользователей системы и могло модифицироваться только администратором), но при этом имело бы приоритет больший, чем настройки пользователя. В Windows в роли такого звена выступают '''групповые политики''' (GPO), обычно задаваемые администратором домена AD и распространяемые на членов домена. В Linux, несмотря на существенный подвижки в плане интеграции с AD, прямого аналога GPO нет. | |||
По большому счету, это и не нужно для низкоуровневых системных настроек, которые может изменять только администратор — например, набора подключенных репозиториев дистрибутива, используемых DNS-серверов и тому подобного. Но что делать с приложениями, системные настройки которых пользователь может переопределить своими собственными? Есть и здесь свет в конце тоннеля. По крайней мере, для отдельных программ, разработчики которых в курсе потребностей корпоративного сектора и знают, что там используются ОС не только от MS. И хороший пример здесь — браузер {{Prog|Chromium}}. Пример выше с настройками веб-браузера приведен не зря — в случае с Chromium, параметры такого рода можно намертво зафиксировать на уровне системы так, что пользователи не смогут их перебить. | |||
Реализована такая возможность в Chromium очень просто — здесь предусмотрен системный файл настроек, данные из которго имеют приоритет выше, чем настройки пользователя. По сложившейся терминологии, такие настройки называют «политиками». Политики Chromium описываются файлами формата <tt>json</tt>, находящимися в директории {{File|/etc/chromium/policies}}. Политики делятся на обязательные (лежат в папке {{File|/etc/chromium/policies/managed}}) и рекомендуемые ({{File|/etc/chromium/policies/recommended}} соответсвенно). Рекомендуемые политики — это практически обычные системные настройки, которые пользователь может переопределять. А вот обязательные политики — это то, что нам нужно. | |||
Для примера давайте зададим что-нибудь — например, список сайтов, которые Chromium должен блокировать. Все действия нужно производить с правами <tt>root</tt>; также не забывайте следить, чтобы у обычных пользователей не было прав на запись в создаваемые файлы. | |||
Для начала, создадим нужную папку, если ее еще нет: | |||
# mkdir -p /etc/chromium/policies/managed | |||
А внутри нее создадим файл {{File|test_policy.json}} со следующим содержимым: | |||
{ | |||
"URLBlacklist": ["example.com", "enemy-site.com"], | |||
} | |||
А теперь закройте Chromium, если он уже работает, запустите его снова и попробуйте перейти на сайт <tt>example.com</tt>. | |||
[[File:Chrome block.png|600px|thumb|center]] | |||
Всего через политики можно задать почти три сотни различных настроек, полный список которых можно найти [https://www.chromium.org/administrators/policy-list-3 на сайте Chromium]. Также Google предоставляет [http://dl.google.com/dl/edgedl/chrome/policy/policy_templates.zip архив с шаблонами] политик, куда входит и json-файл для Linux с аннотированными именами политик и их возможными значениеями. | |||
Список политик, используемых в данный момент броузером, можно получить по ссылке <tt>chrome://policy</tt>. | |||
Как и прочие файлы конфигурации, json-файлы с политиками Chromium можно распространить по папкам {{File|/etc/chromium/policies}} целого парка машин с помощью Puppet, CFEngine и подобных программ управления конфигурацией. | |||
---- | |||
Chromium — не единственный пример приложения, поддерживающий системные настройки, которые не могут быть переопределены пользователем. Например, {{Prog|OpenOffice}} уже много лет [http://www.linux-kongress.org/2010/slides/ooo_netzwerk-effenberger.pdf поддерживает такой функционал]. Правда, там разработчики пошли немного другим путем и добавили возможность для каждой опции в системном конфигурационном файле указать атрибут '''finalized''', который и означает, что значение «окончательное и переопределению не подлежит». В случае OOo такой подход вполне логичен — файлы конфигурации Open/LibreOffice (с расширением «.xcu») имеют формат XML, где каждое свойство задается отдельным элементом. Наличие дополнительного атрибута элемента в такую архитектуру хорошо вписывается. Правда, редактировать XML-файлы вручную — то еще удовольствие. На FOSDEM 2014 разработчики из Collabora [https://archive.fosdem.org/2014/schedule/event/central_configuration_management_of_large_libreoffice_deployments/attachments/slides/465/export/events/attachments/central_configuration_management_of_large_libreoffice_deployments/slides/465/Andras_Timar_LibO_Central_Config_Management.pdf демонстрировали на слайдах] графическую программу для редактирования файла настроек LibreOffice, а заодно и инструмент RemoteRoot для удаленного управления множеством машин (в частности, для доставки на них пакетов и конфигураций LO) — еще одно приложение из серии Puppet & co. Однако пока что многие из представленных там возможностей | |||
можно посмотреть только в рамках слайдов. Так, на сайте «remoteroot.org» в разделе «Downloads» уже второй год красуется сообщение «Very soon, please be patient!». | |||
<br> | |||
[http://wiki.rosalab.ru/ru/index.php/%D0%91%D0%BB%D0%BE%D0%B3:%D0%A2%D0%BE%D1%87%D0%BA%D0%B0_%D0%A0%D0%BE%D1%81%D1%8B/%D0%90%D0%BD%D0%B0%D0%BB%D0%BE%D0%B3_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%BE%D0%B2%D1%8B%D1%85_%D0%BF%D0%BE%D0%BB%D0%B8%D1%82%D0%B8%D0%BA_%D0%B4%D0%BB%D1%8F_Chromium_%D0%B2_Linux Взято тут...] | |||
<br> | |||
---- | |||
==[[Adobe flash linux]]== | |||
==[[Используем console на полную]]== |
Текущая версия от 16:12, 13 ноября 2016
Управление политиками
Заходим сюда (без http://):
chrome://chrome-urls/
Затем сюда:
chrome://policy/
Традиционно большинство приложений в Linux имеют два уровня настроек — системный и пользовательский. Системные настройки обычно размещаются в директории /etc; они задаются администратором на подконтрольных ему машинах либо приходят вместе с пакетами дистрибутива. Если пользователю эти настройки не подходят, он их изменяет (обычно с помощью самого приложения). Измененные настройки сохраняются в его домашний каталог, не влияя на других пользователей машины. При этом пользовательские настройки обладают более высоким приоритетом, чем системные — исходя из того, что пользователю лучше знать, что ему нужно, а Linux — дружелюбная пользователю ОС (старается ей быть, по крайней мере).
Однако бывают ситуации, когда пользователю надо «дать по рукам» и запретить менять некоторые настройки. Такие ситуации могут возникнуть и на домашней машине (например, если дети добрались до компьютера), а уж в корпоративном секторе — это дело обычное. Причем корпоративным регламентом могут быть охвачены вполне безобидные, на первый взгляд, параметры — домашняя страница браузера или используемая им по умолчанию поисковая система.
Для таких случаев требуется еще одно звено в цепочке настроек, которое было бы системным по своей сути (в том плане, что распространялось на всех пользователей системы и могло модифицироваться только администратором), но при этом имело бы приоритет больший, чем настройки пользователя. В Windows в роли такого звена выступают групповые политики (GPO), обычно задаваемые администратором домена AD и распространяемые на членов домена. В Linux, несмотря на существенный подвижки в плане интеграции с AD, прямого аналога GPO нет.
По большому счету, это и не нужно для низкоуровневых системных настроек, которые может изменять только администратор — например, набора подключенных репозиториев дистрибутива, используемых DNS-серверов и тому подобного. Но что делать с приложениями, системные настройки которых пользователь может переопределить своими собственными? Есть и здесь свет в конце тоннеля. По крайней мере, для отдельных программ, разработчики которых в курсе потребностей корпоративного сектора и знают, что там используются ОС не только от MS. И хороший пример здесь — браузер Chromium. Пример выше с настройками веб-браузера приведен не зря — в случае с Chromium, параметры такого рода можно намертво зафиксировать на уровне системы так, что пользователи не смогут их перебить.
Реализована такая возможность в Chromium очень просто — здесь предусмотрен системный файл настроек, данные из которго имеют приоритет выше, чем настройки пользователя. По сложившейся терминологии, такие настройки называют «политиками». Политики Chromium описываются файлами формата json, находящимися в директории /etc/chromium/policies. Политики делятся на обязательные (лежат в папке /etc/chromium/policies/managed) и рекомендуемые (/etc/chromium/policies/recommended соответсвенно). Рекомендуемые политики — это практически обычные системные настройки, которые пользователь может переопределять. А вот обязательные политики — это то, что нам нужно.
Для примера давайте зададим что-нибудь — например, список сайтов, которые Chromium должен блокировать. Все действия нужно производить с правами root; также не забывайте следить, чтобы у обычных пользователей не было прав на запись в создаваемые файлы.
Для начала, создадим нужную папку, если ее еще нет:
# mkdir -p /etc/chromium/policies/managed
А внутри нее создадим файл test_policy.json со следующим содержимым:
{ "URLBlacklist": ["example.com", "enemy-site.com"], }
А теперь закройте Chromium, если он уже работает, запустите его снова и попробуйте перейти на сайт example.com.
Всего через политики можно задать почти три сотни различных настроек, полный список которых можно найти на сайте Chromium. Также Google предоставляет архив с шаблонами политик, куда входит и json-файл для Linux с аннотированными именами политик и их возможными значениеями.
Список политик, используемых в данный момент броузером, можно получить по ссылке chrome://policy.
Как и прочие файлы конфигурации, json-файлы с политиками Chromium можно распространить по папкам /etc/chromium/policies целого парка машин с помощью Puppet, CFEngine и подобных программ управления конфигурацией.
Chromium — не единственный пример приложения, поддерживающий системные настройки, которые не могут быть переопределены пользователем. Например, OpenOffice уже много лет поддерживает такой функционал. Правда, там разработчики пошли немного другим путем и добавили возможность для каждой опции в системном конфигурационном файле указать атрибут finalized, который и означает, что значение «окончательное и переопределению не подлежит». В случае OOo такой подход вполне логичен — файлы конфигурации Open/LibreOffice (с расширением «.xcu») имеют формат XML, где каждое свойство задается отдельным элементом. Наличие дополнительного атрибута элемента в такую архитектуру хорошо вписывается. Правда, редактировать XML-файлы вручную — то еще удовольствие. На FOSDEM 2014 разработчики из Collabora демонстрировали на слайдах графическую программу для редактирования файла настроек LibreOffice, а заодно и инструмент RemoteRoot для удаленного управления множеством машин (в частности, для доставки на них пакетов и конфигураций LO) — еще одно приложение из серии Puppet & co. Однако пока что многие из представленных там возможностей можно посмотреть только в рамках слайдов. Так, на сайте «remoteroot.org» в разделе «Downloads» уже второй год красуется сообщение «Very soon, please be patient!».