横から失礼します。
Help さんが書きました:
Leechblockというアドオンを入れているのですが、
Safe modeにすると解除されてしまいます。
すでにご指摘があるように、「セーフモード」は一種の診断モードとして設けられた機能で、とりわけアドオン(拡張機能、テーマ)を完全に無効化して起動させることに主眼が置かれています。(アドオン以外にも無効化される機能はありますが...。)
普通、セーフモードは常用するようなものではなく、その必要がある特別なときしか使いません。アドオンが無効化されて影響が出るほど頻繁にセーフモードを使っておられるのでしょうか?
Leechblock をお使いということは、特定のサイトの閲覧またはアクセスを禁止することが「目的」なのかと想像します。
しかし、Firefox をセーフモードで起動すると、当然の結果としてアドオン全般が無効化され、 Leechblock によるアクセス・閲覧の禁止が働かなくなります。
例えば、法人内の利用で Leechblock を使ってアクセス・閲覧を禁止しているサイトがあるが、セーフモードで起動してこれを回避するユーザーがいるので、それを抑制する「手段」として、セーフモードを禁止(無効化)したいというような話なのでしょうか??
【特定サイトのアクセス・閲覧を禁止することが「目的」である場合の別解】いちおうこの「目的」を前提に書きます。違う話なら以下は無視してください。
1台の PC 上の話なのか、複数の PC がある家庭内の環境でコントロールしたいのか、法人内での総合対策か......など、前提となる条件によって有効な対策も変わってくるはずですが、Firefox 単体に限れば、次のような別解があります。
通常は意識することはほとんどないと思いますが、Firefox はサイトごとのパーミッションを
ある程度コントロールできます。
この情報は、プロファイル内にある permissions.sqlite というデータベース形式のファイルに保管されています。
ここに、任意のサイトに対するコンテンツの不許可指定を追加すれば、対象サイトの閲覧を実質的にブロックすることができます。
permissions.sqlite は、アドオンではなく Firefox の常用ファイルなので、セーフモードで起動しても読み込まれ、機能を失うことはありません。
ただし、permissions.sqlite はデータベースファイルなので、メモ帳で開いて編集するといったことはできません。
Help さんが書きました:
当方はITの専門的な知識はありませんので、
少し具体的に手順をいただけるとうれしいです。
ぼくも専門家ではありませんが、自身の日常的な業務や他者からの頼まれごとの中で、必要に迫られて得てきたスキルが少しばかりありますので、知っている範囲のことを書いてみます。
SQLite データベースを扱えるソフトウェアを使っても同じことができると思いますが、どのテーブルを書き換えたらいいかわからない、操作に自信がないという場合は、次のアドオンを使うことで、permissions.sqlite の編集を比較的簡単に扱えるようになります。
・ExExceptions
https://addons.mozilla.org/ja/firefox/a ... xceptions/(このページ↑の説明にも目を通してください。)
(1)このアドオンを Firefox にインストールした後、アドオンマネージャーから ExExceptions の [設定] ボタンを押すと設定画面が開きます。
初期画面は、サイトのコンテンツに対する許可/不許可等を設定する画面です。
[サイトのアドレス:] 欄に、対象としたいサイトを、プロトコル付きの FQDN(Fully Qualified Domain Name)で入れます。
(参考)・Fully Qualified Domain Name - Wikipedia
https://ja.wikipedia.org/wiki/Fully_Qua ... omain_Name一例として、「ヤフオク!(Yahoo!オークション)」を対象にしたいのなら、http://auctions.yahoo.co.jp と入力します。
(注)
yahoo.co.jp とか、auctions.yahoo.co.jp のような記述では正常に設定できません。
あるいは、設定対象のサイトを開き、右クリックから [Host Exceptions] を選択すると、[サイトのアドレス:] 欄に開いているサイトの FQDN が入った状態で設定画面が開きます。
(2)[サイトのアドレス:] 欄の下に並んでいる各項目から、許可または不許可にしたい内容を選択します。
初期値 [-] は、特別なパーミッション設定がなく Firefox のデフォルトで処理されることを意味します。変更したくない項目や、意味のよくわからない項目は、初期値のままにしておくほうが安全でしょう。
例えば、目的のサイトの画像だけを対象にしたいのなら [image:] や [imageset:] を、動画や音声だけなら [media:] や [Object:] をという具合に、対象ごとに許可/不許可することができます。
本件の場合なら、「document:」の項目を [不許可] にすれば、指定したサイトの document 、すなわちベースとなる HTML の内容が表示されなくなるはずです。より徹底したいのなら、すべての項目を [不許可] にすることもできます。(ただし、特殊な条件下では全不許可によってどういう影響が出るかはわかりません。下記の [注] 参照)
(3)各項目の指定完了後に、下にある [設定] ボタンを押すと、指定した内容で下欄にサイトのパーミッションが登録されます。これで、そのサイトに関しては設定内容のとおりの動作になるはずです。
(4)確認として、ブックマークしてある「ヤフオク!(Yahoo! オークション)」をクリックしてみてください。反応しなくなっていると思います。「ヤフオク」で Google 検索した結果などから
http://auctions.yahoo.co.jp に移動しようと思っても、表示できなくなっていると思います。
[注]
(4)のようにストレートに
http://auctions.yahoo.co.jp へアクセスすると、上記で設定した [document:] その他の項目の内容に従って取り扱われます。
しかし、例えば Yahoo!Japan のトップぺージ
http://www.yahoo.co.jp/ にある「ヤフオク!」のリンクをクリックすると、http://auctions.yahoo.co.jp のページが表示されます。これは、http://www.yahoo.co.jp/ からはリダイレクト用の別 URL に飛ばされて「ヤフオク!」のコンテンツが送られてくるからでしょう。
しかし、最終的に表示されたページにあるリンクは、同じ FQDN 内ならブロック(不許可)されているはずですから、そのページの機能はほとんど働かないと思います。
このように、対象とするサイトの構成が動的にコントロールされているような場合や、指定した FQDN とは異なる別ドメインに置いた画像を読み込んでいるような場合、リンク先が別ドメインといった場合などには、読み込まれ、表示されるコンテンツもありえます。
したがって厳密さを求めるなら、対象サイトがデータを読み込んでくる、またはリンクしている aaa.domain.co.jp 、bbb.domain.co.jp 、ccc.www.domain.co.jp 、www4.domain2.ne.jp …… のような対象も、個別に不許可設定する必要が出てくるでしょう。
つまり、permissions.sqlite による指定は、
必ずしもワンタッチでできるとは限らず、万能でもないことに留意してください。
Yahoo!Japan のように総合的で多角的なサービスが提供されているサイトでは、下手に「yahoo.co.jp」を対象にするとほとんどのサービスが利用できなくなる場合があります。家庭では子ども、法人では勤務中の従業員を対象に、オークションのページにはアクセスさせたくないが、天気予報のページのアクセスは許可するというのなら、http://auctions.yahoo.co.jp は不許可、http://weather.yahoo.co.jp は許可というふうに、FQDN できちんと切り分けるほうがいいでしょう。
もっと小規模なサイトの場合は、より簡単な設定で目的を果たせる場合もあると思います。
ExExceptions 自体はアドオンなので、Firefox をセーフモードで起動したときは働きませんが、ExExceptions で編集した permissions.sqlite は常用されるデータなので、セーフモードでも働きます。
正常に動作するかどうか実際に試したわけではないのでお勧めはしませんが、通常は Leechblock でブロックしながら、セーフモード対策として permissions.sqlite を使うという併用ができるかもしれません。
あとは、Help さんの目的や運用条件に合わせて、ご自身で工夫してください。
【補足】セーフモードは、起動している Firefox から実行することもできます。
なので、[Shift] キー押下の起動を無効化できたとしても、それだけでは防ぎきれませんし、セーフモードが必要になる場合は存在するので、完全に無効化するのは別の意味でリスクをともないます。
代替案として permissions.sqlite の利用を紹介しましたが、Help さんが "セーフモードの無効化" そのものを「目的」となさっているのなら、ご希望とは違う話になります。
なにより、新規プロファイルを作ってそれで Firefox を起動すれば、アドオンの Leechblock はもちろん、permissions.sqlite を含めたすべてのユーザーデータをまっさらな初期状態に戻して動かせますから、プロファイルレベルでのサイトブロックはまったく意味をなさなくなります。
ユーザーが Firefox 以外のブラウザを使った場合も同様です。
セキュリティ対策ソフトに含まれるサイトブロックやペアレンタルコントロールの機能で、対象サイトをブロックできる条件があるのなら、1 台の PC に対してはそのほうが効率的かもしれません。
法人などの条件下ですと、費用はかかりますが URL フィルタリングの専用ソフトやサービスを使うという手も、選択肢になると思います。(ケース・バイ・ケースですが、法人内の条件下で個人ユーザーレベルの対策をしても、本当の意味で対策にならないこともありうるからです。)
冒頭で述べたように、前提条件によって効果が期待できる対策の種類は変わってきますから、Firefox 内部での対策に拘らず広い視野で検討したほうがいい場合もあるでしょう。
とりあえず以上です。ご希望にそわない話だったらすみません。