linux下的磁盘加密-luks学习

 linux下的磁盘加密-luks学习

LUKS是linux提供的一种加密标准,在各个linux发行版本都通用。它支持多用户口令,如果用户口令遗失,可以在不重新加密的情况下更改口令。如果要对加密的文件系统进行加载,必须首先进行解密。

工具:cryptsetup。

  使用: luksFormat,luksOpen luksClose,luksAddKey.

 使用cryptsetup对分区进行加密之后,分区不允许直接挂载。LUKS基于device mapper实现。要使用某个加密分区,必须首先将这个分区映射到/dev/mapper下面。之后再挂载该目录下的东东。当然映射过程需要输入加密密码。下面是一个使用示例:

1 创建分区并加密

2 映射

3 格式化并挂载分区

4 关闭映射

----------------------------------------------------------------------------------------------------------------------------------

1 cryptsetup -v -y -c aes-cbc-plain luksFormat /dev/sda1

这步对设备/dev/sda1 进行加密。-y要求输入密码两次,v 表示显示过程,-c表示加密方法:也就是后面跟的 aes-cbc-plain.

 

2 cryptsetup luksOPen /dev/sda1 sx-disk

映射设备/dev/sda1到 /dev/mapper/sx-disk(注意这里用户不用指定/dev/mapper,)

  LL-d /dev/mapper/sx-disk

       lrwxrwxrwx 1 root.root xxxxxxxxxxxxxxx/dev/mapper/sx-disk->../dm-0

       cryptsetup status 可以查看映射状态:cryptsetup status /dev/mapper/sx-disk

 

3 使用分区 

  mkdir /mnt/sx-disk

  mkfs.ext4 /dev/mapper/ds-disk

  mount  /dev/mapper/sx-disk /mnt/sx-disk

 

 

4 卸载

      umount /mnt/sx-disk

  cryptsetup luksClose sx-disk

5 开机自动挂载

   vim /root/cryptpasswd

   cryptsetup luksAddKey /dev/sda1 /root/cryptpasswd

  输入密码:

   vim /etc/crypttab

  sx-disk /dev/sda1 /root /cryptpasswd

  vim /etc/fstab

      /dev/mapper/sx-disk   /mnt/sx-disk   ext4  defaults 0 0

 

来自:hx95.com.article/tech/201206/57399.html

 

你可能感兴趣的:(加密,linux)