在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:syncrypto开源软件地址:https://gitee.com/liang.qing/syncrypto开源软件介绍:syncrypto - 文件夹加密同步介绍
syncrypto syncrypto文件夹A <---------------------> 加密文件夹B <-------------------> 文件夹C 机器X (可以放在不安全的地方,例如云存储 机器Y 加密文件夹B中的文件都是加密过的,所以可以把它放在不怎么安全的地方(例如云盘,公共硬盘等) 明文文件和加密文件是一一对应的关系,所以每次同步只会添加(删除/修改)那些需要的文件,这样很适合那些基于文件系统的同步工具,例如云盘、rsync等。 同步过程是双向的,所以,文件不仅仅是从明文文件夹同步到加密文件夹,同样也会从加密文件夹同步到明文文件夹, 如果有冲突的话,
安装支持的平台和系统
支持Windows,Linux,OS X 安装依赖如果是Windows的话,可以直接跳过 由于依赖cryptography,在Linux上需要先安装一些的依赖: 在Debian/Ubuntu系列中运行 sudo apt-get install build-essential libssl-dev libffi-dev python-dev 或者,在Fedora/RHEL系列中运行 sudo yum install gcc libffi-devel python-devel openssl-devel 如果是OS X系统,需要运行 xcode-select --install 安装安装完所有依赖后,即可通过pip安装 pip install syncrypto 使用同步syncrypto [加密文件夹] [明文文件夹] # 注意,加密文件夹放在前面 可以使用这个命令来同步,运行后会提示输入密码,第一次在该加密目录下运行的话是设置密码,之后运行的话会进行密码匹配,如果不匹配则不能进行同步(放心, 如果不想通过命令行交互的方式输入密码,可以通过--password-file选项来通过文件给出密码: syncrypto [加密文件夹] [明文文件夹] --password-file [密码文件] 密码文件里面保存的是明文密码 为同步添加rule有时候,有些文件(例如一些临时文件)没有必要进行加密同步,这个时候你可以通过rule来排除这些文件: syncrypto [加密文件夹] [明文文件夹] --rule 'ignore: name match *.swp' 上面这条命令会在同步过程中忽略那些文件名匹配"*.swp"的文件 可以添加多条rule: syncrypto [加密文件夹] [明文文件夹] --rule 'include: name eq README.md' --rule 'ignore: name match *.md' 上面这条命令会在同步过程中忽略那些文件名匹配"*.md"的文件,但是保留文件名为"README.md"的文件。 如果有多条rule的话,会按照顺序优先选择第一条匹配的rule 也可以通过文件,而不是命令行的方式配置rule,--rule-file选项可以做到: syncrypto [加密文件夹] [明文文件夹] --rule-file [rule文件] rule文件可以这样写: include: name eq README.md# ignore all markdown files, this is a commentignore: name match *.md 默认的--rule-file指向 如果同时给定了--rule, --rule-file选项,那会--rule指定的规则优先级更高。 rule的格式: [action]: [file attribute] [operand] [value]
'include'表示包含,'ignore'表示忽略,'exclude'和ignore是同样的含义
如果是 加密一个文件如果只想加密一个文件,可以使用: syncrypto --encrypt-file [文件路径] 这条命令默认会将加密后的文件放在明文文件相同目录下,如果想放到别的地方,可以加上--out-file参数: syncrypto --encrypt-file [明文文件路径] --out-file [加密后文件路径] 解密一个文件如果想解密任何一个通过 syncrypto --decrypt-file [文件路径] 这条命令默认会将解密后的文件放在当前目录下,如果想放到别的地方,同样可以加上--out-file参数: syncrypto --decrypt-file [密文文件] --out-file [解密后文件] 修改密码修改一个已经加密同步过后的密文目录中的密码 syncrypto --change-password [密文目录] 这条命令首先会提示输入当前密码,之后会提示设置新密码,设置成功后会将密文目录下的所有文件重新加密一遍。 帮助syncrypto -h LicenseApache License, Version 2.0 |
请发表评论