Livingdeadの日記: QNAP TS-409のsftpでchrootする
【追記】この日記の内容は整理・加筆の上ブログに移しました。
NAP TS-409 Pro TurboNASでchrootしてsftp
---
「QNAP TS-409 Pro Turbo NAS の sshd を入れ替える - Livingdead の日記」でsshdを入れ替えるってのを書いたが、その後複数のユーザにsftpでのホームディレクトリへのアクセスを提供する必要が出てきたのでchrootできないかと思って調べてみた。たどり着いた/etc/ssh/sshd_configの設定は次の通り。
Subsystem sftp internal-sftp
AllowUsers admin takashi
# Example of overriding settings on a per-user basis
Match user hogehoge
ChrootDirectory /share
PasswordAuthentication no
X11Forwarding no
AllowTcpForwarding no
#ForceCommand internal-sftp
ChrootDirectory を /share/%u ではなく /share にしているのはChrootDirectoryする先のディレクトリのオーナーが root:root (というか admin:administrators というか 0:0)でなければならないから。
重要な点は、sshd_config中のChrootDirectoryディレクティブで指定するディレクトリのオーナ、グループがroot:rootであること。ここがホームディレクトリ以下だとオーナが悪い(root:rootじゃない)ということで認証エラーになります。
sftpとChrootDirectory(4) - あるシステム管理者の日常
/share全体をルートにしていいのかと言われれば微妙だが、今でも \\mynas\ にアクセスすれば共有の一覧が見える状態にしているのでよしとする。もちろん /share/hogehoge のオーナーとパーミッションは適切に設定されている。シェルは提供せず sftp でしかアクセスさせないのなForceCommandを使うべきだと思う。
QNAP TS-409のsftpでchrootする More ログイン