GNU/Linux >> Linux の 問題 >  >> Linux

chroot Jail で DNS および FTP サービスを実行する方法

その名前が示すように、chroot 操作は、実行中のプロセスとその子プロセスの見かけのルート ディレクトリを変更します。 / 以外のルート ディレクトリでプログラム (プロセス) を実行できます。プログラムは、指定されたディレクトリ ツリーの外にあるファイルを参照したり、アクセスしたりすることはできません。

たとえば、プログラムを実行し、そのルート ディレクトリを /home/oracle/jail として指定できます。この場合、プログラムのルート ディレクトリは実際には /home/oracle/jail です。プログラムは、階層内でこのディレクトリより上のファイルを認識することも、アクセスすることもできません。この人工的なルート ディレクトリは、chroot 監獄と呼ばれます。その目的は、潜在的な攻撃者のディレクトリ アクセスを制限することです。 chroot jail は、特定のプロセスとそれが使用しているすべてのユーザー ID をロックダウンして、プロセスが実行されているディレクトリのみがユーザーに表示されるようにします。プロセスには、ルート ディレクトリで実行されているように見えます。

chroot Jail で DNS および FTP サービスを実行する

chroot jail を利用するために 2 つのサービスが設定されています。 DNS をセットアップして、named が刑務所で実行されるようにすることができます。 vsftpd FTP サーバーは、クライアントの chroot jail を自動的に開始できます。

chroot Jail の DNS

bind-chroot パッケージを使用すると、named を chroot 監獄で実行するように設定できます。このパッケージをインストールすると、/var/named/chroot ディレクトリが作成され、すべての BIND ファイルの chroot jail ディレクトリになります。

  • /var/named ディレクトリは /var/named/chroot/var/named になります。
  • /etc/named* ファイルは /var/named/chroot/etc/named* ファイルになります。

このパッケージをインストールすると、ROOTDIR シェル変数も /etc/sysconfig/named ファイルの /var/named/chroot に設定されます。 chroot jail で named を実行する利点は、ハッカーが BIND エクスプロイトを介してシステムに侵入した場合、システムの残りの部分へのハッカーのアクセスが chroot jail ディレクトリの下のファイルに分離されることです。

chroot Jail の FTP クライアント

デフォルトでは、匿名ユーザーは chroot 監獄に入れられます。匿名ユーザーが vsftpd サーバーにログインすると、ユーザーのホーム ディレクトリは /var/ftp になります。ただし、ユーザーに表示されるのは/.

だけです。

たとえば、/var/ftp/upload という名前のディレクトリは、匿名ユーザーには /upload として表示されます。これにより、匿名ユーザーはディレクトリ階層の /var/ftp より上のファイルにアクセスできなくなります。

vsftpd サーバーにアクセスするローカル ユーザーは、ホーム ディレクトリに配置されます。 /etc/vsftpd/vsftpd.conf ファイルでオプションを有効にして、ローカル ユーザーを chroot 監獄に入れることができます。人工ルート ディレクトリはユーザーのホーム ディレクトリです。 vsftpd 構成ファイルには、ローカル ユーザー用の chroot jail を実装するための次のオプションがあります。

  • chroot_list_enable
  • chroot_local_user
  • chroot_list_file

ローカル ユーザーが vsftpd サーバーにログインすると、chroot_list_enable ディレクティブがチェックされます。このディレクティブが YES に設定されている場合、サービスは /etc/vsftpd/chroot_list をチェックします ファイル (デフォルト) または chroot_list_file で指定された別のファイル

次に、別のディレクティブ chroot_local_user がチェックされます .このディレクティブが YES に設定されている場合、chroot_list chroot しないユーザーのリストになります。このディレクティブが NO に設定されている場合、ユーザーはホーム ディレクトリで chroot 監獄に入れられます。


Linux
  1. Linuxでサービスを管理および一覧表示する方法

  2. Linuxでディレクトリとフォルダを削除する方法は?

  3. DNSとは何ですか?どのように機能しますか?

  1. chroot Jail を理解する

  2. CentOS / RHEL :vsftp の chroot jail を特定のユーザーのみに設定する方法

  3. CentOS / RHEL :chroot jail SFTP のセットアップ方法

  1. Chrootの「刑務所」–それは何で、どのように使用するのですか?

  2. Chroot内でChromiumを実行する方法は?

  3. ディレクトリ全体で dos2unix を実行するにはどうすればよいですか?