Я написал веб-страницу, которая позволяет мне удаленно монтировать зашифрованную папку encfs, которая затем доступна через WebDAV. По сути, это просто форма пароля с кнопкой монтирования / размонтирования, которая пытается смонтировать / размонтировать предварительно определенный зашифрованный диск encfs с паролем, предоставленным через форму. В основном это доступная в Интернете оболочка для
encfs --stdinpass /encfs/drive/encrypted/ /var/www/unencrypted
Это работает как задумано, так как я могу подключить / отключить зашифрованный диск и увидеть / прочитать незашифрованные данные через WebDAV.
Но происходит нечто странное: незашифрованный вид папки доступен ТОЛЬКО через WebDAV.
Если я запускаю sudo -u www-data ls -la /var /www (www-data - это пользователь, запускающий веб-сервер и, следовательно, также пользователь, монтирующий диск, я подтвердил это с помощью htop) или как любой другой пользователь, я Посмотрите точку монтирования (в приведенном выше примере это будет /var /www /unencrypted) как обычную папку, а не как обычную папку encfs, которая обычно должна выглядеть примерно так:
drwxr-xr-x 5 www-data www-data 4096 Feb 1 02:25 .
drwxr-xr-x 15 root root 4096 Jan 31 11:46 ..
d????????? ? ? ? ? ? unencrypted
но на самом деле это выглядит так:
drwxr-xr-x 5 www-data www-data 4096 Feb 1 02:25 .
drwxr-xr-x 15 root root 4096 Jan 31 11:46 ..
drwxr-xr-x 2 www-data www-data 4096 Jan 31 21:47 unencrypted
как обычная папка (которая считается пустой, хотя в той же папке есть данные при доступе к ней через WebDAV).
Также в /etc /mtab нет записи, указывающей, что диск encfs когда-либо был смонтирован. По сути, все выглядит так, как будто диск никогда не был подключен, хотя на самом деле это так, потому что я могу получить к нему доступ через WebDAV, а также процесс ecnfs явно работает, как показано в htop.
Как это происходит и как это исправить?
PS: если я бегу
sudo -u www-data bash -c "echo $(cat /tmp/passwort_file) | encfs --stdinpass /encfs/drive/encrypted/ /var/www/unencrypted"
из терминала такого поведения нет. Папка по-прежнему доступна через WebDAV, но в этом случае она также правильно отображается в /etc /mtab и также отображается как диск encfs при использовании ls -la.