DigitalOcean块存储上创建加密的文件系统教程

DigitalOcean块存储上创建加密的文件系统教程

扫码添加渲大师小管家,免费领取渲染插件、素材、模型、教程合集大礼包!

DigitalOcean是我们熟悉的一家美国云主机服务器商。产品整体性能优越。而且采用SSD硬盘存储。支持按小时计费模式。因而备受国内站长欢迎。DigitalOcean Volumes是可扩展的。基于SSD的块存储设备。卷使您可以创建和扩展基础结构的存储容量。而无需调整Droplet的大小。Volumes在静止状态下被加密。这意味着卷上的数据在其存储群集之外无法读取。将Volumes附加到Droplet时。Droplet会显示一个解密的块存储设备。并且所有数据都通过隔离的网络传输。

为了提高安全性。您还可以在Volume 的LUKS加密磁盘中创建文件系统。这意味着磁盘将需要由Droplet上的操作系统解密才能读取任何数据。下面就给大家简单介绍下如何在DigitalOcean块存储上创建加密的文件系统。仅供大家参考。

一。创建加密磁盘

cryptsetup是一个实用程序。用于管理其他加密格式之外的LUKS卷。首先。用于cryptsetup初始化卷上的加密磁盘。

sudo cryptsetup -y -v luksFormat /dev/disk/by-id/scsi-0DO_Volume_volume-lon1-01

确保volume-lon1-01用Volume的名称替换。-y当系统提示您创建密码时。该标志将要求您输入两次密码。该-v标志添加了其他人类可读的输出。以验证命令是否成功。

输出将要求您确认覆盖卷上的数据。键入YES全部大写。然后按ENTER继续。

Output

WARNING!

========

This will overwrite data on /dev/disk/by-id/scsi-0DO_Volume_volume-lon1-01 irrevocably.

Are you sure? (Type uppercase yes): YES

接下来。输出将提示您为加密磁盘创建密码。输入一个唯一的强密码短语。然后再次输入以进行验证。此密码无法恢复。因此请将其保存在安全的地方。

Output

. . .

Enter passphrase:

Verify passphrase:

Command successful.

如果需要。将来可以使用cryptsetup luksChangeKey命令更改此密码。您还可以使用最多为每个设备添加8个其他密码短语cryptsetup luksAddKey。

此时。您的磁盘已创建并加密。接下来。将其解密并将其映射到标签以便于引用。在这里。我们将其标记为secure-volume。但是您可以使用任何喜欢的标记它。

sudo cryptsetup luksOpen /dev/disk/by-id/scsi-0DO_Volume_volume-lon1-01 secure-volume

系统将提示您输入密码。输入后。卷现在将映射到/dev/mapper/secure-volume。

为确保一切正常。请验证加密磁盘的详细信息。

cryptsetup status secure-volume

您将看到这样的输出。指示“卷”标签和类型。

Output

/dev/mapper/secure-volume is active.

type: LUKS1

cipher: aes-xts-plain64

keysize: 256 bits

device: /dev/sda

offset: 4096 sectors

size: 209711104 sectors

mode: read/write

此时。您具有受密码保护的加密磁盘。下一步是在该磁盘上创建文件系统。以便操作系统可以使用它来存储文件。

二。创建和挂载文件系统

首先让我们看一下Droplet上的当前可用磁盘空间。

df -h

您将看到类似于此的输出。具体取决于您的Droplet配置:

Output

Filesystem Size Used Avail Use% Mounted on

udev 2.0G 0 2.0G 0% /dev

tmpfs 396M 5.6M 390M 2% /run

/dev/vda1 78G 877M 77G 2% /

tmpfs 2.0G 0 2.0G 0% /dev/shm

tmpfs 5.0M 0 5.0M 0% /run/lock

tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup

/dev/vda15 105M 3.4M 101M 4% /boot/efi

tmpfs 396M 0 396M 0% /run/user/1000

目前。由于Droplet尚无法访问该卷。因此未显示在此列表上。为了使其可访问。我们需要创建并挂载文件系统。/dev/mapper/secure-volume

使用mkfs.xfs实用程序(中号一个ķ ë ˚F ILE 小号 ystem)来创建一个XFS在卷上的文件系统。

sudo mkfs.xfs /dev/mapper/secure-volume

创建文件系统后。您可以挂载它。这意味着可以在Droplet上将其提供给操作系统使用。

创建一个挂载点。将文件系统附加到该挂载点。挂载点的一个很好的建议是该目录中有一个空/mnt目录。因此我们将使用。/mnt/secure

sudo mkdir /mnt/secure

然后挂载文件系统。

