使用luks加密磁盘,磁盘需要映射才可以挂载,映射的时候需要输入密码验证。luks相对于是对硬盘上了一把锁,要想打开就得有相应的钥匙,如果打开了就可以随意操作了,和普通硬盘一样。

使用方法如下:

0、分区   创建一个磁盘分区/dev/sdb1,不进行格式化

[root@localhost]#fdisk /dev/sdb1  

显示当前分区信息   Command (m for help):p  

删除分区   Command (m for help):d  

开始分区   Command (m for help):n  

  Command action     e   extended     p   primary partition (1-4)   p  

  Partition number (1-4): 1  

  First sector (1-104865, default 1): 回车  

  Last sector, +sectors +size{M,K,G} (1-104865, default 104865): 回车  

  保存退出   wq

1、加密分区

[root@localhost]# cryptsetup -v -y -c aes-cbc-plain luksFormat /dev/sdb1    

  WARNING!    

  ========    

  This will overwrite data on /dev/sdb1 irrevocably.    

  Are you sure? (Type uppercase yes): YES  --> 注意:这里必须是大写的YES  

  Enter LUKS passphrase:  

  Verify passphrase:   Command successful.

2、映射分区

[root@localhost]# cryptsetup luksOpen /dev/sdb1 sx_disk  //把sdb1映射为sx_disk   

  Enter passphrase for /dev/sdb1:  

[root@localhost]# ll -d /dev/mapper/sx_disk   

  lrwxrwxrwx. 1 root root 7  6月 25 03:24 /dev/mapper/sx_disk -> ../dm-0   //查看

[root@localhost]# cryptsetup status /dev/mapper/sx_disk //查看映射分区状态  

  /dev/mapper/

  /dev/mapper/sx_disk is active.   

  type:  LUKS1   cipher:  aes-cbc-plain  

  keysize: 256 bits   device:  /dev/sdb1   

  offset:  4096 sectors   

  size:    16767701 sectors   

  mode:    read/write

3、挂载使用

[root@localhost]# mkdir /mnt/sx_disk  

[root@localhost]# mkfs.ext3 /dev/mapper/sx_disk  

[root@localhost]# mount /dev/sdb1 /mnt/sx_disk/   //直接挂载是不可以的   

  mount: unknown filesystem type 'crypto_LUKS'  

[root@localhost]# mount /dev/mapper/sx_disk /mnt/sx_disk/ //挂载映射设备,挂载成功

4、设置开机自动挂载   生成密钥文件,www.linuxidc.com 如果想开机时手动输入密码可以不生成

[root@localhost]# touch /root/cryptpasswd  

[root@localhost]# cryptsetup luksAddKey /dev/sdb1 /root/cryptpasswd    

  Enter any passphrase:  

[root@localhost]# cat /root/cryptpasswd  //直接查看密钥为空

5、设置开机自动解密

[root@localhost]# vim /etc/crypttab  

[root@localhost]# cat /etc/crypttab  

  sx_disk /dev/sdb1 /root/cryptpasswd   //sx_disk为映射名称,/dev/sdb1是加密设备设备,/root/cryptpasswd为密码文件,如果想开机手动输入密码,密码文件处空着即可  

[root@localhost]# vim /etc/fstab  

[root@localhost]# tail -1 /etc/fstab  

   /dev/mapper/sx_disk       /mnt/sx_disk             ext4 defaults   0 0

6、程序设置开机启动,在/etc/rc.local里面添加下面内容

[root@localhost]vim /etc/rc.local   /bin/bash "程序路径"

7、关闭映射,先卸载后关闭,注意:卸载后开机不会自己加载密码解锁的,这项在项目中不使用。   需要先退出目录

[root@localhost]# cd /root  

[root@localhost]# umount /mnt/sx_disk/  

[root@localhost]# cryptsetup luksClose sx_disk  //关闭映射  

[root@localhost]# ll /dev/mapper/  //映射设备已经不见了

  总用量 0   crw-rw----. 1 root root 10, 58  6月 25 03:01 control

8、禁止进入单用户模式   给grub加个密码,增禁止他人以单用户模式进入系统. 有2个方式:   vim /boot/grub/grub.conf  或者  vim /etc/grub.conf(/etc/grub.conf是/boot/grub/grub.conf的符号链接),

1、明文方式:在splashimage这个参数下一行添加: password=密码。

   保存后重新启动计算机,再次登录到GRUB菜单页面的时候就会发现,这时已经不能直接使用e命令编辑启动标签了,须先使用p命令,输入正确的密码后才能够对启动标签进行编辑.    

   我们设置了明文密码也不是很安全的,如果他人得到了明文密码后仍然可以修改GRUB启动标签从而修改root密码。

2、MD5加密方式:在终端中输入grub-md5-crypt回车,这时系统会要求输入两次相同的密码,之后系统便会输出MD5码。  

   大家只需要将生成的MD5密文复制下来,在splashimage这个参数下一行添加: password --md5 MD5密文比如:              

   #grub-md5-crypt     

         splashimage=(hd0,0)/grub/splash.xpm.gz                 

   password --md5 $1$xI6vS$Wi5pi8JyORUNnj3/0Yq2/0                 

         hiddenmenu   

        保存后重新启动计算机,再次登录到GRUB菜单页面的时候就会发现,这时已经不能直接使用e命令编辑启动标签了,须先使用p命令,输入正确的密码后才能够对启动标签进行编辑。

