重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

sftpのディレクトリ制限についてので質問です。
友人とのファイルのやり取りにSFTPを考えています。
そこで、ChrootDirectoryを使用してディレクトリ制限をかけたいと思っているのですが、
Webサイトなどを参考に設定してみましたが、うまく出来ません。

/etc/ssh/ssd_config
~略~
Subsystem sftp internal-sftp
Match group sftponly
ForceCommand internal-sftp
ChrootDirectory /chroot/
X11Forwarding no
AllowTcpForwarding no
と設定し、

/etc/group
sftponly:x:300:

/etc/passwd
user:x:300:300::/:/sbin/nologin
とユーザーグループを作成し。
ls -l /
drwxr-x---. 3 root sftponly 4096 1月 9 07:51 2013 chroot
ls -l /chroot
drwxrwxrwx. 2 user sftponly 4096 1月 9 07:51 2013 share
を作成しました。
以上の設定をしていざsftpで接続してみると、
# sftp user@localhost
Connecting to localhost...
user@localhost's password:
sftp> pwd
Remote working directory: /
sftp> ls
Couldn't get handle: Permission denied
sftp> cd share
sftp> pwd
Remote working directory: /share
sftp> put a
Uploading a to /share/a
Couldn't get handle: Permission denied
sftp>
と上記の様にcdでのディレクトリ移動などはできますがファイルの一覧取得は権限がなくできませんでした。

ディレクトリ制限をしたユーザでsftpでファイルのやり取りをするためにはあとどのような設定が必要でしょうか?
よろしくお願いします。

環境
OS:CentOS 6.3
openssh-5.3p1-81.el6_3.x86_64

A 回答 (1件)

>Couldn't get handle: Permission denied



パーミッションが~と言われているようですので……
お約束ですがSELinuxはどうなっていますか?

あと……
>/etc/passwd
>user:x:300:300::/:/sbin/nologin
/をホームディレクトリに設定するのはいかがなものかと…。
シェルログインは出来ないにしても。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

そのまんま、SELinuxが原因でした。
無効にしたら問題無くlsやput、getコマンドが使用できました。

>をホームディレクトリに設定するのはいかがなものかと…。
>シェルログインは出来ないにしても。
こちらの件ですが、 ホームディレクトリ/ は、本来のサーバではなくchroot先の/(今回の場合の/chroot)という認識でした。

お礼日時:2013/01/10 00:01

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!