「chroot」の版間の差分

提供: セキュリティ
移動: 案内検索
(ページの作成:「<!-- vim: filetype=mediawiki --> chroot とは、ルートディレクトリ を変更するシステムコール、または、コマンドです。 '''...」)
 
 
行1: 行1:
<!--
+
[[chroot]] とは、ルートディレクトリ を変更する[[システムコール]]、または、コマンドです。[[chroot]]は、チェンジ ルート(CHange ROOT)の略です。
vim: filetype=mediawiki
+
-->
+
[[chroot]] とは、[[ルートディレクトリ]] を変更する[[システムコール]]、または、コマンドです。
+
  
 
'''読み方'''
 
'''読み方'''
;[[chroot]]:
+
;[[chroot]]:しーえいち るーと
 
__TOC__
 
__TOC__
  
 
== 概要 ==
 
== 概要 ==
 
 
[[chroot]] は、ルートディレクトリを指定されたディレクトリに変更します。コマンド・プロセスは、新しいルートディレクトリの中に閉じ込められます。
 
[[chroot]] は、ルートディレクトリを指定されたディレクトリに変更します。コマンド・プロセスは、新しいルートディレクトリの中に閉じ込められます。
 
アクセスを最小化するためのセキュリティの機能です。
 
アクセスを最小化するためのセキュリティの機能です。
行17: 行13:
  
 
特定のディレクトリをルートディレクトリにすることで、「プロセスが影響を及ぼせる範囲」を最小化できます。
 
特定のディレクトリをルートディレクトリにすることで、「プロセスが影響を及ぼせる範囲」を最小化できます。
 
 
== chroot システムコール ==
 
== chroot システムコール ==
 
+
[[chroot]] システムコールは、カレントディレクトリに影響を及ぼさないため、別途 chdir ("/") を呼び出す必要があります。
[[chroot]] システムコールは、カレントディレクトリに影響を及ぼさないため、別途 [[chdir]] ("/") を呼び出す必要があります。
+
  
 
<syntaxhighlight lang="c">
 
<syntaxhighlight lang="c">
行28: 行22:
 
chroot(const char *dirname);
 
chroot(const char *dirname);
 
</syntaxhighlight>
 
</syntaxhighlight>
 
 
== chroot コマンド ==
 
== chroot コマンド ==
 
 
[[chroot]] コマンドは、カレントディレクトリとルートディレクトリを新しいディレクトリ(newroot) に変更し、 command を実行します。
 
[[chroot]] コマンドは、カレントディレクトリとルートディレクトリを新しいディレクトリ(newroot) に変更し、 command を実行します。
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
chroot [-u user] [-g group] [-G group,group,...] newroot [command]
 
chroot [-u user] [-g group] [-G group,group,...] newroot [command]
 
</syntaxhighlight>
 
</syntaxhighlight>
 
 
== 関連項目 ==
 
== 関連項目 ==
 
 
* [[sshd]]
 
* [[sshd]]
 
* [[sftp]]
 
* [[sftp]]
 
* [[jail]]
 
* [[jail]]
 +
<!-- vim: filetype=mediawiki
 +
-->

2015年9月22日 (火) 13:50時点における最新版

chroot とは、ルートディレクトリ を変更するシステムコール、または、コマンドです。chrootは、チェンジ ルート(CHange ROOT)の略です。

読み方

chroot
しーえいち るーと

概要

chroot は、ルートディレクトリを指定されたディレクトリに変更します。コマンド・プロセスは、新しいルートディレクトリの中に閉じ込められます。 アクセスを最小化するためのセキュリティの機能です。

ルートディレクトリを変更することにより、ルートディレクトリとなったディレクトリ上の階層には、アクセスできません。 /home/chroot に対して chroot した場合、 /home/chroot が / になります。プロセスは、 / の上には、アクセスができません。

特定のディレクトリをルートディレクトリにすることで、「プロセスが影響を及ぼせる範囲」を最小化できます。

chroot システムコール

chroot システムコールは、カレントディレクトリに影響を及ぼさないため、別途 chdir ("/") を呼び出す必要があります。

#include <unistd.h>
 
int
chroot(const char *dirname);

chroot コマンド

chroot コマンドは、カレントディレクトリとルートディレクトリを新しいディレクトリ(newroot) に変更し、 command を実行します。

chroot [-u user] [-g group] [-G group,group,...] newroot [command]

関連項目