[cipher][archlinux][disk encryption][btrfs] 磁盘分区加密 + btrfs

科普链接:https://wiki.archlinux.org/index.php/Disk_encryption

前面的链接关于硬盘加密,讲了几种,基本上就是选dm-crypt with LUKS

在grub中,解密根分区以及/boot分区。

dm-crypt文档:https://wiki.archlinux.org/index.php/Dm-crypt

使用 dm-crypt加密一个非根分区。https://wiki.archlinux.org/index.php/Dm-crypt/Encrypting_a_non-root_file_system

dm-crypt 的两种加密方式: PLAIN, LUKS(Linux Unified Key Setup)。

具体什么区别我也不太知道,简单来说就是LUKS在文件系统(硬盘分区?)里存储了与加密信息加密方式相关的元数据。而PLAIN中没有。LUKS是dm-crypt的默认方式。

一堆破文档,都不及man手册讲的清楚。

DESCRIPTION
       cryptsetup  is  used  to  conveniently setup dm-crypt managed device-mapper mappings. These include plain dm-crypt volumes and
       LUKS volumes. The difference is that LUKS uses a metadata header and can hence offer more features than plain dm-crypt. On the
       other hand, the header is visible and vulnerable to damage.

这个man,写的这么好,在我看过的man里边可以排前三。

/home/tong/bin [[email protected]] [19:24]
> man cryptsetup

一: 弄了台虚拟机做实验先:

[[email protected] arch-crypt]# qemu-system-x86_64 -vnc 0.0.0.0:1 --enable-kvm -smp 1 -m 1G -drive file=disk.qcow2,if=virtio -net bridge -net nic,model=virtio -cdrom ../iso/archlinux-2017.05.01-x86_64.iso 

二: 加密非根分区

1.  格式化LUKS分区

[email protected] ~ # cryptsetup luksFormat /dev/vda

WARNING!
========
This will overwrite data on /dev/vda irrevocably.

Are you sure? (Type uppercase yes): YES
Enter passphrase:
Verify passphrase:
cryptsetup luksFormat /dev/vda  5.00s user 0.01s system 41% cpu 12.157 total
[email protected] ~ # 

后边还能加一个参数 keyfile。意思是将keyfile里边的内容作为密码。

2.  挂载加密分区(解密)

[email protected] ~ # cryptsetup open /dev/vda vd_root
Enter passphrase for /dev/vda:
[email protected] ~ # ll /dev/mapper/vd_root
lrwxrwxrwx 1 root root 7 Jun  1 11:58 /dev/mapper/vd_root -> ../dm-0

3.  初始化文件系统

 [email protected] ~ # mkfs.xfs /dev/mapper/vd_root           

4.  挂载使用

[email protected] ~ # mount /dev/mapper/vd_root mnt
[email protected] ~ # ll
total 9
-rw-r--r-- 1 root root 8864 May  1 07:04 install.txt
drwxr-xr-x 2 root root    6 Jun  2 01:56 mnt
[email protected] ~ # cd mnt
[email protected] ~/mnt # ll
total 0
[email protected] ~/mnt # touch 123
[email protected] ~/mnt # touch txt
[email protected] ~/mnt # vim txt
[email protected] ~/mnt # cat txt
123456
[email protected] ~/mnt # ls
123  txt
[email protected] ~/mnt # ll
total 4
-rw-r--r-- 1 root root 0 Jun  2 01:57 123
-rw-r--r-- 1 root root 7 Jun  2 01:57 txt
[email protected] ~/mnt # cd ..

5. 卸载关闭

[email protected] ~ # umount mnt
[email protected] ~ # cryptsetup close vd_root
[email protected] ~ # ll /dev/mapper
total 0
crw------- 1 root root 10, 236 Jun  1 11:58 control
[email protected] ~ # 

三, 加密全系统

https://wiki.archlinux.org/index.php/Dm-crypt/Encrypting_an_entire_system

有多种方式,以及包括boot分区加密等。内容很多

boot分区,MBR加密:https://wiki.archlinux.org/index.php/Dm-crypt/Specialties#Securing_the_unencrypted_boot_partition

chkboot(检查分区是否被串改?)

首先,我选用简单的方法,在LUKS上创建btrfs。查看上述文档的btrfs章节。

btrfs的详细内容,branch到这里:http://www.cnblogs.com/hugetong/p/6934247.html

全系统加密的关键在于,initrd,grub,boot partition,以及kernel。

分区什么的,与非根分区没什么区别,不再叙述。

时间: 2024-10-29 06:25:50

