<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ja">
	<id>https://wiki.archlinux.jp/index.php?action=history&amp;feed=atom&amp;title=SFTP_chroot</id>
	<title>SFTP chroot - 版の履歴</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.archlinux.jp/index.php?action=history&amp;feed=atom&amp;title=SFTP_chroot"/>
	<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=SFTP_chroot&amp;action=history"/>
	<updated>2026-05-04T16:05:06Z</updated>
	<subtitle>このウィキのこのページに関する変更履歴</subtitle>
	<generator>MediaWiki 1.44.3</generator>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=SFTP_chroot&amp;diff=38515&amp;oldid=prev</id>
		<title>Kusanaginoturugi: Category:セキュアシェル</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=SFTP_chroot&amp;diff=38515&amp;oldid=prev"/>
		<updated>2024-08-16T09:37:54Z</updated>

		<summary type="html">&lt;p&gt;&lt;a href=&quot;/index.php/%E3%82%AB%E3%83%86%E3%82%B4%E3%83%AA:%E3%82%BB%E3%82%AD%E3%83%A5%E3%82%A2%E3%82%B7%E3%82%A7%E3%83%AB&quot; title=&quot;カテゴリ:セキュアシェル&quot;&gt;Category:セキュアシェル&lt;/a&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ja&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← 古い版&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;2024年8月16日 (金) 18:37時点における版&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;1行目:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;1行目:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:File Transfer Protocol]]&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:File Transfer Protocol]]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Secure Shell&lt;/del&gt;]]&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;セキュアシェル&lt;/ins&gt;]]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[en:SFTP chroot]]&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[en:SFTP chroot]]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[OpenSSH]] 4.9 以上には sftp 用の chroot が含まれていますが、通常のインストールに多少の調整が必要です。&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[OpenSSH]] 4.9 以上には sftp 用の chroot が含まれていますが、通常のインストールに多少の調整が必要です。&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Kusanaginoturugi</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=SFTP_chroot&amp;diff=10130&amp;oldid=prev</id>
		<title>Kusakata.bot: 文字列「Tips and tricks」を「ヒントとテクニック」に置換</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=SFTP_chroot&amp;diff=10130&amp;oldid=prev"/>
		<updated>2017-10-12T14:16:08Z</updated>

		<summary type="html">&lt;p&gt;文字列「Tips and tricks」を「ヒントとテクニック」に置換&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ja&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← 古い版&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;2017年10月12日 (木) 23:16時点における版&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;108行目:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;108行目:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;設定できたら {{ic|sshd.service}} を[[再起動]]してください。&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;設定できたら {{ic|sshd.service}} を[[再起動]]してください。&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==ヒントとテクニック==&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Tips and tricks==&lt;/div&gt;&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-added&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== 書き込み権限 ===&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== 書き込み権限 ===&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;chroot ユーザーのバインドパスは完全に {{ic|root}} によって所有される必要がありますが、中のファイルやディレクトリはその限りではありません。以下の例では &#039;&#039;backup&#039;&#039; ユーザーでホームディレクトリとして (&#039;&#039;root&#039;&#039; によって所有される) {{ic|/root/backups}} を使用します:&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;chroot ユーザーのバインドパスは完全に {{ic|root}} によって所有される必要がありますが、中のファイルやディレクトリはその限りではありません。以下の例では &#039;&#039;backup&#039;&#039; ユーザーでホームディレクトリとして (&#039;&#039;root&#039;&#039; によって所有される) {{ic|/root/backups}} を使用します:&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Kusakata.bot</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=SFTP_chroot&amp;diff=9500&amp;oldid=prev</id>
		<title>Kusakata: 翻訳</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=SFTP_chroot&amp;diff=9500&amp;oldid=prev"/>
		<updated>2017-08-07T13:51:40Z</updated>

		<summary type="html">&lt;p&gt;翻訳&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新規ページ&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Category:File Transfer Protocol]]&lt;br /&gt;
