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(还原为原文件)。