У меня есть следующие вопросы: Если я монтирую sshf mail@host:/home/mail ./foo Можно ли как-то ограничить возможности монтирования и не дать доступ к оболочке? Все, что мне нужно, - это удаленное, безопасное хранилище для почты, но sshfs позволяет слишком много. Также, похоже, пользователю mail нужно иметь оболочку. Какие есть лучшие решения?

Во-вторых, должен ли пользователь иметь оболочку, чтобы cron мог работать?

РЕДАКТИРОВАТЬ: Кажется, я не был достаточно чистым. Что я имею:

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

Желательно, чтобы клиент не получал доступ ни к чему, кроме maildir. На самом деле мне нужна NFS с аутентификацией с открытым ключом.

2 ответа2

2

sshfs использует SFTP, который требует только разрешения выполнения программы сервера SFTP, полный путь которой может изменяться, но всегда записывается в /etc/ssh/sshd_config ; например

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

Легко написать оболочку "только для sftp", которая позволяет выполнять только эту единственную команду. Несколько уже существует.

Кроме того, строка Subsystem может быть изменена на использование internal-sftp , который встроен в демон sshd и не требует оболочки:

Subsystem sftp internal-sftp

Это даже позволяет пользователю быть привязанным к конкретному каталогу.

1

Все, что я хочу, это удаленное, безопасное хранилище для почты,

Вы можете рассматривать это как одну из двух разных проблем:

  • Удаленное безопасное хранение "общих файлов", а ваши почтовые файлы - это особый случай обычных файлов.
  • Удаленное безопасное хранение почты специально

В первом случае я бы использовал что-то вроде FTP поверх явного TLS, который вы можете настроить с помощью, например, vsftpd на удаленной стороне, и настроить задание cron (локально) для отправки почты через ftp с помощью команды lftp , для экземпляр, который является клиентом FTP с поддержкой сценариев. Нет необходимости в доступе к оболочке удаленного блока, и вы даже можете настроить клиентские сертификаты, чтобы вы могли осуществлять вход без пароля без сохранения пароля в сценарии.

В последнем случае вы можете захотеть изучить реле smtp и сохранить копию своего почтового ящика в почтовой папке imap на удаленном сервере, но это намного сложнее настроить.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .