サーバー側のアクセス制御:Chroot(ルート変更)の役割
- Chrootとは?
-
Chrootとは「Change Root」の略で、ユーザーがSFTPで接続した際に、そのユーザーのホームディレクトリを仮想的なルートディレクトリ(/)として動作させるセキュリティ機能です。
設定例 実際のサーバー上のパス ユーザーから見えるパス ホームディレクトリ C:\Srtdata\Default Server\usr\test\ / (ルートディレクトリ) 転送用フォルダ C:\Srtdata\Default Server\usr\test\sample /sample 動作原理:ユーザーのホームディレクトリ(例: C:\Srtdata\Default Server\usr\test\)が、接続したユーザーにとっての最上位のディレクトリ(/)となります。
結果:ユーザーは、実際のサーバーのファイルシステムに関係なく、割り当てられたホームディレクトリから外に出ること、つまり上層のファイルや設定にアクセスすることが物理的に不可能になります。
パス解釈の厳格化について
「Titan FTP 2019 ではアクセスでホームディレクトリ内のパスを、サーバー側の絶対パスに近い形(Srtdata\Default Server\usr\test\sample\docs)を指定してアクセスできていた。」というお問い合わせを確認しておりますが、これはSFTPの仕様に反した挙動であり、本来の正しい運用とは異なります。
Titan SFTP Serverでは、SFTPの標準仕様に準拠したパスの解釈の厳格化が行われており、この不適切なパス指定での接続は受け入れず、正しい相対パスのみが受け入れられるようになっています。
クライアントが Srtdata/Default Server/usr/test/sample を指定した場合、サーバーは C:\Srtdata\Default Server\usr\test\Srtdata\Default Server\usr\test\sample へのアクセスとして処理を行います。
正しいクライアントからの接続パス指定のルール
クライアントソフトで接続パス(リモートパス)を指定する際は、ホームディレクトリをルートとした相対パスで指定してください。
| 目的のディレクトリ | C:\Srtdata\Default Server\usr\test\sample |
|---|---|
| 不適切なパス指定 | Srtdata/Default Server/usr/test/sample |
| 正しいパス指定 | /sample または sample |
アクセスできない指定例
- 絶対パスの指定:C:\Srtdata\Default Server\usr\test\sample
- ホームディレクトリより上の階層への相対パス: ../.. や Default Server\master

