首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

通过 Bind Mount 实现证书隔离权限

通过 Bind Mount 实现证书隔离权限

以下是完整步骤,利用bind mount将 Let’s Encrypt 证书文件隔离到指定目录,并限制特定的运行用户(如nobody)的访问权限。

步骤 1:创建隔离目录

为隔离的证书访问创建新的目录:

sudo mkdir -p /etc/letsencrypt/nobody/live

sudo mkdir -p /etc/letsencrypt/nobody/archive

•/etc/letsencrypt/nobody/live:用于挂载live目录。

•/etc/letsencrypt/nobody/archive:用于挂载archive目录。

步骤 2:设置 Bind Mount

将 Let’s Encrypt 的实际目录通过bind mount挂载到隔离目录:

sudo mount --bind /etc/letsencrypt/live /etc/letsencrypt/nobody/live

sudo mount --bind /etc/letsencrypt/archive /etc/letsencrypt/nobody/archive

此时,/etc/letsencrypt/nobody下的目录内容与原始目录保持同步。

步骤 3:修改隔离目录权限

将挂载点目录的权限设置为仅nobody用户可访问:

sudo chown -R nobody:nogroup /etc/letsencrypt/nobody

sudo chmod -R 700 /etc/letsencrypt/nobody

chown:更改目录所有者为nobody,组为nogroup。

chmod 700:只有nobody用户可以进入和读取。

步骤 4:验证访问权限

验证隔离目录的权限设置:

1. 测试nobody用户是否可以访问:

sudo -u nobody ls /etc/letsencrypt/nobody/live

sudo -u nobody ls /etc/letsencrypt/nobody/archive

2. 测试其他用户访问时应返回“权限被拒绝”:

ls /etc/letsencrypt/nobody/live

ls /etc/letsencrypt/nobody/archive

步骤 5:持久化 Bind Mount

为确保系统重启后仍然保留bind mount,需要编辑/etc/fstab文件:

sudo nano /etc/fstab

添加以下内容:

/etc/letsencrypt/live /etc/letsencrypt/nobody/live none bind 0 0

/etc/letsencrypt/archive /etc/letsencrypt/nobody/archive none bind 0 0

保存后应用新配置:

sudo mount -a总结

1.安全性

• 原始证书目录(/etc/letsencrypt/live和/etc/letsencrypt/archive)的权限未更改,降低了误操作风险。

• 通过隔离目录(/etc/letsencrypt/nobody)仅允许nobody用户访问。

2.实时同步

• Bind Mount 会动态反映原始目录中的更改,无需手动复制证书。

3.持久化

• 配置/etc/fstab确保系统重启后挂载设置不丢失。

这种方法兼顾了安全性自动化,是加载 Let’s Encrypt 证书的理想方案。

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OSVsIT3CBEb2OhX0hOWMbXFw0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券