encfs 암호화 폴더를 원격으로 마운트 할 수있는 웹 페이지를 작성했으며 WebDAV를 통해 액세스 할 수 있습니다. 기본적으로 마운트 / 마운트 해제 버튼이있는 비밀번호 양식입니다.이 버튼은 양식을 통해 제공된 비밀번호로 사전 정의 된 encfs 암호화 된 드라이브를 마운트 / 마운트 해제하려고합니다. 기본적으로 인터넷에 액세스 할 수있는 래퍼
encfs --stdinpass /encfs/drive/encrypted/ /var/www/unencrypted
암호화 된 드라이브를 마운트 / 마운트 해제 할 수 있고 WebDAV를 통해 암호화되지 않은 데이터를 보거나 읽을 수있는 것처럼 의도 한대로 작동합니다.
그러나 이상한 일이 있습니다. 암호화되지 않은 폴더의보기는 WebDAV를 통해서만 액세스 할 수 있습니다.
나는 실행하는 경우 는 sudo -u www가 데이터 LS는 -la의 / var / www가 (www가 데이터 따라서 웹 서버와를 실행하는 사용자입니다 또한 드라이브를 마운트 사용자가, 내가 htop이 확인했습니다) 또는 다른 사용자로, I 일반적인 encfs 폴더가 아닌 일반 폴더로 마운트 지점 (위의 예에서 / var / www / 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 ..
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를 통해 드라이브에 액세스 할 수 있으며 htop에 표시된 것처럼 ecnfs 프로세스가 명확하게 실행되기 때문에 모든 의도와 목적을 위해 드라이브가 마운트되지 않은 것처럼 보입니다.
어떻게 이런 일이 발생하고 어떻게 해결할 수 있습니까?
추신 : 내가 달리면
sudo -u www-data bash -c "echo $(cat /tmp/passwort_file) | encfs --stdinpass /encfs/drive/encrypted/ /var/www/unencrypted"
터미널에서 그러한 동작은 없습니다. 폴더는 여전히 WebDAV를 통해 액세스 할 수 있지만이 경우 / etc / mtab에도 올바르게 표시되며 ls -la를 사용할 때 encfs 드라이브로도 표시됩니다 .