抱歉,我的无知,我对设置 SFTP 服务器有一个奇怪的疑问,
- 设置一个带有密码/密钥文件的 SFTP 服务器以进行身份验证。
- SFTP 用户目录应该处于静态加密状态。
- SFTP 客户端应该能够访问查看加密文件,但其他用户不应该能够查看它。
我已经设置了 SFTP 服务器,但我无法找到第 2 点和第 3 点的解决方案,因为我无法格式化系统来创建加密文件系统。
是否有任何开源工具可以解决这个问题。或者我的方法完全错误。
答案1
您可以通过在文件中创建 LUKS 容器并将其挂载为 sftp 用户的家来实现此目的,例如
# Create a 1G file to work with
dd if=/dev/zero of=/path/to/container bs=1M count=1024
# Make it a LUKS container and open it for use
cryptsetup -y luksFormat /path/to/container
cryptsetup luksOpen /path/to/container sftpvolume
# Format it for use
mkfs.ext4 -j /dev/mapper/sftpvolume
您现在可以将其挂载为 sftp 主目录
mount /dev/mapper/sftpvolume /home/sftpuser
要在启动时挂载,你需要在 /etc/cryptab 中创建合适的条目,请参阅crypttab(5)有关详细信息和 /etc/fstab 中的条目,请参阅fstab(5)了解详情。
正常的文件系统权限应该足以满足您的其他要求。