SShfs 和安全

SShfs 和安全

我有以下问题:如果我正在安装,sshf mail@host:/home/mail ./foo是否有任何方法可以限制安装的可能性并且不提供 shell 访问权限?我想要的只是远程、安全的邮件存储,但 sshfs 允许的太多了。此外,似乎它要求mail用户拥有 shell。有什么更好的解决方案吗?

其次,用户是否必须拥有 cron 的 shell 才能使其工作?

编辑:看来我做得不够干净。我拥有的:

* remote host(server), that fetch mail via `fetchmail` into some directory.
* client, that need rw, key-authorization access to mentioned mail dir.

最好是,该客户端除了 maildir 之外不会访问任何其他内容。事实上,我需要具有公钥认证的 nfs。

答案1

sshfs使用 SFTP,它只需要允许执行 SFTP 服务器程序,其完整路径可以变化,但始终记录在/etc/ssh/sshd_config;例如

Subsystem sftp /usr/lib/ssh/sftp-server

编写一个仅允许执行此单个命令的“sftp-only”shell 很容易。目前已有多个。

此外,该Subsystem行可以更改为使用internal-sftp,它内置于sshd守护进程中,并且不是需要一个外壳:

Subsystem sftp internal-sftp

这甚至允许用户 chroot 到特定的目录。

答案2

我想要的只是远程、安全的邮件存储,

您可以将其视为两个不同的问题之一:

  • “通用文件”的远程安全存储,您的邮件文件只是普通文件的一个特例
  • 远程安全存储专门用于邮件

vsftpd在前一种情况下,我会选择使用显式 TLS 之类的 FTP,您可以在远程端使用例如设置它,并设置一个 cron 作业(本地)以使用lftp命令(例如,它是一个可编写脚本的 FTP 客户端)通过 ftp 推送邮件。不需要远程框上的 shell 访问权限,您甚至可以设置客户端证书,这样您就可以进行无密码登录,而无需将密码存储在脚本中。

在后一种情况下,您可能需要查看 smtp 中继并将邮箱本身的副本存储在远程服务器上的 imap 邮件池中,但这设置起来要复杂得多。

相关内容