[[Category:Secure Shell]]&lt;br /&gt;
[[en:SFTP chroot]]&lt;br /&gt;
[[OpenSSH]] 4.9 以上には sftp 用の chroot が含まれていますが、通常のインストールに多少の調整が必要です。&lt;br /&gt;
&lt;br /&gt;
== インストール ==&lt;br /&gt;
&lt;br /&gt;
[[OpenSSH]] を[[インストール]]して設定してください。起動したら、デフォルトで SFTP が使えるようになります。&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;sftp&amp;#039;&amp;#039; や [[SSHFS]] でファイルにアクセスしてください。大抵の [[アプリケーション一覧#FTP|FTP クライアント]]が使えます。&lt;br /&gt;
&lt;br /&gt;
=== 代替 ===&lt;br /&gt;
&lt;br /&gt;
==== Secure copy protocol (SCP) ====&lt;br /&gt;
{{Pkg|openssh}} をインストールするとファイルを転送するための &amp;#039;&amp;#039;scp&amp;#039;&amp;#039; コマンドが使えるようになります。SCP は SFTP よりも高速に動作します [https://superuser.com/questions/134901/whats-the-difference-between-scp-and-sftp]。&lt;br /&gt;
&lt;br /&gt;
代替シェルとして {{Aur|rssh}} あるいは {{Pkg|scponly}} をインストールしてください。&lt;br /&gt;
&lt;br /&gt;
===== Scponly =====&lt;br /&gt;
&lt;br /&gt;
{{Pkg|scponly}} を[[インストール]]してください。&lt;br /&gt;
&lt;br /&gt;
既存のユーザーのシェルを scponly に設定:&lt;br /&gt;
&lt;br /&gt;
 # usermod -s /usr/bin/scponly &amp;#039;&amp;#039;username&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
詳しくは [https://github.com/scponly/scponly/wiki Scponly Wiki] を参照。&lt;br /&gt;
&lt;br /&gt;
===== chroot 監獄の追加 =====&lt;br /&gt;
&lt;br /&gt;
パッケージには chroot を作成するためのスクリプトが付属しています。使用するには:&lt;br /&gt;
&lt;br /&gt;
 # /usr/share/doc/scponly/setup_chroot.sh&lt;br /&gt;
* 質問に答えてください。&lt;br /&gt;
* {{ic|/path/to/chroot}} の所有者が {{ic|root:root}} で他者のパーミッションが {{ic|r-x}} であることを確認してください。&lt;br /&gt;
* ユーザーのシェルを {{ic|/usr/bin/scponlyc}} に変更してください。&lt;br /&gt;
* sftp-server は libnss_files などの libnss モジュールを必要とします。chroot の {{ic|/lib}} パスにコピーしてください。&lt;br /&gt;
&lt;br /&gt;
==設定==&lt;br /&gt;
&lt;br /&gt;
===ファイルシステムの設定===&lt;br /&gt;
&lt;br /&gt;
共有したい[[ファイルシステム]]をディレクトリにバインドマウントします。以下の例では {{ic|root}} [[ユーザー]]によって所有されている[[パーミッション]]が {{ic|755}} の {{ic|/mnt/data/share}} を使います:&lt;br /&gt;
&lt;br /&gt;
 # chown root:root /mnt/data/share&lt;br /&gt;
 # chmod 755 /mnt/data/share&lt;br /&gt;
 # mkdir -p /srv/ssh/jail&lt;br /&gt;
 # mount -o bind /mnt/data/share /srv/ssh/jail&lt;br /&gt;
&lt;br /&gt;
エントリを [[fstab]] に追加して再起動してもバインドマウントされるようにしてください:&lt;br /&gt;
 /mnt/data/share /srv/ssh/jail  none   bind   0   0&lt;br /&gt;
&lt;br /&gt;
{{Note|Readers may select a file access scheme on their own.  For example, optionally create a subdirectory for an incoming (writable) space and/or a read-only space.  This need not be done directly under {{ic|/srv/ssh/jail}} - it can be accomplished on the live partition which will be mounted via a bind mount as well.}}&lt;br /&gt;
&lt;br /&gt;
=== 非特権ユーザーの作成 ===&lt;br /&gt;
{{Note|必ずしもグループを作成する必要はありません。{{ic|Match Group}} の代わりに {{ic|Match User}} を使うことができます。}}&lt;br /&gt;
&lt;br /&gt;
まず {{ic|sftponly}} [[グループ]]を作成してください:&lt;br /&gt;
&lt;br /&gt;
 # groupadd sftponly &lt;br /&gt;
&lt;br /&gt;
そして[[ユーザー]]を作成 (`sftponly` をメイングループにします):&lt;br /&gt;
&lt;br /&gt;
 # useradd -g sftponly -d &amp;#039;&amp;#039;/srv/ssh/jail&amp;#039;&amp;#039; &amp;#039;&amp;#039;username&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
{{ic|account is locked}} エラーを防ぐために (複雑な) パスワードを設定:&lt;br /&gt;
&lt;br /&gt;
 # passwd &amp;#039;&amp;#039;username&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
[[シェル]]からのログインアクセスを拒否:&lt;br /&gt;
&lt;br /&gt;
 # usermod -s /sbin/nologin &amp;#039;&amp;#039;username&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=== OpenSSH の設定 ===&lt;br /&gt;
{{Note|グループを使用しない場合 {{ic|Match Group}} の代わりに {{ic|Match User}} を使ってください。}}&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/ssh/sshd_config|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
Match Group sftponly&lt;br /&gt;
  ChrootDirectory %h&lt;br /&gt;
  ForceCommand internal-sftp&lt;br /&gt;
  AllowTcpForwarding no&lt;br /&gt;
  X11Forwarding no&lt;br /&gt;
  PasswordAuthentication no&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{ic|sshd.service}} を[[再起動]]すると変更が適用されます。&lt;br /&gt;