[cipher][archlinux][disk encryption][btrfs] 磁盘分区加密 + btrfs的相关文章

[filesystem][archlinux][disk encryption][btrfs] btrfs

fork from here http://www.cnblogs.com/hugetong/p/6914248.html boot分区,MBR加密:https://wiki.archlinux.org/index.php/Dm-crypt/Specialties#Securing_the_unencrypted_boot_partition 首先,我选择在LUKS上创建btrfs.查看上述文档的btrfs章节. 1. btrfs不支持swap file,必须使用swap分区 https://w

MBR与GPT分区的区别及磁盘分区相关命令

一.MBR分区结构 主引导记录(Master Boot Record,缩写:MBR),又叫做主引导扇区,是目前比较流行的一种分区结构.磁盘的0磁道0扇区称为MBR,它的大小是512字节,这个区域被分为三个部分: 第一部分为boot loader(主引导程序),占446字节: 第二部分为Partition table(分区表),即DPT,占64字节,每个分区项占用16个字节,这16个字节中存有活动状态标志.文件系统标识.起止柱面号.磁头号.扇区号.隐含扇区数目(4个字节).分区总扇区数目(4个字节

linux云自动化运维基础知识19(分区加密,磁盘配额)

一.分区加密 1.创建加密 cryptsetup   luksFormat   /dev/vdb2 This will overwrite data on /dev/vdb2 irrevocably. Are you sure? (Type uppercase yes): YES            ##确定加密Enter passphrase:                     ##密码大于8位,并且不能太简单Verify passphrase:                    

磁盘分区及LVM

###1.磁盘分区####fdisk /dev/磁盘fdisk /dev/vdbWelcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them.Be careful before using the write command. Device does not contain a recognized partition tableBuilding a

30分钟玩转Linux磁盘分区信息管理之步步高深【必知必会常识】

我们看看在Linux系统中磁盘是如何分区的 磁盘分区: fdisk:是Linux的一个操作磁盘分区表的常用工具: 常用的格式:fdisk -l列出使用的磁盘设备 [[email protected] ~]# fdisk -l Disk /dev/sda: 214.7 GB, 214748364800 bytes, 419430400 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512

Linux下磁盘分区、文件管理工具详解

一.规划磁盘分区:fdisk 二.格式化磁盘分区:mkfs.xxx 三.文件系统管理:blkid.e2label.tune2fs 四.创建swap分区:mkswap 五.文件系统的检测:fsck 一:规划磁盘分区 测试环境:CentOS 6.6 1.查看磁盘分区 格式:fdisk -l [磁盘名] 示例: [[email protected] ~]# fdisk -l /dev/sda     //如果不指出磁盘名,会列出所有磁盘分区信息 Disk /dev/sda: 107.4 GB, 107

磁盘分区,格式化,挂载

为什么要分区? 优化I/O性能 实现磁盘空间配额限制 提高修复速度 隔离系统和程序 可以安装多个OS 分区格式:ext1,ext2 ,ext3 ,ext4,xfs ,btrfs... 创建分区:fdisk /dev/sd* [[email protected] ~]# fdisk /dev/sde WARNING: DOS-compatible mode is deprecated. It's strongly recommended to          switch off the mod

Linux磁盘分区和文件管理系统

1.磁盘分区 磁盘类型分为串口的IDE硬盘(hd[a-d])和并口的SCSI.SATA硬盘(sd[a-z]). 硬盘的分区分为主分区(p)和扩展分区两类(e),硬盘的主分区可以划分为4个分区,扩展分区需要继续二次分区后才能使用,即逻辑分区,且主分区和扩展分区之和不能超过4,逻辑分区是没有数量上的限制,逻辑分区一定是从sd[a-z]5开始. 分区命令:fdisk.parted.cfdisk.sfdisk    一般划分2T以下的硬盘用fdisk.2T以上的用parted. fdisk命令: 查看磁

【Linux探索之旅】第一部分第四课:磁盘分区,并完成Ubuntu安装

内容简介 1.第一部分第四课:磁盘分区,并完成Ubuntu安装 2.第一部分第五课预告:Unity桌面,人生若只如初见 磁盘分区 上一课我们正式开始安装Ubuntu了,但是到了分区的那一步,小编却戛然而止.这是什么情况呢? 请读者们千万不要扁我:如果真的要扁,那就请"海扁",让我一次挨(爱)个够(想到了庾澄庆的<让我一次爱个够>),体会一下苏武的感觉. 是这样的:磁盘分区是个很重要且比较难的知识点. 所以我们单独用这一课来讲磁盘分区的概念,磁盘的组成,文件系统,等. 磁盘分