linux系统硬盘设置密码,[实验] Linux 硬盘的加密(通过 crypt 实现)

纪念:站主于 2019 年 11 月完成了此开源实验,并将过程中的所有命令经过整理和注释以后,形成以下教程

步骤目录:

步骤一:硬盘加密后的注意事项

步骤二:生成一个新的分区

2.1 查看现有的分区

2.2 创建一个新的分区

步骤三:创建逻辑卷

3.1 创建卷组

3.2 创建逻辑卷

步骤四:给逻辑卷加密

4.1 给逻辑卷加密

4.2 解锁逻辑卷

4.3 格式化逻辑卷

4.4 锁住逻辑卷

内容五:自动挂载加密逻辑卷

5.1 修改系统自动挂载文件

5.2 创建一个映射器

5.3 创建随机密钥文件

5.4 将密钥文件设为只读为 root

5.5 将密码添到 luks 中,让密码立刻生效

5.6 测试挂载效果

5.6.1 挂载加密逻辑卷

5.6.2 测试加密效果

具体的操作步骤:

步骤一:硬盘加密后的注意事项

(1)加密后不能直接挂载

(2)加密后硬盘丢失也不用担心数据被盗

(3)加密后必须做映射才能挂载

步骤二:生成一个新的分区

2.1 查看现有的分区

# lsblk

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT

sr0 11:0 1 1024M 0 rom

vda 253:0 0 10G 0 disk

└─vda1 253:1 0 10G 0 part /

vdb 253:16 0 10G 0 disk

(补充:在这里是加了一个 vdb 硬盘用来进行分区并加密)

2.2 创建一个新的分区

# fdisk /dev/vdb

命令(输入 m 获取帮助):n

分区号 (1-8,默认 1):

起始 扇区 (0-20971440,默认 0):

Last 扇区 or +扇区 or +size{K,M,G,T,P} (0-20971440,默认 20971440):+5G

分区 1 已设置为 Linux native 类型,大小设为 5 GiB

命令(输入 m 获取帮助):w

The partition table has been altered!

2.2 查看新的分区

# lsblk

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT

sr0 11:0 1 1024M 0 rom

vda 253:0 0 10G 0 disk

└─vda1 253:1 0 10G 0 part /

vdb 253:16 0 10G 0 disk

└─vdb1 253:17 0 5G 0 part

步骤三:创建逻辑卷

3.1 创建卷组

# vgcreate mysqldatavg /dev/vdb1

WARNING: sun signature detected on /dev/vdb1 at offset 508. Wipe it? [y/n]: y

Wiping sun signature on /dev/vdb1.

Physical volume "/dev/vdb1" successfully created.

Volume group "mysqldatavg" successfully created

3.2 创建逻辑卷

# lvcreate -n mysqldatalv -L 1G mysqldatavg

Logical volume "mysqldatalv" created.

步骤四:给逻辑卷加密

4.1 给逻辑卷加密

# cryptsetup luksFormat /dev/mapper/mysqldatavg-mysqldatalv

WARNING!

========

这将覆盖 /dev/mapper/mysqldatavg-mysqldatalv 上的数据,该动作不可取消。

Are you sure? (Type uppercase yes): YES

输入 /dev/mapper/mysqldatavg-mysqldatalv 的口令:

确认密码:

4.2 解锁逻辑卷

# cryptsetup luksOpen /dev/mapper/mysqldatavg-mysqldatalv mysqldata

输入 /dev/mapper/mysqldatavg-mysqldatalv 的口令:

(补充:这里的 mysqldata 是解锁后的硬件名称)

4.3 格式化逻辑卷

# mkfs.ext4 /dev/mapper/mysqldata

(注意:要先解锁了逻辑卷以后才能格式化逻辑卷)

4.4 锁住逻辑卷

# cryptsetup luksClose mysqldata

内容五:自动挂载加密逻辑卷

5.1 修改系统自动挂载文件

# vim /etc/fstab

添加以下内容:

......

/dev/mapper/mysqldata /var/lib/mysql ext4 defaults 0 0

5.2 创建一个映射器

# vim /etc/cypttab

添加以下内容:

......

mysqldata /dev/mapper/mysqldatavg-mysqldatalv /root/keyfile luks

(补充:这里的三个参数分别代表:虚拟设备名、真实设备、密码的存储文件)

5.3 创建随机密钥文件

# dd if=/dev/urandom of=/root/keyfile bs=1024 count=4

5.4 将密钥文件设为只读

# chmod 0400 /root/keyfile

5.5 将密码添到 luks 中,让密码立刻生效

# cryptsetup luksAddKey /dev/mysqldatavg/mysqldatalv /root/keyfile

输入任意已存在的口令:

5.6 测试挂载效果

5.6.1 挂载加密逻辑卷

# mount -a

5.6.2 测试加密效果

# df -h

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值