【Linux】使用cryptsetup加密磁盘 策略为LUKS
LUKS(Linux Unified Key Setup)为Linux硬盘分区加密提供了一种标准,它不仅能通用于不同的Linux发行版本,还支持多用户/口令。因为它的加密密钥独立于口令,所以如果口令失密,我们可以迅速改变口令而无需重新加密真个硬盘。通过提供一个标准的磁盘上的格式,它不仅方便之间分布的兼容性,而且还提供了多个用户密码的安全管理。必须首先对加密的卷进行解密,才能挂载其中的文件系统。
工具:cryptsetup(默认已经安装)
常用参数:luksFormat、luksOpen、luksClose、luksAddKey
使用cryptsetup对分区进行了加密后,这个分区就不再允许直接挂载。LUKS也是一种基于device mapper 机制的加密方案。如果要使用这个分区,必须对这个分区做一个映射,映射到/dev/mapper这个目录里去,我们只能挂载这个映射才能使用。然而做映射的时候是需要输入解密密码的。
注:要解除加密需要备份分区内的文件再重新格式化LUKS分区
Crypsetup工具加密的特点:
Ø加密后不能直接挂载
Ø加密后硬盘丢失也不用担心数据被盗
Ø加密后必须做映射才能挂载
- 格式化LUKS分区
- [root@rhel6 ~]# cryptsetup luksFormat /dev/vda8 //将分区进行LUKS格式(变成LUKS分区)
- WARNING!
- ========
- This will overwrite data on /dev/vda8 irrevocably.
- Are you sure? (Type uppercase yes): YES //输入大写的YES
- Enter LUKS passphrase: //输入两次密码
- Verify passphrase:
- 映射分区
- [root@rhel6 ~]# cryptsetup luksOpen /dev/vda8 luks_test //打开LUKS分区,将在/dev/mapper/目录中生成一个luks_test的文件
- Enter passphrase for /dev/vda8: //必须输入luks密码才能打开LUKS分区
- 格式化、挂载、使用分区
- [root@rhel6 ~]# mkfs.ext4 /dev/mapper/luks_test
- [root@rhel6 ~]# mount /dev/mapper/luks_test /luks/
- 关闭映射,先卸载后关闭
- [root@rhel6 ~]# umount /luks/
- [root@rhel6 ~]# cryptsetup luksClose luks_test //关闭LUKS分区
- [root@rhel6 ~]# mount /dev/vda8 /luks/ //无法直接挂载/dev/vda8分区
- mount: unknown filesystem type 'crypto_LUKS'
- 实现开机自动挂载LUKS分区:
- [root@rhel6 ~]# dd if=/dev/urandom of=keyfile bs=1k count=4
- 4+0 records in
- 4+0 records out
- 4096 bytes (4.1 kB) copied, 0.00206882 s, 2.0 MB/s
- [root@rhel6 ~]# cryptsetup luksAddKey /dev/vda8 keyfile
- Enter any passphrase:
- [root@rhel6 ~]# vi /etc/crypttab
- name /dev/vda8 /root/keyfile luks
- [root@rhel6 ~]# vi /etc/fstab
- /dev/mapper/name /luks ext4 _netdev 0 0
- 添加/移除/修改LUKS密码
- [root@rhel6 ~]# cryptsetup luksAddKey /dev/vda8
- Enter any passphrase:
- Enter new passphrase for key slot:
- Verify passphrase:
- [root@rhel6 ~]# cryptsetup luksRemoveKey /dev/vda8
- Enter LUKS passphrase to be deleted:
- [root@rhel6 ~]# cryptsetup luksAddKey /dev/vda8 keyfile
- Enter any passphrase:
这里只是移除密码,并不是取消加密,如果想把磁盘取消加密的话,只能重新格式化,重新分区,否则是无法挂在的
这里是我删除了key之后的,想再次映射,结果就报错了
[root@testCentOS6 mapper]# cryptsetup luksOpen /dev/sdb ceshi_2
Enter passphrase for /dev/sdb:
No key available with this passphrase.
Enter passphrase for /dev/sdb:
转自:http://blog.51cto.com/vnimos/1175883
【Linux】使用cryptsetup加密磁盘 策略为LUKS的更多相关文章
- 用luks方式对磁盘进行加密以及加密磁盘的自动挂载
1.关于luks加密 LUKS(Linux Unified Key Setup)为Linux硬盘分区加密提供了一种标准,它不仅能通用于不同的 Linux发行版本,还支持多用户/口令.因为它的加密密钥独 ...
- dm-crypt加密磁盘
dm-cry加密方式密码与文件 与其它创建加密文件系统的方法相比,dm-crypt系统有着无可比拟的优越性:它的速度更快,易用性更强.除此之外,它的适用面也很广,能够运行在各种块设备上,即使这些设备使 ...
- Linux Shell之监测磁盘空间
Linux Shell之监测磁盘空间 系统管理员的另一个重要任务就是监测系统磁盘的使用情况.不管运行的是简单Linux台式机还是大型的Linux服务器,我们都要知道还有多少空间可以留给应用程序.事实上 ...
- kvm上的Linux虚拟机使用virtio磁盘
kvm上的Linux虚拟机使用virtio磁盘 系统:centos6.6 64位 网上的文章比较少,怎麽将Linux虚拟机的磁盘改为使用virtio磁盘 因为centos6或以上系统已经包含了vir ...
- Linux学习之路—磁盘分区
1.各硬件设备在Linux中的文件名 在Linux系统中,每个设备都被当做一个文件来对待,同时在Linux系统中,几乎所有的硬件设备文件都在/dev这个目录中. 设备 设备在Linux内的文件名 ID ...
- Linux基础1之磁盘与分区
Linux上面设备皆文件,目前需要知道的,比如U盘和SARA硬盘的在Linux上面的文件名,/dev/sd[a-p].与IDE接口不同的是,SATA/USB接口的磁盘没有一定的顺序,这里就根据Linu ...
- linux使用FIO测试磁盘的iops 【转载】
linux使用FIO测试磁盘的iops 2013-09-23 10:59:21 分类: LINUX FIO是测试IOPS的非常好的工具,用来对硬件进行压力测试和验证,支持13种不同的I/O引擎,包括 ...
- linux性能优化cpu 磁盘IO MEM
系统优化是一项复杂.繁琐.长期的工作,优化前需要监测.采集.测试.评估,优化后也需要测试.采集.评估.监测,而且是一个长期和持续的过程,不 是说现在优化了,测试了,以后就可以一劳永逸了,也不是说书本上 ...
- Linux系统格式化新磁盘并挂载分区
Linux系统格式化新磁盘并挂载分区 在虚拟机的设置界面中,我们可以选择添加硬盘 添加好硬盘后,我们输入命令fdisk -l 看到有一个未经分区的硬盘 Fdisk命令编辑这个硬盘 输入n创建分区,p选 ...
随机推荐
- java 系统属性设置
一.语法: java -Dproperty=value 二.注意事项: value如果有空格,需用使用双引号如:java -Dfoo="some string" 三.常见使用地方: ...
- springMVC基础讲解
一.初识三层架构: 在讲解springMVC之前,先来了解一下什么是三层架构.我们的开发架构一般都是基于两种形式,一种是C/S架构(客户端/服务器),另一种是B/S架构(浏览器服务器).在javaEE ...
- 深度学习炼丹术 —— Taoye不讲码德,又水文了,居然写感知器这么简单的内容
手撕机器学习系列文章就暂时更新到此吧,目前已经完成了支持向量机SVM.决策树.KNN.贝叶斯.线性回归.Logistic回归,其他算法还请允许Taoye在这里先赊个账,后期有机会有时间再给大家补上. ...
- 点击劫持(Iframe clickJack)练习
实验内容: 寻找一个合适的网站放入到iframe标签中.实验中测试了包括知网首页及登录界面.淘宝首页及登录界面,百度首页,微信下载界面.发现淘宝登录界面无法放入,会直接跳转到淘宝真实的登录界面,其他的 ...
- http详解笔记
http详解笔记 http,(HyperText Transfer Protocol),超文本传输协议,亦成为超文本转移协议 通常使用的网络是在TCP/IP协议族的基础上运作的,HTTP属于它的一 ...
- spring整合sharding-jdbc实现分库分表
1.创建两个库,每个库创建两个分表t_order_1,t_order_2 DROP TABLE IF EXISTS `t_order_1`; CREATE TABLE `t_order_1` ( `i ...
- struts文件上传拦截器分析
struts有默认的文件拦截器,一般配置maximumSize就可以了. 知道原理,我们可以写一个类继承它,实现自己的配置上传文件大小的方式. 然后细究页面上传文件的时候,发现了一些问题. act ...
- 远程控制卡 使用ipmitools设置ipmi
远程控制卡 使用ipmitools设置ipmi 使用DELL的远程控制卡可以方便的管理服务器 在CentOS中可以使用ipmitools管理 IPMI( Intelligent Platform Ma ...
- tep0.6.0更新聊聊pytest变量接口用例3个级别复用
tep是一款测试工具,在pytest测试框架基础上集成了第三方包,提供项目脚手架,帮助以写Python代码方式,快速实现自动化项目落地.fixture是pytest核心技术,本文聊聊如何使用fixtu ...
- 学习笔记之Python人机交互小项目二:名片管理系统
继上次利用列表相关知识做了简单的人机交互的小项目名字管理系统后,当学习到字典时,老师又让我们结合列表和字典的知识,结合一起做一个名片管理系统,这里分享给在学习Python的伙伴! 1.不使用函数 1 ...