Ubuntu10.04を実行しています。ユーザーのホームディレクトリを設定していますが、SFTP経由で接続している場合は、ユーザーをホームディレクトリとその子に制限したいと思います。
言い換えれば、彼らがそれの外に移動することを許可しない。
これを達成するにはどうすればよいですか?
buntuドキュメント から:
FTPの保護
/etc/vsftpd.conf
には、vsftpdをより安全にするためのオプションがあります。たとえば、コメントを解除することで、ユーザーをホームディレクトリに制限できます。chroot_local_user=YES
ユーザーの特定のリストをホームディレクトリだけに制限することもできます。
chroot_list_enable=YES chroot_list_file=/etc/vsftpd.chroot_list
上記のオプションのコメントを外した後、ユーザーのリストを1行に1つずつ含む
/etc/vsftpd.chroot_list
を作成します。次に、vsftpdを再起動します。Sudo /etc/init.d/vsftpd restart
編集/etc/ssh/sshd_config
:
必要に応じてsubsystem sftp internal-sftp
を設定してください。
以下を追加します。
Match user theUserName
ChrootDirectory %h
ForceCommand internal-sftp
sshd -t
を実行して、構成を保存してテストします。これが成功した場合は、後でssh
を再起動して変更を適用します。
正確な設定に応じて、ChrootDirectory
(%h
はユーザーのホーム)として指定するフォルダーは、他のユーザーへの書き込み権限がなく、root
が所有している必要があります。したがって、これは正確には実際のホームディレクトリではありません。