sudo mount /dev/mapper/secure-volume /mnt/secure

为确保其正常工作。请再次检查Droplet上的可用磁盘空间。

df -h

现在。您会看到列出的内容。/dev/mapper/secure-volume

Output

Filesystem Size Used Avail Use% Mounted on

udev 2.0G 0 2.0G 0% /dev

tmpfs 396M 5.6M 390M 2% /run

/dev/vda1 78G 877M 77G 2% /

tmpfs 2.0G 0 2.0G 0% /dev/shm

tmpfs 5.0M 0 5.0M 0% /run/lock

tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup

/dev/vda15 105M 3.4M 101M 4% /boot/efi

tmpfs 396M 0 396M 0% /run/user/1000

/dev/mapper/secure-volume 100G 33M 100G 1% /mnt/secure

这意味着您的加密文件系统已连接并可以使用。

当不再需要访问卷上的数据时。可以卸载文件系统并锁定加密的磁盘。

sudo umount /mnt/secure

sudo cryptsetup luksClose secure-volume

您可以验证df -h文件系统不再可用。为了使卷上的数据再次可访问。您将执行以下步骤来打开磁盘(cryptsetup luksOpen …)。创建安装点并安装文件系统。

为了避免每次要使用Volume时都要执行此手动过程。可以将文件系统配置为在Droplet引导时自动挂载。

三。在启动时自动挂载文件系统

加密的磁盘最多可以具有8个密码短语。在最后一步中。我们将创建一个密钥并将其添加为密码短语。然后使用该密钥来配置要在Droplet引导时解密和装入的Volume。

在创建密钥文件/root/.secure_key。此命令将创建一个具有随机内容的4 KB文件:

sudo dd if=/dev/urandom of=/root/.secure-key bs=1024 count=4

调整此密钥文件的权限。以便只有root用户才能读取。

sudo chmod 0400 /root/.secure-key

然后将密钥添加为加密磁盘的密码。

cryptsetup luksAddKey /dev/disk/by-id/scsi-0DO_Volume_volume-lon1-01 /root/.secure-key

系统会提示您输入密码。您可以输入首次创建加密磁盘时设置的磁盘。

/etc/crypttab是一个配置文件。用于定义要在系统启动时设置的加密磁盘。使用nano或您喜欢的文本编辑器打开此文件。

sudo nano /etc/crypttab

将以下行添加到文件底部以在启动时映射卷。

/ etc / crypttab

. . .

secure-volume /dev/disk/by-id/scsi-0DO_Volume_volume-lon1-01 /root/.secure-key luks

中的行格式/etc/crypttab为device_name device_path key_path options。在这里。设备名称为secure-volume(或您选择的名称)。路径为。密钥文件是我们刚刚在创建的。而选项指定加密。/dev/disk/by-id/…/root/.secure_keyluks

保存并关闭文件。

/etc/fstab是用于自动安装的配置文件。打开此文件进行编辑。

sudo nano /etc/fstab

在文件底部添加以下行。以在引导时自动挂载磁盘。

/ etc / fstab

. . .

/dev/mapper/secure-volume /mnt/secure xfs defaults,nofail 0 0

行中的前三个参数/etc/fstab始终为device_path mount_point file_system_type。在这里。我们具有与步骤2相同的设备路径和安装点。并且指定了XFS文件系统。您可以在fstab的手册页(man fstab)中了解其他字段。

保存并关闭文件。现在。将您的加密文件系统设置为在Droplet引导时自动安装。您可以通过重新启动Droplet来进行测试。但请谨慎使用任何正在运行的服务。

默认情况下。DigitalOcean卷未连接到Droplet时将被加密。在本教程中。您通过将文件系统放在Volume上的加密磁盘中添加了附加的安全层。您可以创建加密的磁盘。向其添加密码。然后手动或自动挂载以在Droplet中使用。

更多教程:DigitalOcean教程

分享到 :
相关推荐

高防服务器怎么设置(高防服务器怎么做)

设置高防服务器的方法1.首先。登录提供商平台。进入高防管理功能;2.填写域名信息[&...

法国服务器租用怎么选择(法国服务器租用怎么选择的)

法国服务器租用选择的方法:1。选择正规的IDC服务商。能解决用户在服务器运行过程中碰...

租用日本服务器的优势有哪些(租用日本服务器的优势有哪些呢)

租用日本服务器的优势:1.网络延时方面。对于北方来说。日本服务器速度甚至可以和香港[...

综合评测:Vultr和Hostwinds服务器性能速度对比

因着当前互联网时代的发展。经济全球化。越来越多的站长会选择自己搭建网站。提供云主机的...

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注