1. 使用LUKS(Linux Unified Key Setup)加密磁盘分区
LUKS是Debian系统推荐的磁盘加密标准,适用于加密整个分区(如系统分区、数据分区),提供强安全性与灵活性。
sudo apt-get update && sudo apt-get install cryptsetup安装cryptsetup(加密工具包)。fdisk或gparted工具创建新分区(如/dev/sda1),然后执行sudo cryptsetup luksFormat /dev/sda1,按提示设置并确认加密密码(此操作会清除分区原有数据)。sudo cryptsetup luksOpen /dev/sda1 my_encrypted_partition命令将加密分区映射为虚拟设备(/dev/mapper/my_encrypted_partition),后续操作将针对此设备。sudo mkfs.ext4 /dev/mapper/my_encrypted_partition格式化分区(可选择ext4、XFS等文件系统),再通过sudo mount /dev/mapper/my_encrypted_partition /mnt挂载到指定目录(如/mnt)。/etc/crypttab文件,添加my_encrypted_partition /dev/sda1 none luks(定义加密分区映射);编辑/etc/fstab文件,添加/dev/mapper/my_encrypted_partition /mnt ext4 defaults 0 0(开机自动挂载)。2. 使用eCryptfs加密文件或目录
eCryptfs是用户空间文件系统,支持透明加密现有目录(如~/Documents),无需修改文件路径,适合加密个人文件或目录。
sudo apt-get update && sudo apt-get install ecryptfs-utils安装eCryptfs。sudo mount -t ecryptfs ~/encrypted ~/encrypted(将~/encrypted目录加密),按提示选择加密算法(如AES)、密钥类型(如密码)及加密选项(如启用文件名加密)。~/encrypted目录写入的文件会自动加密,读取时自动解密;可通过ls ~/encrypted查看加密后的文件(显示为乱码)。sudo umount ~/encrypted卸载,卸载后目录内容不可见(需重新挂载才能访问)。3. 使用VeraCrypt创建加密卷
VeraCrypt是TrueCrypt的继任者,支持创建加密虚拟磁盘(文件形式)或加密物理分区,支持跨平台(Windows、macOS、Linux),适合需要移动加密数据的场景。
.deb格式),运行sudo dpkg -i veracrypt_*.deb安装。/dev/mapper/veracrypt1),可像普通磁盘一样访问。veracrypt -d /path/to/volume卸载。4. 使用GnuPG(GPG)加密单个文件或目录
GPG是命令行工具,适合加密单个文件(如合同、备份文件)或压缩目录(如整个项目文件夹),加密后生成加密文件(如.gpg格式),需密码解密。
sudo apt-get update && sudo apt-get install gnupg安装GPG。gpg --encrypt --recipient "Your Name" file.txt命令加密文件(file.txt为待加密文件,“Your Name”为GPG密钥名称),生成file.txt.gpg(加密文件);若需加密目录,可先使用tar打包(tar czf directory.tar.gz directory/),再加密打包文件。gpg --decrypt file.txt.gpg > file.txt命令解密(需输入密码),解密后得到原始文件。5. 使用EncFS加密目录
EncFS是用户空间加密文件系统,类似eCryptfs,但更灵活,支持将加密目录挂载到任意位置(如~/decrypted),适合加密个人工作目录(如~/workspace)。
sudo apt-get update && sudo apt-get install encfs安装EncFS。mkdir ~/encrypted ~/decrypted(~/encrypted为加密目录,存储加密数据;~/decrypted为解密目录,访问加密数据)。encfs ~/encrypted ~/decrypted,按提示设置加密选项(如加密算法、密码强度),完成后~/decrypted目录将显示加密后的文件(实际存储在~/encrypted中)。fusermount -u ~/decrypted卸载,卸载后~/decrypted目录为空,~/encrypted目录存储加密数据。6. 使用OpenSSL加密文件
OpenSSL是命令行工具,支持对称加密(如AES-256-CBC)和非对称加密(如RSA),适合快速加密单个文件(如日志文件、备份文件),无需安装额外软件包(Debian默认包含)。
openssl enc -aes-256-cbc -salt -in plaintext.txt -out encrypted.bin命令加密(-salt添加盐值增强安全性),输入密码;解密使用openssl enc -d -aes-256-cbc -in encrypted.bin -out decrypted.txt(输入相同密码)。openssl genpkey -algorithm RSA -out rsa_key.pem -pkeyopt rsa_keygen_bits:2048),提取公钥(openssl rsa -pubout -in rsa_key.pem -out rsa_pubkey.pem),然后使用公钥加密(openssl pkeyutl -encrypt -pubin -inkey rsa_pubkey.pem -in plaintext.txt -out encrypted.bin),私钥解密(openssl pkeyutl -decrypt -inkey rsa_key.pem -in encrypted.bin -out decrypted.txt)。