加密文件、分区和整个磁盘可以防止未经授权访问您的数据,并保护您的机密文件和文档。
您可以选择以下加密选项
您可以在安装期间或已安装的系统中,使用 YaST 创建加密分区。有关更多信息,请参阅第 12.1.1 节,“在安装期间创建加密分区”和第 12.1.2 节,“在正在运行的系统上创建加密分区”。此选项也可用于可移动介质,例如外部硬盘,如第 12.1.3 节,“加密可移动介质的内容”中所述。
要快速加密一个或多个文件,可以使用 GPG 工具。请参阅第 12.2 节,“使用 GPG 加密文件”以获取更多信息。
您可以使用 Rage 加密工具来加密一个或多个文件。请参阅第 12.3 节,“使用 Rage 加密文件”以获取更多信息。
本章中描述的加密方法无法保护您的运行系统免受入侵。在成功挂载加密卷后,具有适当权限的任何人都可以访问它。但是,如果您的计算机丢失或被盗,或者为了防止未经授权的人员读取您的机密数据,加密介质很有用。
使用 YaST 在安装期间或已安装的系统中加密分区或文件系统的一部分。但是,在已安装的系统上加密分区更加困难,因为您需要调整和更改现有分区。在这种情况下,创建具有定义大小的加密文件可能更方便,以便存储其他文件或文件系统的一部分。要加密整个分区,请在分区布局中为加密分配一个分区。YaST 建议的标准分区方案默认情况下不包含加密分区。在分区对话框中手动添加加密分区。
请务必记住加密分区的密码。没有该密码,您将无法访问或恢复加密的数据。
YaST 专家分区对话框提供了创建加密分区所需选项。要创建新的加密分区,请按以下步骤操作
使用 › 运行 YaST 专家分区程序。
选择硬盘,单击 ,然后选择主分区或扩展分区。
选择分区大小或要在磁盘上使用的区域。
选择文件系统和此分区的挂载点。
激活 复选框。
选中 后,可能会出现一个弹出窗口,要求安装其他软件。确认安装所有必需的软件包,以确保加密分区正常工作。
如果需要时挂载加密文件系统,请在 中启用 。否则,启用 并输入挂载点。
单击 并输入用于加密此分区的密码。此密码不会显示。为了防止输入错误,您需要两次输入密码。
通过单击 完成该过程。现在已创建新的加密分区。
在启动过程中,操作系统会在挂载任何在 /etc/fstab 中设置为自动挂载的加密分区之前询问密码。然后,该分区将对所有用户可用(如果已挂载)。
要跳过在启动过程中挂载加密分区,请在提示输入密码时按 Enter。然后拒绝再次输入密码的提示。在这种情况下,加密文件系统不会挂载,操作系统将继续启动,从而阻止访问您的数据。
要挂载在启动过程中未挂载的加密分区,请打开文件管理器,然后单击文件系统列表中常见位置窗格中的分区条目。系统会提示您输入密码,然后挂载该分区。
如果您在已存在分区的计算机上安装系统,也可以决定在安装期间加密现有分区。在这种情况下,请按照第 12.1.2 节,“在正在运行的系统上创建加密分区”中的描述进行操作,并注意此操作会破坏现有分区上的所有数据。
也可以在正在运行的系统上创建加密分区。但是,加密现有分区会破坏其上的所有数据,并且需要重新调整和重构现有分区。
在正在运行的系统上,选择 › 在 YaST 控制中心。单击 以继续。在 中,选择要加密的分区,然后单击 。其余过程与第 12.1.1 节,“在安装期间创建加密分区”中描述的相同。
GNU Privacy Guard (GPG) 加密软件可用于加密单个文件和文档。
要使用 GPG 加密文件,您首先需要生成密钥对。为此,运行 gpg --gen-key 并按照屏幕上的说明操作。在生成密钥对时,GPG 会创建一个用户 ID (UID) 以基于您的真实姓名、评论和电子邮件地址来标识密钥。您需要此 UID(或仅为其一部分,例如您的名字或电子邮件地址)来指定要用于加密文件的密钥。要查找现有密钥的 UID,请使用 gpg --list-keys 命令。要加密文件,请使用以下命令
> gpg -e -a --cipher-algo AES256 -r UID FILE将 UID 替换为 UID 的一部分(例如,您的名字),并将 FILE 替换为您要加密的文件。
> gpg -e -a --cipher-algo AES256 -r Tux secret.txt此命令创建一个可由 .asc 文件扩展名识别的加密版本的指定文件(在本例中,为 secret.txt.asc)。
-a 将文件格式化为 ASCII 文本,如果您希望内容可复制。省略 -a 以创建二进制文件,在上面的示例中将是 secret.txt.gpg。
要解密加密的文件,请使用以下命令
> gpg -d -o DECRYPTED_FILE ENCRYPTED_FILE将 DECRYPTED_FILE 替换为所需的解密文件名,并将 ENCRYPTED_FILE 替换为您要解密的加密文件。
请记住,加密的文件可以使用用于加密的相同密钥进行解密。要与另一个人共享加密的文件,您必须使用该人的公钥来加密该文件。
Rage 是一种安全的的文件加密软件,用于加密文件。它具有易于与其他人共享的密钥,并具有安全的默认设置,以防止意外使用或泄露敏感数据。我们建议使用 Rage 加密文件。
您可以使用以下命令安装 Rage
>sudozypper install rage-encryption
接收者首先需要生成密钥对才能使用 Rage 加密文件
> rage-keygen -o ~/rage.key 2 ~/rage.pub创建了两个文件;rage.pub 和 rage.key。
rage.pub 示例
> cat file.pub
Public key: age17e4g67cs07jk3lmylyq6gduv26uf7tz7nm9jrsaxn8xxx9uc9amsdg4a5erage.key 示例
> cat file.key
# created: 2023-05-30T16:29:20+05:30
# public key: age17e4g67cs07jk3lmylyq6gduv26uf7tz7nm9jrsaxn8xxx9uc9amsdg4a5efile.key 是一个私钥,应保密。
要加密文件,您需要生成的公钥
> rage -e -r PUBLIC_KEY -o ENCRYPTED_FILE FILE例如
> rage -e -r age17e4g67cs07jk3lmylyq6gduv26uf7tz7nm9jrsaxn8xxx9uc9amsdg4a5e -o test.txt.age test.txt加密的文件可以由拥有相应私钥的接收者解密。要与另一个人共享加密的文件,您必须使用该人的公钥来加密该文件。
> rage -d -i ~/rage.key -o DECRYPTED_FILE ENCRYPTED_FILE FILE例如
> rage -d -i ~/rage.key -o test.txt.decrypted test.txt.age您可以使用密码短语通过 -p 或 --passphrase 参数加密文件。默认情况下,Rage 会自动生成安全的密码短语,但您也可以选择输入密码短语。
> rage -e -p -o ENCRYPTED_FILE FILE例如
> rage -e -p -o test.txt.age test.txt您可以使用 SSH(安全套接字壳)密钥而不是 Rage 密钥来加密文件。Rage 支持 ssh-rsa 和 ssh-ed25519 公钥,并使用相应的私钥文件进行解密。ssh-agent 和 ssh-sk(FIDO) 不受支持。
> rage -e -p -o ENCRYPTED_FILE FILE例如
> rage -e -p -o test.txt.age test.txt例如
> ssh-keygen -t ed25519要加密
> rage -e -a -R PUBLIC_KEY_FILE -o ENCRYPTED_FILE FILE例如
> rage -e -a -R id_ed25519.pub -o test.txt.age test.txt要解密
> rage -d -i SSH_PRIVATE_KEY_FILE -o DECRYPTED_FILEENCRYPTED_FILE例如
> rage -d -i id_ed25519 -o test.txt.decrypted test.txt.age您必须输入密钥和文件的路径。
Rage 可以同时加密到多个身份。接收者的任何私钥都可以用于解密该文件。
rage -e -a -R FIRST_SSH_PUBLIC_KEY-r FIRST_RAGE_PUBLIC_KEY... -o ENCRYPTED_FILE FILE
例如
rage -e -a -R id_ed25519.pub -r age1h8equ4vs5pyp8ykw0z8m9n8m3psy6swme52ztth0v66frgu65ussm8gq0t -o -r age1y2lc7x59jcqvrpf3ppmnj3f93ytaegfkdnl5vrdyv83l8ekcae4sexgwkg test.txt.age test.txt
您可以使用 -h 或 --help 参数列出所有 Rage 命令参数。
https://github.com/str4d/rage Rage 加密 GitHub 仓库
https://github.com/C2SP/C2SP/blob/main/age.md Age 加密 GitHub 仓库