&lt;br /&gt;
==== authorized_keys のパスの修正 ====&lt;br /&gt;
{{Tip|{{ic|(pre)auth}} エラーが発生する場合、クライアントとサーバーで OpenSSH の[[SSH_鍵#トラブルシューティング|デバッグモード]]を使ってください。}}&lt;br /&gt;
&amp;#039;&amp;#039;AuthorizedKeysFile&amp;#039;&amp;#039; のパスがデフォルトのままだと [[SSH 鍵]]の認証は失敗します。修正するには、{{ic|/etc/openssh/sshd_config}} の &amp;#039;&amp;#039;AuthorizedKeysFile&amp;#039;&amp;#039; に root が所有しているディレクトリを追加してください (例: {{ic|/etc/ssh/authorized_keys}}):&lt;br /&gt;
&lt;br /&gt;
{{hc|/etc/ssh/sshd_config|&lt;br /&gt;
AuthorizedKeysFile &amp;#039;&amp;#039;/etc/ssh/authorized_keys/%u&amp;#039;&amp;#039; .ssh/authorized_keys&lt;br /&gt;
PermitRootLogin no&lt;br /&gt;
PasswordAuthentication no&lt;br /&gt;
PermitEmptyPasswords no&lt;br /&gt;
Subsystem sftp /usr/lib/ssh/sftp-server&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;authorized_keys&amp;#039;&amp;#039; フォルダを作成し、クライアントで[[SSH_鍵#鍵の場所とパスフレーズを選択|SSH 鍵]]を生成して、鍵の中身をサーバーの {{ic|/etc/ssh/authorized_keys}} に[[SSH_鍵#伝統的な方法|コピー]]して[[SSH_鍵#トラブルシューティング|適切なパーミッションを設定]]してください:&lt;br /&gt;
&lt;br /&gt;
 # mkdir /etc/ssh/authorized_keys&lt;br /&gt;
 # chown root:root /etc/ssh/authorized_keys&lt;br /&gt;
 # chmod 755 /etc/ssh/authorized_keys&lt;br /&gt;
 # echo &amp;#039;ssh-rsa &amp;lt;key&amp;gt; &amp;lt;username@host&amp;gt;&amp;#039; &amp;gt;&amp;gt; &amp;#039;&amp;#039;/etc/ssh/authorized_keys/username&amp;#039;&amp;#039;&lt;br /&gt;
 # chmod 644 /etc/ssh/authorized_keys/&amp;#039;&amp;#039;username&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
設定できたら {{ic|sshd.service}} を[[再起動]]してください。&lt;br /&gt;
&lt;br /&gt;
==Tips and tricks==&lt;br /&gt;
=== 書き込み権限 ===&lt;br /&gt;
chroot ユーザーのバインドパスは完全に {{ic|root}} によって所有される必要がありますが、中のファイルやディレクトリはその限りではありません。以下の例では &amp;#039;&amp;#039;backup&amp;#039;&amp;#039; ユーザーでホームディレクトリとして (&amp;#039;&amp;#039;root&amp;#039;&amp;#039; によって所有される) {{ic|/root/backups}} を使用します:&lt;br /&gt;
 # mkdir /root/backups/share&lt;br /&gt;
 # chown backup:sftponly /root/backups/share&lt;br /&gt;
 # chmod 775 /root/backups/share&lt;br /&gt;
 # touch /root/backups/share/file&lt;br /&gt;
 # chmod 664 /root/backups/share/file&lt;br /&gt;
&lt;br /&gt;
=== ログ出力 ===&lt;br /&gt;
ユーザーは {{ic|/dev/log}} にアクセスできなくなります。ユーザーで接続してファイルのダウンロードを開始してプロセスに対して {{ic|strace}} を実行することで確認できます。&lt;br /&gt;
&lt;br /&gt;
==== サブディレクトリの作成 ====&lt;br /&gt;
{{ic|ChrootDirectory}} に {{ic|dev}} サブディレクトリを作成してください。例:&lt;br /&gt;
 # mkdir /usr/local/chroot/user/dev&lt;br /&gt;
 # chmod 755 /usr/local/chroot/user/dev&lt;br /&gt;
&lt;br /&gt;
{{ic|syslog-ng}} は {{ic|/usr/local/chroot/theuser/dev/log}} デバイスを作成します。&lt;br /&gt;
&lt;br /&gt;
==== Syslog-ng の設定 ====&lt;br /&gt;
{{ic|/etc/syslog-ng/syslog-ng.conf}} に新しいソースを追加して設定を記述してください。例えば、以下を:&lt;br /&gt;
{{bc|&amp;lt;nowiki&amp;gt;source src {&lt;br /&gt;
  unix-dgram(&amp;quot;/dev/log&amp;quot;);&lt;br /&gt;
  internal();&lt;br /&gt;
  file(&amp;quot;/proc/kmsg&amp;quot;);&lt;br /&gt;
};&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
以下のように変更:&lt;br /&gt;
{{bc|&amp;lt;nowiki&amp;gt;source src {&lt;br /&gt;
  unix-dgram(&amp;quot;/dev/log&amp;quot;);&lt;br /&gt;
  internal();&lt;br /&gt;
  file(&amp;quot;/proc/kmsg&amp;quot;);&lt;br /&gt;
  unix-dgram(&amp;quot;/usr/local/chroot/theuser/dev/log&amp;quot;);&lt;br /&gt;
};&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
そして以下を追加:&lt;br /&gt;
{{bc|&amp;lt;nowiki&amp;gt;#sftp configuration&lt;br /&gt;
destination sftp { file(&amp;quot;/var/log/sftp.log&amp;quot;); };&lt;br /&gt;
filter f_sftp { program(&amp;quot;internal-sftp&amp;quot;); };&lt;br /&gt;
log { source(src); filter(f_sftp); destination(sftp); };&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
SSH のメッセージも同じようにログに残したい場合 ([[syslog-ng#ログを別のファイルに移動]]を参照):&lt;br /&gt;
&lt;br /&gt;
{{bc|&amp;lt;nowiki&amp;gt;#sshd configuration&lt;br /&gt;
destination ssh { file(&amp;quot;/var/log/ssh.log&amp;quot;); };&lt;br /&gt;
filter f_ssh { program(&amp;quot;sshd&amp;quot;); };&lt;br /&gt;
log { source(src); filter(f_ssh); destination(ssh); };&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== OpenSSH の設定 ====&lt;br /&gt;
&lt;br /&gt;
{{ic|/etc/ssh/sshd_config}} を編集して {{ic|internal-sftp}} を全て {{ic|internal-sftp -f AUTH -l VERBOSE}} に置き換えてください。&lt;br /&gt;
&lt;br /&gt;
==== サービスの再起動 ====&lt;br /&gt;
&lt;br /&gt;
{{ic|syslog-ng}} と {{ic|sshd}} サービスを[[再起動]]してください。&lt;br /&gt;
&lt;br /&gt;
{{ic|/usr/local/chroot/theuser/dev/log}} should now exist.&lt;br /&gt;
&lt;br /&gt;
== 参照 ==&lt;br /&gt;
*[http://www.minstrel.org.uk/papers/sftp/ http://www.minstrel.org.uk/papers/sftp/builtin/]&lt;br /&gt;
*[http://www.openbsd.org/cgi-bin/man.cgi?query=sshd_config http://www.openbsd.org/cgi-bin/man.cgi?query=sshd_config]&lt;/div&gt;</summary>
		<author><name>Kusakata</name></author>
	</entry>
</feed>