1. GnuPG(GPG):对称与非对称加密单个文件
GnuPG是CentOS默认安装的加密工具(若未安装,可通过sudo yum install gnupg获取),支持对称加密(AES等算法)和非对称加密(公钥/私钥对)。对称加密适合快速加密单个文件,非对称加密则适合需要安全传输的场景(如发送给他人)。
- 对称加密步骤:
生成密钥对(可选,用于非对称加密):gpg --gen-key;
加密文件:gpg -c sensitive_file.txt(生成sensitive_file.txt.gpg,需输入密码);
解密文件:gpg -d sensitive_file.txt.gpg(输入密码即可还原)。 - 非对称加密步骤:
导出公钥:gpg --export -a "Your Name" > public.key;
加密文件:gpg --encrypt --recipient "Your Name" file.txt(生成file.txt.gpg);
解密文件:gpg --decrypt file.txt.gpg(需私钥和密码)。
2. OpenSSL:灵活的文件加密工具
OpenSSL是CentOS自带的加密库,支持AES、DES等多种算法,适合需要自定义加密强度的场景。
- 加密命令:
openssl enc -aes-256-cbc -salt -in file.txt -out file.txt.enc -k 'yourpassword'(使用AES-256-CBC算法,-salt增加安全性); - 解密命令:
openssl enc -d -aes-256-cbc -in file.txt.enc -out file.txt -k 'yourpassword'(输入相同密码即可还原)。
3. LUKS(Linux Unified Key Setup):磁盘/分区级加密
LUKS是CentOS推荐的磁盘加密标准,适合加密整个分区或外部设备(如U盘),提供高级别的数据保护(即使设备丢失,数据也无法读取)。
- 加密步骤:
安装工具:sudo yum install cryptsetup;
格式化分区为LUKS格式:sudo cryptsetup luksFormat /dev/sdb1(替换为实际分区,需确认操作);
打开加密分区:sudo cryptsetup luksOpen /dev/sdb1 secure_partition(映射为secure_partition);
创建文件系统:sudo mkfs.ext4 /dev/mapper/secure_partition;
挂载使用:sudo mount /dev/mapper/secure_partition /mnt/secure(替换为实际挂载点)。 - 注意:加密分区需手动打开和挂载,系统启动时需通过
/etc/crypttab配置自动解锁。
4. eCryptfs:目录级加密
eCryptfs是CentOS提供的堆叠加密文件系统,适合加密用户目录(如/home/user/Documents),无需单独分区,灵活性高。
- 加密步骤:
安装工具:sudo yum install ecryptfs-utils;
挂载加密目录:sudo mount -t ecryptfs /home/user/secure /home/user/secure(替换为实际目录);
按照提示设置加密算法(如AES)、密码等,完成后目录内文件将自动加密。
5. VeraCrypt:加密容器/磁盘
VeraCrypt是TrueCrypt的衍生工具,支持创建加密容器(虚拟磁盘)或加密整个磁盘,适合需要高安全性的场景(如存储敏感文件)。
- 安装与使用:
安装:sudo yum install veracrypt;
创建加密容器:运行veracrypt,选择“Create Volume”,设置容器大小、加密算法(如AES)、密码等,生成.7z或.raw格式容器;
挂载容器:在VeraCrypt界面选择容器文件,输入密码即可挂载到指定目录(如/mnt/secure_container),挂载后如同普通磁盘使用。
6. 7-Zip:压缩与加密一体化
7-Zip是CentOS常用的压缩工具,支持加密压缩(AES-256算法),适合同时需要压缩和加密的场景(如备份敏感文件)。
- 加密步骤:
安装:sudo yum install p7zip p7zip-plugins;
加密文件:7z a -p'yourpassword' -mhe=on archive.7z sensitive_file.txt(-p设置密码,-mhe=on隐藏文件名);
解密文件:7z x -p'yourpassword' archive.7z(输入密码即可解压并还原文件)。
7. ccrypt:命令行快速加密
ccrypt是专门用于文件加密的命令行工具,使用AES算法,操作简单,适合快速加密单个文件(如日志、配置文件)。
- 加密步骤:
安装:sudo yum install ccrypt;
加密文件:ccrypt -e sensitive_file.txt(生成sensitive_file.txt.cpt);
解密文件:ccrypt -d sensitive_file.txt.cpt(还原为原文件)。