31.5 Alpine Jail
创建 Alpine Jail 基本系统
构建基本系统:
# 下载 Alpine Linux 3.17.1 minirootfs 镜像
# fetch https://mirrors.ustc.edu.cn/alpine/v3.17/releases/x86_64/alpine-minirootfs-3.17.1-x86_64.tar.gz
# 创建 Alpine Jail 根目录
# mkdir -p /usr/jails/alpine
# 解压 minirootfs 到 Jail 根目录
# tar zxf alpine-minirootfs-3.17.1-x86_64.tar.gz -C /usr/jails/alpine/
# 创建必要的设备节点
# touch /usr/jails/alpine/dev/shm
# touch /usr/jails/alpine/dev/fd管理挂载文件
创建 /etc/fstab.alpine 文件。其中 /tmp 挂载已被注释,避免将整个宿主机 /tmp 目录暴露给 Jail,以提高安全性:
devfs /usr/jails/alpine/dev devfs rw 0 0
tmpfs /usr/jails/alpine/dev/shm tmpfs rw,size=1g,mode=1777 0 0
fdescfs /usr/jails/alpine/dev/fd fdescfs rw,linrdlnk 0 0
linprocfs /usr/jails/alpine/proc linprocfs rw 0 0
linsysfs /usr/jails/alpine/sys linsysfs rw 0 0
#/tmp /usr/jails/alpine/tmp nullfs rw 0 0 # 注释掉可避免将整个宿主机 /tmp 目录暴露给 Jail管理 Jail 模板
在 /etc/jail.conf 文件中写入:
设置开机时启动,随后立即启动:
防火墙放行网络
在 pf 防火墙中允许网络访问,与前述方法相同:
为基本系统配置 OpenRC
进入 Jail。minirootfs 仅提供基础环境,安装 OpenRC 可获得完整的服务管理能力:
修改 /etc/jail.conf 文件中 Alpine 的配置:
重启 alpine Jail:
最后更新于