Mac OS Xで「chroot」が使用されないのはなぜですか?


9

私は25年間Macを使用しており、OS X 10.0以来「UNIX」を使用していますが、chrootについてあまり考えたことも、本当に必要だったり、したくなかったりしたこともありません...

簡単な質問ですが、Macで「chroot」を使用するのはどのような場合ですか。これは確かにBSD時代の組み込み関数ですが、使用されたことは聞いたことがありません... chrootする必要をなくす別のコマンドラインまたはシステムレベルのツールの機能の一部ですか?もしそうなら、同等の機能は何ですか?そうでない場合、なぜ使用、参照、または必要がないと思われるのですか?

回答:


14

chrootの用途には主に2つのカテゴリがあります(Wikipediaの記事で詳しく説明しています)。

  • アプリケーションを分離し、ファイルシステムの制限されたビューを提供します。これは、たとえば、サーバーソフトウェアにバグがある場合でも、パブリックFTPサーバーでパブリックエリア外のファイルを提供できないようにするために、一般的に行われます。この使用例は、次の2つの理由でますます一般的ではなくなっています。まず、chrootはそれほどの分離を提供しません。サーバーの脆弱性により、攻撃者はファイルにアクセスする以外の多くの方法で損害を与える可能性があります。2つ目は、より強力な分離を提供する仮想マシンが大幅に安価になり、多くの場合セットアップが容易になるため、当然の選択です。
  • カーネルは同じでライブラリが異なる、別のオペレーティングシステムでソフトウェアを実行します。たとえば、David Cournapeauによって提案されているように、ソフトウェアを開発していて、追加のものがたくさんインストールされていて、ソフトウェアがその追加のものに依存していないことを確認したい場合は、最小限のインストール。または(ただし、OSXシステムではそれほど一般的ではないと思います)、別のOSリリースを実行する可能性があります。たとえば、64ビットLinuxシステムにchrootでアクセスできる32ビットディストリビューションがあり、まれにメインシステムで直接実行されない32ビットアプリケーションを実行する必要があります。

どちらのユースケースもかなり専門的です。Chrootはほとんどの人にとって役に立ちません。一部の人にとっては便利であり、実装するのが非常に安価であるため、そこにあります。


6

Mac OS Xでchrootを使用して、一部のソフトウェアをテストしたり、関与しているプロジェクトのパッケージをテストしたりしています(たとえば、10.6を使用しているときに10.4でインストールをテストします)。


2
それを使用する方法の例を挙げられますか?
Alexander Mills

2

他のユーザーがアクセスできるように、個人のシステムをどのくらいの頻度で開放したいですか?ほとんどの場合、chrootはさまざまなユーザーが多数いるサーバーを対象としています。ただし、ユーザーが個人用システムにアクセスできるようにローカルSFTPサーバーを実際にセットアップする場合は、必ずchrootする必要があります。

たぶん、この投稿は正しい方向にあなたを始めるでしょう:

http://hints.macworld.com/article.php?story=2004110314282345

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.