Firejail

提供: ArchWiki
2016年1月6日 (水) 01:32時点におけるKusakata (トーク | 投稿記録)による版
ナビゲーションに移動 検索に移動

Firejail は Linux の名前空間や seccomp-bpf、Linux のケイパビリティを使うことで、信頼のおけないアプリケーションの実行環境を制限することでセキュリティのリスクを減らす、使いやすい SUID サンドボックスプログラムです。単体で使えるだけでなく、Grsecurity などの他のカーネル防護システムと一緒に使用することでセキュリティをさらに高めることができます。Firejail はブラウザやデスクトップアプリケーション、デーモン/サーバーなどで使うのに適しています。

インストール

firejailAUR または firejail-gitAUR パッケージをインストールしてください。使用するのに必要なものが全て入っています。

設定

Firejail は実行するアプリケーションごとにプロファイルを使います。デフォルトのプロファイルは /etc/firejail/profiles にあります。デフォルトのプロファイルを修正したり、デフォルトに含まれていないアプリケーションのカスタムプロファイルを作成する場合、~/.config/firejail に新しいルールやデフォルトのコピーを配置することができます。

使用方法

firejail で seccomp を使ってアプリケーションを実行するには (例: Firefox)、以下を実行:

$ firejail --seccomp firefox

プライベートモード

Firejail にはワンタイムのプライベートモードも存在します。プライベートモードでは chroot でホームディレクトリのマウントがされません。ディスクに何の痕跡も残さないでアプリケーションを実行することが可能です。例えば、Firefox をプライベートモードで実行するには、以下を実行:

$ firejail --seccomp --private firefox

デフォルトで Firejail を使う

コンソールや .desktop ファイルからアプリケーションを起動している場合、それぞれのアプリケーションのランチャーを /usr/local/bin に作成することができます。例えば、Firefox なら以下のファイルを作成して実行可能権限を付与してください:

/usr/local/bin/firefox
firejail --seccomp /usr/bin/firefox $@

デスクトップファイル

標準のパスを使わないアプリケーションも存在します。そのようなアプリケーションでは /usr/share/applications/*.dekstop.desktop ランチャーを ~/.local/share/applications/ にコピーして EXEC 行に firejail (や seccomp) を記述すれば firejail を使うことができます。

デーモン

デーモンの場合、initscript を編集して直接 firejail で呼び出すようにしてください。

ノート

Firejail では上手く動作しないアプリケーションや、特別な設定を必要とするアプリケーションが存在します。特定のアプリケーションで全てのディレクトリが使用できない、ブラックリストに入れられている場合、プロファイルを編集してアプリケーションからアクセスする必要がある非標準のディレクトリを有効化してください。例えば Wine がそれに当てはまります。Wine は大抵の場合 seccomp を使用していると動作しません。

他の設定も存在します。firejail の開発は変更が激しいので詳しくは firejail の man ページを参照してください。

Firetools

Firejail を使用するための GUI アプリケーションが存在します: firetoolsAUR