热门标签 | HotTags
当前位置:  开发笔记 > 开发工具 > 正文

加密Linux磁盘_如何使用Luks加密一块Linux磁盘

如果我们有一块磁盘上的信息非常重要,怕让别人给你把磁盘“抽走”了,我们可以加密这块磁盘,即使别人得到这块磁盘,也需要密码才能打开这块磁盘才能查看里边的内容。这样的话能够为我们的数据增加一层保护这个时候我们就用到了Luks

如果我们有一块磁盘上的信息非常重要,怕让别人给你把磁盘“抽走”了,我们可以加密这块磁盘,即使别人得到这块磁盘,也需要密码才能打开这块磁盘才能查看里边的内容。这样的话能够为我们的数据增加一层保护这个时候我们就用到了Luks

首先,我们要有一块磁盘,我做实验用的逻辑磁盘,创建了一个逻辑磁盘

第一步,加密

cryptsetup luksFormat /dev/vg1/lv1
cryptsetupluksFormat /dev/vg1/lv1

输入密码: redhat

第二步,开启,并分配逻辑名称

cryptsetup luksOpen /dev/vg1/lv1 secret
cryptsetupluksOpen /dev/vg1/lv1secret

第三步,创建文件系统

mkfs -t ext4 /dev/mapper/secret
mkfs -t ext4 /dev/mapper/secret

第四步,创建挂载点,并挂载

mkdir /secretstuff

mount /dev/mapper/secret /secretstuff
mkdir /secretstuff
 
mount /dev/mapper/secret /secretstuff

这个时候我们就可以正常使用这块磁盘了,我们进去创建几个文件

touch {1..10}.txt
touch {1..10}.txt

然后,我们解挂这块磁盘

umount /secretstuff
umount /secretstuff

然后关闭

cryptsetup luksClose secret
cryptsetupluksClosesecret

这就完成了,但是,比如我们要加密的是一个需要挂载的磁盘,我们不能说每次开机都输入一次密码才能挂载,这样的话有点得不偿失了,其实我们加密 的磁盘可以有好几个锁和钥匙,也就是说我们还可以在这块盘上再加一个解秘的钥匙,而这个钥匙是从文本中读取的,每次开机从文本中自动读取数据然后自己解 谜,当然,这个文本要保护好…

下面我们说一下如何操作:

再没有umount的情况下,我们先创建一个密要

dd if=/dev/urandom of=/root/home-luks-key bs=4096 count=1

chmod 600 /root/home-luks-key

cryptsetup luksAddKey /dev/vg1/lv1 /root/home-luks-key
ddif=/dev/urandomof=/root/home-luks-keybs=4096 count=1
 
chmod 600 /root/home-luks-key
 
cryptsetupluksAddKey /dev/vg1/lv1 /root/home-luks-key

注意,这个地方需要门输入我们之前的密码,就是第一把钥匙的密码

redhat

然后编辑

vim /etc/crypttab

secret   /dev/vg1/lv1  /root/home-luks-key
vim /etc/crypttab
 
secret  /dev/vg1/lv1  /root/home-luks-key

然后我们修改fstab

/dev/mapper/secret /secretstuff  ext4 defaults 1 2
/dev/mapper/secret /secretstuff  ext4defaults 1 2 

完工

reboot测试



推荐阅读
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文介绍了在Mac上配置环境变量,实现Python3的命令行调用的步骤。首先通过官网下载或使用brew安装Python3,并找到安装路径。然后将该路径添加到环境变量中,可以通过编辑.bash_profile文件或执行source命令来实现。配置完成后,即可在命令行中直接调用Python3。 ... [详细]
  • Python项目实战10.2:MySQL读写分离性能优化
    本文介绍了在Python项目实战中进行MySQL读写分离的性能优化,包括主从同步的配置和Django实现,以及在两台centos 7系统上安装和配置MySQL的步骤。同时还介绍了创建从数据库的用户和权限的方法。摘要长度为176字。 ... [详细]
  • Annotation的大材小用
    为什么80%的码农都做不了架构师?最近在开发一些通用的excel数据导入的功能,由于涉及到导入的模块很多,所以开发了一个比较通用的e ... [详细]
  • ZABBIX 3.0 配置监控NGINX性能【OK】
    1.在agent端查看配置:nginx-V查看编辑时是否加入状态监控模块:--with-http_stub_status_module--with-http_gzip_stat ... [详细]
  • (九)Docker常用安装
    一、总体步骤1、搜索镜像2、拉取镜像3、查看镜像4、启动镜像5、停止镜像6、移除镜像二、安装tomcat1、dockerhub上面查找tomcat镜像 dockersearchto ... [详细]
  • 进入配置文件目录:[rootlinuxidcresin-4.0.]#cdusrlocalresinconf查看都有哪些配置文件:[rootlinuxid ... [详细]
  • 1、打开etcsysconfiggrub,   #vimetcsysconfiggrub   内容如下: ... [详细]
  • 本文主要介绍关于linux文件描述符设置,centos7设置文件句柄数,centos7查看进程数的知识点,对【Linux之进程数和句柄数】和【linux句柄数含义】有兴趣的朋友可以看下由【东城绝神】投 ... [详细]
  • Linux 服务器修改用户名
    Linux服务器修改用户名1、编辑名称vimetchostname2、保存编辑并退出wq3、重 ... [详细]
  • 找到JDK下载URL当然去官网找了。目前最新的1.8的下载URL(RPM)如下:http:download.oracle.comotn-pubjavajdk8u161-b122f3 ... [详细]
  • 对于一般的扩展包,我们一般直接pipinstallxxx即可安装,但是unrar直接安装后,发现并不能通过Python程序实现解压的功能& ... [详细]
  • MySQL5.6.40在CentOS764下安装过程 ... [详细]
  • 概述本章主要写当慢查询文件很大的时候怎样在线生成一个新的慢查询文件。测试环境:mysql5.6.2 ... [详细]
  • 【Python 爬虫】破解按照顺序点击验证码(非自动化浏览器)
    #请求到验证码base64编码json_img_datajson_raw.get(Vimage)#获取到验证码编码 #保存验证码图片到本地defbase64_to_img(bstr ... [详细]
author-avatar
洪爷不是我
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有