项目简介
这是一个基于FUSE(Filesystem in Userspace)的用户态文件系统,实现了基于SM4 - CTR的透明文件加密。它能让用户在普通文件系统中操作加密文件,无需额外人工加密或解密步骤,还可拦截非法用户和进程,保障文件安全。
项目的主要特性和功能
- 文件系统挂载与卸载:借助FUSE库实现,支持允许其他用户挂载的选项。
- 加密与解密:运用SM4算法对文件内容进行加密和解密,达成透明加密功能。
- 访问控制:通过用户白名单和进程白名单,确保仅授权用户和进程可访问加密文件。
- 日志记录:记录文件系统操作日志,便于追踪和审计。
安装使用步骤
环境准备
- 操作系统:CentOS 7/8
- 安装依赖库:
shell yum install -y fuse fuse-devel openssl openssl-devel
配置FUSE
- 修改
/etc/fuse.conf
文件,开启user_allow_other
选项:shell vi /etc/fuse.conf
构建项目
- 复制或下载项目的源代码。
- 构建项目:
shell make all
- 清理构建:
shell make clean
挂载文件系统
- 使用以下命令挂载文件系统:
shell ./bin/encfs <flags> <mount directory> <mirror directory> <keyphrase>
- 例如:
shell ./bin/encfs ./mnt ./test 12345 ./bin/encfs -o allow_other ./mnt ./test 12345
- 脚本执行挂载:
./run.sh
卸载文件系统
- 使用以下命令卸载文件系统:
shell umount <Mount Point>
- 或者:
shell fusermount -u <Mount Point>
- 脚本执行卸载:
./stop.sh
查看挂载信息
- 执行以下命令查看挂载信息:
shell mount cat /proc/mounts
注意事项
- 密钥安全:确保密钥安全,防止密钥泄露导致文件解密风险。
- 权限设置:注意文件系统挂载点和镜像目录的权限设置,保证仅授权用户可访问。
- 错误处理:使用中可能遇错误提示,需根据提示信息处理。
此项目适用于需保护文件安全的场景,如敏感数据存储、备份等,通过透明加密和访问控制,保障数据在存储和传输过程中的安全。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】