我有一台联想电脑,正在运行 Ubuntu 20.04 LTS。
我想加密通过 USB 端口连接到电脑的外置硬盘上的文件或目录(以存储应该非常安全的数据)。
如何解决这个问题?
C.S*_*ron 13
从 Universe 存储库安装 p7zip-full
右键单击文件或文件夹并选择Compress
。
确认存档名称并选择.7z
,然后选择Create
。
右键单击 .7z 存档选择使用存档管理器打开。
选择右上角的三行图标,单击密码以创建 AES-256 加密存档。
笔记
您需要安装 7Zip 才能在 Windows 机器上打开存档。
选择并记住强密码是加密安全的重要组成部分。互联网上有很多关于这个主题的好文章。
HDD、SSD 和闪存驱动器都可以在没有通知的情况下变砖。SLC、(单级单元)SSD 和闪存驱动器的使用寿命最长。最好在保险箱中保留备份驱动器和密码副本。
有关 P7Zip-Desktop 的完整教程,请访问:https ://www.how2shout.com/linux/how-to-install-p7zip-gui-on-ubuntu-20-04-lts/
Rin*_*ind 10
(对于目录,我会将其压缩为文件)
加密可以通过...
gpg -c {file}
Run Code Online (Sandbox Code Playgroud)
提供一个合适的密码。解密:
gpg {file}.gpg
Run Code Online (Sandbox Code Playgroud)
并提供您使用的密码。如果您想使用 Windows 解密,您可以使用“gpg4win”。完成后删除原始文件。
rinzwind@schijfwereld:~$ ls -ltr test
-rwx------ 1 rinzwind rinzwind 418 mei 14 18:11 test
rinzwind@schijfwereld:~$ file test
test: POSIX shell script, ASCII text executable
rinzwind@schijfwereld:~$ gpg -c test
rinzwind@schijfwereld:~$ file test*
test: POSIX shell script, ASCII text executable
test.gpg: GPG symmetrically encrypted data (AES256 cipher)
rinzwind@schijfwereld:~$ more test.gpg
?
?KY+?7???S/?Gp??(????z&???Ag?????)|?IT[???>e?:\#/????Xko??^?)??@??m?6?'?
?vp;???
?XX???&?>Uk?v???rY!??sD????A?
r??=???'Ug??G?|6&(?l???\????fc??Q?Xn \?k?^?
?-?????G*??J??E
Run Code Online (Sandbox Code Playgroud)
然后我会添加一些额外的安全性:
sudo -i
chown root:root {file}
chmod 000 {file}
chattr +i {file}
最后一个设置不可变位并更改您第一次需要做的任何事情chattr -i {file}
。它看起来像这样:
---------- 1 root root 353 mei 16 09:05 test.gpg
Run Code Online (Sandbox Code Playgroud)
一个额外的额外方法可能是添加一个“。” 到文件的开头以使其隐藏。
您可以使用cryptsetup
稀疏文件来创建自动增长的加密容器。
如果您还没有cryptsetup
安装,请运行:
$ sudo apt update && sudo apt install cryptsetup
Run Code Online (Sandbox Code Playgroud)
注意:这不适用于 FAT32 或 exFAT 卷,因为它们不支持稀疏文件。您需要使用 NTFS 或 ext4,或者提前预分配磁盘空间。
需要根,因为cryptsetup
在/dev
.
创建一个稀疏文件,用于存储加密数据。稀疏文件不会预先占用所有空间,但会随着您向其中添加数据而增长。10G
这意味着您将能够在容器中存储多达 10 GB 的数据(由于文件系统开销,实际上略少)。
$ truncate -s 10G encrypted.luks
Run Code Online (Sandbox Code Playgroud)
(有些工具会从一开始就将此文件报告为 10 GB - 这很好)
在文件中创建一个加密容器。
$ sudo cryptsetup luksFormat encrypted.luks
WARNING!
========
This will overwrite data on encrypted.luks irrevocably.
Are you sure? (Type uppercase yes): YES
Enter passphrase for encrypted.luks:
Verify passphrase:
Run Code Online (Sandbox Code Playgroud)
打开加密容器。
$ sudo cryptsetup open encrypted.luks encrypted
Enter passphrase for encrypted.luks:
Run Code Online (Sandbox Code Playgroud)
在容器内创建一个文件系统。(选择任何一个 - 它不必与驱动器的文件系统匹配。)
$ sudo mkfs.ext2 -m0 -Lencrypted /dev/mapper/encrypted
mke2fs 1.45.5 (07-Jan-2020)
Creating filesystem with 2617344 4k blocks and 655360 inodes
Filesystem UUID: d61f80bc-e3aa-41c8-91ca-97b8302d8bc0
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
Allocating group tables: done
Writing inode tables: done
Writing superblocks and filesystem accounting information: done
Run Code Online (Sandbox Code Playgroud)
您现在可以挂载文件系统。
$ sudo mount /dev/mapper/encrypted /mnt
$ ls /mnt
lost+found
Run Code Online (Sandbox Code Playgroud)
如果使用正确的工具进行检查,容器文件应该远小于 10 GB:
$ du -h encrypted.luks
249M encrypted.luks
$ du -h --apparent-size encrypted.luks
10G encrypted.luks
Run Code Online (Sandbox Code Playgroud)
要“弹出”或移除容器:
卸载它。
$ sudo umount /mnt
Run Code Online (Sandbox Code Playgroud)
关闭容器。
$ sudo cryptsetup close encrypted
Run Code Online (Sandbox Code Playgroud)
如果您想销毁容器,可以选择删除该文件。
$ sudo rm encrypted.luks
Run Code Online (Sandbox Code Playgroud)
请注意,当您从中删除文件时,容器不会缩小。您可以尝试打开它,--allow-discards
然后fstrim -v /mnt
再次在稀疏文件中打孔。它在本地磁盘上对我有用,但在 USB 驱动器上不起作用。也许这取决于“父”文件系统,我不知道。
归档时间: |
|
查看次数: |
1901 次 |
最近记录: |