在RHEL系统中,可以使用cryptsetup工具对磁盘进行加密操作,再创建文件系统,实现敏感数据的安全性。
对磁盘进行加密
[root@server ~]# cryptsetup luksFormat /dev/vdb1 ##对磁盘/dev/vdb1进行加密 WARNING! ======== This will overwrite data on /dev/vdb1 irrevocably. Are you sure? (Type uppercase yes): YES ##确定加密 Enter passphrase: ##输入密码 Verify passphrase: ##确认密码 [root@server ~]# cryptsetup open /dev/vdb1 jinx ##打开加密磁盘,映射至jinx Enter passphrase for /dev/vdb1: ##输入密码 ####映射的设备存放于/dev/mapper/* [root@server ~]# ls /dev/mapper/ control jinx格式化设备
[root@server ~]# mkfs.xfs /dev/mapper/jinx meta-data=/dev/mapper/jinx isize=256 agcount=4, agsize=655167 blks = sectsz=512 attr=2, projid32bit=1 = crc=0 data = bsize=4096 blocks=2620667, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=0 log =internal log bsize=4096 blocks=2560, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0挂载设备
[root@server ~]# mount /dev/mapper/jinx /mnt/ ##挂载映射设备至/mnt下 [root@server ~]# touch /mnt/file{1..10} ##创建测试文件 [root@server ~]# ls /mnt file1 file10 file2 file3 file4 file5 file6 file7 file8 file9卸载设备
[root@server ~]# umount /dev/mapper/jinx ##卸载挂载设备 [root@server ~]# cryptsetup close jinx ##关闭设备加密 [root@server ~]# ls /dev/mapper/ control [root@server ~]# mount /dev/vdb1 /mnt ##加密设备无法挂载 mount: unknown filesystem type 'crypto_LUKS'当然还可以设置开机启动
1、创建密码文件,写入密码。如/root/passwd
2、修改/etc/crypttab文件,使磁盘识别密码
[root@server ~]# cat > /etc/crypttab << "EOF" > jinx /dev/vdb1 /root/passwd > EOF3、将密码文件与设备关联
[root@server ~]# cryptsetup luksAddkey /dev/vdb1 /root/passwd4、设置开机自动挂载
[root@server ~]# cat >> /etc/fstab << "EOF" > /dev/mapper/jinx /mnt xfs defaults 0 0 > EOF