Linux磁盘加密

简介:

 使用crypto可以对多数类unix系统中的块设备进行底层数据加密,即在文件系统之下加密。对块设备加密完成后,再对该设备进行文件系统的格式化处理。对加密后的设备进行使用,需通过打开设备(这是需要输入密码)、挂载设备两步来实现。加密设备的退卸,反之即可。

    若需开机自动挂载(即在/etc/fstab里指明),密码读取的方式可以通过两种方法:手动输入、使用/etc/crypttab指定设备对应的密码文件。接下来首先看如何一步一步实现设备加密。



一、 块设备加密

a) 创建新的块设备(磁盘、分区、块设备的文件等);

# fdisk  -cu /dev/sdb

  n-p-1-+100M-w

# partprobe /dev/sdb

b) 使用cryptsetup luksFormat命令把块设备格式化为加密设备,当需要输入yes时记得是大写;

cryptsetup luksFormat /dev/sdb1

YES   \\确认加密

redhat \\输入密码 

redhat  \\重复密码 

c) 使用cryptsetup luksOpen打开设备;

# cryptsetup luksOpen /dev/sdb1 newsdb1  \\与上述格式化输入的密码保持一致

d) 格式化打开的设备;

# ll /dev/mapper/

total 0

crw-rw----. 1 root root 10, 58 Sep 14 13:00 control

lrwxrwxrwx. 1 root root      7 Sep 14 13:11 newsdb1 -> ../dm-2

lrwxrwxrwx. 1 root root      7 Sep 14 13:00 VolGroup-lv_root -> ../dm-0

lrwxrwxrwx. 1 root root      7 Sep 14 13:00 VolGroup-lv_swap -> ../dm-1

# mkfs.ext4 /dev/mapper/newsdb1

e) 修改/etc/fstab使其开机自动挂载;

# vim /etc/fstab

  默认添加以下内容:

 /dev/mapper/newsdb1     /home      ext4    defaults   0 0

# vim /etc/crypttab 

newsdb1 /dev/sdb1 none  \\此时需要在开机过程中输入密码才可进入系统

f) 使用cryptsetup luksAddKey给加密设备添加密码文件;

# touch sdb1passwd

# echo -n "redhat" >> sdb1passwd 

# chmod 600 sdb1passwd 

# cryptsetup luksAddKey /dev/sdb1 /root/sdb1passwd  \\与上述格式化输入的密码保持一致

g) 修改/etc/crypttab使其开机时使用密码文件,自动解密;

# vim /etc/crypttab 

  添加以下内容:

  newsdb1 /dev/sdb1  /root/sdb1passwd

h) 开机测试(reboot)

# mount

/dev/mapper/newsdb1 on /home type ext4 (rw)

# cryptsetup status /dev/mapper/newsdb1

/dev/mapper/newsdb1 is active and is in use.

  type:  LUKS1

  cipher:  aes-cbc-essiv:sha256

  keysize: 256 bits

  device:  /dev/sdb1

  offset:  4096 sectors

  size:    220751 sectors

  mode:    read/write

I) 关闭加密盘 

# umount /home/

# cryptsetup luksClose newsdb1 \\移除LUKS映射

Device newsdb1 is not active.

# cat /etc/crypttab \\清空文件

# cat /etc/fstab \\删除挂载信息

  #/dev/mapper/newsdb1     /home      ext4    defaults   0 0

# fdisk -cu /dev/sdb \\删除/dev/sdb1分区


结论:使用useradd创建的用户是保存在设备/dev/mapper/newsdb1上。



本文转自 dengaosky 51CTO博客,原文链接:http://blog.51cto.com/dengaosky/1852681,如需转载请自行联系原作者

相关文章
|
存储 监控 Linux
Linux: 检测磁盘坏块 你得会吧!
Linux: 检测磁盘坏块 你得会吧!
956 19
Linux: 检测磁盘坏块 你得会吧!
|
Ubuntu Linux Shell
Linux系统中如何查看磁盘情况
【9月更文挑战第3天】在Linux系统中,有多种方式查看磁盘情况。可通过命令行工具`df`查看文件系统磁盘使用情况,选项`-h`以人类可读格式显示,`-T`显示文件系统类型;`du`命令显示目录或文件磁盘使用情况,`-h`以人类可读格式显示,`-s`仅显示总计;`fdisk -l`列出磁盘和分区信息。此外,图形界面的磁盘管理工具和文件管理器也可用于查看磁盘使用情况。这些方法有助于更好地管理磁盘空间。
1636 4
|
Linux
在线对Linux进行磁盘扩容的技术指南。
综上所述,Linux磁盘扩容的过程,重要的不仅是技术,更是对每一步骤的深刻理解和投入的爱心。只要手握正确的工具,我们不仅能满足"孩子"的成长需求,还能享受其中的乐趣和成就。
781 10
|
监控 固态存储 Linux
如何判断Linux磁盘是SSD还是HDD?
总的来说,判断磁盘是SSD还是HDD并不复杂,只需要使用正确的命令和方法,就可以轻松得到结果。希望这些信息对你有所帮助,如果你还有其他问题,欢迎随时提问。
1688 15
|
存储 监控 安全
在Linux中,⼀个EXT3的文件分区,当使用touch test.file命令创建⼀个新文件时报错,报错的信息是提示磁盘已满,但是采用df -h命令查看磁盘大小时,只使用了,60%的磁盘空间,为什么会出现这个情况?
在Linux中,⼀个EXT3的文件分区,当使用touch test.file命令创建⼀个新文件时报错,报错的信息是提示磁盘已满,但是采用df -h命令查看磁盘大小时,只使用了,60%的磁盘空间,为什么会出现这个情况?
|
Linux
Linux系统ext4磁盘扩容实践指南
这个过程就像是给你的房子建一个新的储物间。你需要先找到空地(创建新的分区),然后建造储物间(格式化为ext4文件系统),最后将储物间添加到你的房子中(将新的分区添加到文件系统中)。完成这些步骤后,你就有了一个更大的储物空间。
1469 10
|
Ubuntu Linux 网络安全
Linux磁盘挂接教程
Linux磁盘挂接教程
365 14
|
存储 Linux 5G
Linux 基于 LVM 逻辑卷的磁盘管理【简明教程】
这篇文章介绍了LVM(逻辑卷管理)如何提供灵活的磁盘管理方式,允许动态调整逻辑卷的大小而不会丢失数据。
Linux 基于 LVM 逻辑卷的磁盘管理【简明教程】
|
Unix Linux 对象存储
Linux 磁盘管理
Linux 磁盘管理
215 1
|
监控 Linux 测试技术
Linux系统命令与网络,磁盘和日志监控总结
Linux系统命令与网络,磁盘和日志监控总结
261 1