Проблема: при установке панели (тулбара, toolbar) от Google для Firefox 3.5.x выскакивает вот такая ошибка:
Firefox could not install the file at «http://dl.google.com/firefox/google-toolbar-win.xpi»
Давайте рассмотрим 2 решения данной проблемы:
1 решение:
Определение сертификата
Первое что вы должны сделать, это определить сертификат для данного файла.xpi.
Скачайте расширение.Разархивируйте это расширение.Найдите файл./META-INF/zigbert.rsa.Найдите в нем строку типа: .Class 3 Public Primary Certification AuthorityТеперь мы знаем, что.xpi файл подписан VeriSign.
Установление доверия сертификату
Запустите Firefox.Настройки -> Дополнительно -> ШифрованиеПросмотр сертификатов -> Центры сертификацииНайдите VeriSign сертификат.
Нажмите на кнопку Изменить…
Поставьте галку, как на рисунке и перезапустите браузер.
2 решение:
Настройки -> Дополнительно -> ШифрованиеКнопка Настройки OCPS (Online Certificate Status Protocol).отметьте галкой, см. рисунок.Перезапустите Firefox.
Аналогично для плагинов, тем и т.д.
Firefox все еще остается моим любимым браузером и обозревателем по умолчанию. Несмотря на всякие странные решения его разработчиков, пока что находятся альтернативные решения для их обхода. Начиная с версии 43, Firefox по умолчанию блокирует установку неподписанных дополнений. Безусловно, это было сделано из самых лучших побуждений, для обеспечения нашей безопасности, чтобы воспрепятствовать распространению вредоносных дополнений и тому подобные высокопарные бла-бла-бла. Разработчики дополнений обязаны предоставлять их в Mozilla на проверку и утверждение, после чего дополнения можно поставить через официальный каталог.Многим пользователям подобное нововведение не понравилось, в том числе и мне. Я, например, использую несколько старых, но еще вполне рабочих дополнений, разработка которых прекращена много лет назад. А некоторые дополнения я сам модифицирую под свои нужны, естественно, после таких изменений цифровая подпись становится невалидной. К счастью, разработчики тогда оставили в настройках браузера параметр , позволяющий отключать проверку цифровых подписей устанавливаемых дополнений.
Начиная с версии 48, халява накрылась, Firefox перестал воспринимать этот параметр. Независимо от его значения, при попытке установить любое неподписанное расширение вы увидите предупреждение об опасности, а инсталляция будет заблокирована. Но есть способ, с помощью которого все-таки можно установить сторонние расширения в браузер Firefox.
Сперва надо переключить обновления Firefox на канал ESR (Extended Support Release). Это версия браузера с расширенным сроком поддержки, предназначенная для использования в организациях. Устанавливается прямо поверх текущей версии Firefox, все настройки остаются на месте, ничего не слетает.
Теперь переходим на страницу настроек, набрав в адресной строке about:config . Там находим параметр xpinstall.signatures.required и двойным щелчком переключаем его значение на false . Вот и все, теперь можно без проблем ставить любые обновления, в том числе неподписанные или модифицированные. Очередной идиотский закидон от "эффективных менеджеров" Firefox успешно преодолен.
В свете последних событий связанных с релизом Mozilla Firefox 48, который навёл шухеру среди части пользователей, в связи с обязательным наличием подписи у расширений, люди столкнувшиеся с этой проблемой встали перед выбором, либо:
- не пользоваться неподписанными расширениями (плохой вариант);
- использовать небрэндированные сборки;
- идти окольными путями, пытаясь отключить проверки любыми способами, некоторые из которых предложены в следующих комментариях:
https://geektimes.ru/post/279132/#comment_9480372
https://geektimes.ru/post/279132/#comment_9480382 - подписать необходимое расширение самостоятельно.
Для этого нам понадобятся:
- учётная запись на addons.mozilla.org
- установленный nodejs версии >= 0.10
- npm версии >=3.0.0 (npm up npm)
- jpm для nodejs (npm install jpm).
Итак, учётную запись зарегистрировали, программное окружение установлено, можно приступать.
Берём подопытное расширение и распаковываем его в отдельную папку, в нашем случае используем слепок репозитория, расположенного по адресу https://github.com/dillbyrne/random-agent-spoofer .
Получим следующую структуру каталогов:
test\
lib\
doc\
data\
.gitignore
LICENSE
package.json
README.md
Если используется готовое собранное расширение, то в корне папки где оно распаковано, необходимо удалить файлы «bootstrap.js» и
«install.rdf», они создаются программой сборки, а при модификации уже подписанных дополнений ещё и папку «META-INF». Т.к. мы имеем дело с ещё не собранным дополнением, то это не требуется. Следующим шагом будет редактирование файла «package.json», расположенного опять же в корне каталога распакованного расширения. В нашем случае его начало выглядит так:
{
"name": "random-agent-spoofer",
"title": "Random Agent Spoofer",
"id": "jid1-AVgCeF1zoVzMjA@jetpack",
"description": "Allows the use of various browser profiles (including useragent ,platform, oscpu, accept headers and other options), which it can randomly switch between after a chosen period of time has expired",
"author": "dbyrne",
...
}
Если в нём содержится параметр «id» его надо либо изменить, либо удалить. В противном случае, мы получим ошибку при попытке подписи о том, что не являемся его владельцем.
Далее командуем следующее «заклинание» для сборки расширения в архив:
Jpm xpi --addon-dir <путь к папке куда распаковали>
Или просто:
Jpm xpi , если текущий каталог это и есть корень распакованного расширения.
На выходе должен появиться файл собранного расширения.xpi, который и будем подписывать.
А теперь приготовим свой api-ключ, ради получения которого и регистрировались на addons.mozilla.org . Его можно увидеть по адресу addons.mozilla.org/ru/developers/addon/api/key в таком виде:
Издатель JWT: Где Jpm sign --api-key Если всё пройдёт без ошибок и автоматическая проверка будет пройдена, то в текущем каталоге мы получим подписанное расширение, в котором и нуждались. Полезные ссылки: Всем спасибо за внимание, удачи! В свете последних событий связанных с релизом Mozilla Firefox 48, который навёл шухеру среди части пользователей, в связи с обязательным наличием подписи у расширений, люди столкнувшиеся с этой проблемой встали перед выбором, либо: Итак, учётную запись зарегистрировали, программное окружение установлено, можно приступать. Берём подопытное расширение и распаковываем его в отдельную папку, в нашем случае используем слепок репозитория, расположенного по адресу https://github.com/dillbyrne/random-agent-spoofer . Если используется готовое собранное расширение, то в корне папки где оно распаковано, необходимо удалить файлы «bootstrap.js» и Если в нём содержится параметр «id» его надо либо изменить, либо удалить. В противном случае, мы получим ошибку при попытке подписи о том, что не являемся его владельцем. Jpm xpi --addon-dir <путь к папке куда распаковали> Или просто: Jpm xpi , если текущий каталог это и есть корень распакованного расширения. На выходе должен появиться файл собранного расширения.xpi, который и будем подписывать. А теперь приготовим свой api-ключ, ради получения которого и регистрировались на addons.mozilla.org . Его можно увидеть по адресу addons.mozilla.org/ru/developers/addon/api/key в таком виде: Издатель JWT: Где Jpm sign --api-key Если всё пройдёт без ошибок и автоматическая проверка будет пройдена, то в текущем каталоге мы получим подписанное расширение, в котором и нуждались. Полезные ссылки: Всем спасибо за внимание, удачи! В общем, это просто! А посему давайте отключим запрет браузера Mozilla Firefox на установку дополнений (фича запретов постигла пользователей с выходом крайних версий брауза)), а также включим мультипроцессность и мультипроцессорность. Что ж, продолжим прошлую статью, — в ней говорилось о возможностях обхода запрещений Firefox расширений/дополнений. Сегодня тема немного посложнее, так что приготовьтесь: нужно будет создать пару файлов сценария для приложения firefox и поместить их в корень ядра, и ещё кое-что поправить в скрытых настройках обозревателя Фаерфокс. В общем, будет очень интересно и что более важно — полезно! Для великого начала, давайте включим запрет браузеру на проверку дополнений (что это, подробнее в статье, ссылка выше). Создадим такой файл сценария с расширением JS: имя config.js (кому писанина файлов туго достаётся, их можно просто скачать в финале статьи, и разложить по своим полочкам в папке файлов firefox). А создаются файлы таким образом: открываем текстовый редактор Виндовс — обычный блокнот и записываем в его тело следующие ниже строки (можно копировать). Вот начинка первого файла:
// отключаем запрет установки дополнений
try { Components.utils.import("resource://gre/modules/addons/XPIProvider.jsm", {}) .eval("SIGNED_TYPES.clear()"); }
catch(ex) {}
Идём по следующему пути: C: Program Files\Mozilla Firefox
….и закидываем в директорию созданный файл. Напишем следующий js-файл: с именем — config-prefs.js
// отключаем запрет установки дополнений (файл в связке с config.js)
pref("general.config.obscure_value", 0); pref
("general.config.filename", "config.js");
Осиливаем в ядре Firefox и эту дорожку до папки pref, чтобы и туда подкинуть созданный файлик: С: Program Files\Mozilla Firefox\defaults\pref
Вот и всё!! запрет проверки и установки дополнений браузером Фаерфокс окончен! И теперь, как в прежние безмятежные времена, запросто можно устанавливать дополнения — без всяких «надуманных» запрещений разработчиков Fire — в обычном и привычном для нас режиме. Однако нам, как завсегда водится — этих знаний мало!! А давайте-ка подключим (или включим, кому как угодно) Мультипроцессность (многопроцессность) это..! хотя, думаю, толковать подробно излишне, — значение понятия логично и ясно, к тому же имеет философскую мультипликационную составляющую скоростной работы вкладок браузера Firefox, о ней в следующей статье подробнее. Непременно подписывайтесь: Для того, чтобы заработала мультипроцессность включить соответствующую логику обработки данных не составит особого труда — воспользуемся скрытыми настройками браузера (которые кстати пригодятся для тестирования проделанной работы). В адресной строке браузера (не в строке запросов, а той, что в самом верху окна браузера) копируем и прописываем следующий вензель: about:config
…жмём «Enter»… Внимание:
на этом этапе перехода к скрытым настройкам браузера появится логичное предупреждение пользователю (то бишь нам) об осторожности!! Соглашаемся быть аккуратными! Теперь предстоит создать новую логическую строку, которая добавится к подобным уже существующим строкам (настройкам) Фаер… Правая кнопь мышки… выбираете «Логическое» — далее, в окошке записываете саму вариант-логику: browser.tabs.remote.force-enable
…тут же выпадет следующее модальное оконце, в котором нужно выбрать сущность true
Готово дело! Можете перезапустить браузер и взглянуть на результат лично выполненной работы. как эпилог…
После перезапуска обозревателя firefox, снова, в адресной строке прописываем, но уже такой адрес: about:support
Откроется страничка сводки настроек браузера, а в графе «Мултипроцессные окна» (или многопроцессные…) будет записано «Разрешено пользователем» или «Включены пользователем» т.е вами, дорогой товарищ)) Внимание:
…тем, которые пользуются переводчиком (дополнением) Google Translator for Firefox и его опцией перевода выделенного текста нужно знать!! — возможно, этот способ перевода отключится! Полный перевод странички (который не всегда корректно отрабатывает) функционировать будет в обычном режиме, а вот опция «выделенного текста» нет! А вот чтобы использовать настройки опций по полной, без глюк… рекомендую правильно настраивать браузер, например — ! И как только насладимся результатом проверки, давайте уж бонусом к этой статье разберёмся: Мультипроцессорный (или многопроцессорный) режим в Firefox включаем — может кому пригодится!! Кстати, в следующей статье подробнее, так что не забудьте подписываться!! Вновь посетим адресок: В в адресной строке поиска настроек пропишем следующее: browser.tabs.remote.autostart
как только результат поиска логической строки выпал — всё здорово! Двигаемся курсоров вдоль строки вправо и меняем выставленное false
на true
Смена значений — элементарна: кликаете пару раз на фразу false она мгновенно меняется на true . А вот полезное видео о настройке не менее полезной программки MozBackup, которая замечательным образом помогает : пароли, расширения, закладки, дополнения и т.п. Очень служит при переустановке браузера или ОС — в течение минуты восстанавливается привычная работоспособность браузера. В общем, избавляет от рутины пользовательских настроек.
Документация по jpm: developer.mozilla.org/en-US/Add-ons/SDK/Tools/jpm
Signing Api: olympia.readthedocs.io/en/latest/topics/api/signing.html
Как вы уже догадались, здесь пойдёт речь о последнем способе. Если мы не планируем распространять расширения через официальный каталог, то подпись мы можем получить без ручных проверок, т.е. легко и просто.
https://geektimes.ru/post/279132/#comment_9480372
https://geektimes.ru/post/279132/#comment_9480382
Для этого нам понадобятся:
Будем рассматривать процесс подписания на примере расширения «Random Agent Spoofer». Данное расширение содержит список юзер-агентов, которые довольно быстро устаревают, а обновляется дополнение не часто. В свою очередь, в официальном репозитории файлы с нужными нам данными обновляются регулярно и возникает закономерное желание пустить их в дело.
Получим следующую структуру каталогов:
test\
lib\
doc\
data\
.gitignore
LICENSE
package.json
README.md
«install.rdf», они создаются программой сборки, а при модификации уже подписанных дополнений ещё и папку «META-INF». Т.к. мы имеем дело с ещё не собранным дополнением, то это не требуется. Следующим шагом будет редактирование файла «package.json», расположенного опять же в корне каталога распакованного расширения. В нашем случае его начало выглядит так:
{
"name": "random-agent-spoofer",
"title": "Random Agent Spoofer",
"id": "jid1-AVgCeF1zoVzMjA@jetpack",
"description": "Allows the use of various browser profiles (including useragent ,platform, oscpu, accept headers and other options), which it can randomly switch between after a chosen period of time has expired",
"author": "dbyrne",
...
}
Далее командуем следующее «заклинание» для сборки расширения в архив:
Документация по jpm: developer.mozilla.org/en-US/Add-ons/SDK/Tools/jpm
Signing Api: olympia.readthedocs.io/en/latest/topics/api/signing.html как включить мультипроцессорный режим Firefox