Linux下磁盘加密luks使用的更多相关文章

  1. linux初学者-磁盘加密篇

    linux初学者-磁盘加密篇 因为保密需要,一般系统中会在文件和磁盘中进行加密,但是文件的加密比较容易破解,不安全.所以在特殊需要下,会对磁盘进行加密,磁盘加密后在磁盘损坏的同时,其中的数据也会损坏, ...

  2. linux下磁盘占用达到100%了,找不到哪些大文件耗尽了磁盘

    Linux下的根分区使用率100%,但是查看/分区下的目录都不大,没有占用满,这该怎么处理? 重启是肯定有效的,目前处理情况:重新restart应用后,空间释放出来 1.lsof | grep del ...

  3. centos Linux下磁盘管理 parted,df ,du,fdisk,partprobe,mkfs.ext4,mount,/etc/fstab,fsck,e2fsck,mk2efs,tmpfs ,nr_inodes, LVM,传统方式扩容文件系统 第七节课

    centos Linux下磁盘管理   parted,df ,du,fdisk,partprobe,mkfs.ext4,mount,/etc/fstab,fsck,e2fsck,mk2efs,tmpf ...

  4. Linux下磁盘管理命令df与du

    Linux下磁盘管理命令df与du  对磁盘进行查看和控制的两个linux命令,df和du.  一.du命令 首先看一下du的help说明: [root@misdwh opt]# du --help ...

  5. Linux下磁盘分区、挂载、卸载操作记录

    Linux下磁盘分区.挂载.卸载操作记录. 操作环境:CentOS release 6.5 (Final) Last :: from 118.230.194.76 [root@CentOS ~]# [ ...

  6. Windows/Linux下磁盘使用的图形化工具简介

    Windows/Linux下磁盘使用的图形化工具简介   如何以图形界面查看磁盘及分区的大小及剩余容量呢?今天我为大家介绍两款Windows/Linux下磁盘使用的图形化工具分别是Spacesniff ...

  7. Linux下磁盘挂载

    公司硬盘不够用了,新买了一个存储,需要挂载到现在的系统上.前期的步骤就不说了,运维全部搞定,无非是硬件和网络那一套,这里只说分配到本人后在Linux下如何挂载. 具体步骤如下: 1.查看是否已经分配 ...

  8. Linux下磁盘分区挂载

    一般你去买vps都会看到介绍说硬盘多少G  比如 80G 但是你进入系统df -h的时候发现怎么只有10G呢, 其实这10G是用来装系统的和一些常用服务软件的  不是给你放网站数据的 那50G硬盘在哪 ...

  9. linux下磁盘的挂载与卸载

    Linux下每个文件系统都有独立的inode,block,super block等信息,这个文件系统要挂载到目录树才可以使用,将文件系统与目录树结合的操作称为挂载,反之则为卸载. 也就是说,挂载点一定 ...

随机推荐

  1. _THROW 何解?

    在看/usr/include/........中.h头文件对函数接口的定义时,总是能看到在函数结尾加一个_THROW,一时不明白这是什么意思,而且对于有些POSIX和ISO C不承认或未明确的定义的函 ...

  2. 如果数据需要被多个应用程序消费的话,推荐使用 Kafka,如果数据只是面向 Hadoop 的,可以使用 Flume

    https://www.ibm.com/developerworks/cn/opensource/os-cn-kafka/index.html Kafka 与 Flume 很多功能确实是重复的.以下是 ...

  3. php异步任务处理: gearman

    Gearman是一个用来把工作委派给其他机器.分布式的调用更适合做某项工作的机器.并发的做某项工作在多个调用间做负载均衡 准备软件包 gearmand-1.1.12.tar.gz gearman-1. ...

  4. sed 简单用法

    sed的一个简单用法: eg:在某一个文件中的一个aaa字段前后添加某些字段. 在aaa前面添加字段:sed -ne 's/aaa/&HELLO/p' test 输出结果:aaaHELLO 在 ...

  5. Python的pymysql模块

    PyMySQL是在Python3.x版本中用于连接MySQL服务器的一个库,Python2中则使用MySQLDB. 1.基本语法 # 导入pymysql模块 import pymysql # 连接da ...

  6. 20145239 杜文超《Java程序设计》课程总结

    <每周读书笔记链接汇总> 第一周读书笔记:http://www.cnblogs.com/dwc929210354/p/5247666.html 第二周读书笔记:http://www.cnb ...

  7. react服务端渲染

    一.服务端渲染的好处 1.SEO, 让搜索引擎更容易读取页面内容: 2.首屏渲染速度更快(重点),无需等待JS文件下载执行过程: 3.更易于维护,服务端和客户端可以共享某些代码: 二.实现原理 服务端 ...

  8. datax 添加oraclewriter

    日期格式: <param key="dtfmt" value="yyyy-MM-dd hh24:mi:ss"/>

  9. BZOJ 1232 [Usaco2008Nov]安慰奶牛cheer:最小生成树【树上dfs性质】

    题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1232 题意: 给你一个无向图,n个点,m条边. 每条边有边权len[i][j],每个点有点 ...

  10. legend2---开发日志14(游戏对用户友好的设计思路)

    legend2---开发日志14(游戏对用户友好的设计思路) 一.总结 一句话总结: 不强制,但是激励:比如宗门灵力等级从强制提升到提升宗门和用户的修炼速度 1.丹药有必要做成随机数值么? 没有 1. ...