JoergFiedler.freebsd-jail-host

freebsd-jail-host

构建状态

该角色用于创建一个 FreeBSD 系统,供托管一个或多个 jail 使用。还有专门针对 jail 的角色,可以与此角色结合使用,来创建一个 jailed www、db 或邮件服务器。您可以根据需要组合这些 jail,创建一个可以托管多个 WordPress 安装、单一邮件服务器或您想在 jail 中运行的任何其他服务的服务器。

要求

该角色旨在与全新的 FreeBSD 安装一起使用。可以使用提供者为 VirtualBox 和 AWS 的 Vagrant Box

使用方法

该项目包含一个 Vagrantfile。输入

vagrant up

您将享受一个全新的 FreeBSD 机器的运行。您现在可以手动创建 jail,或使用我创建的其它角色之一。

角色变量

网络

host_net_ext_if

服务器的外部接口。默认值: '{{ ansible_default_ipv4.interface }}'

host_net_ext_ip

服务器的外部 IP 地址。默认值:{{ ansible_default_ipv4.address }}'

host_net_int_if

将添加 jail 的 IP 地址的内部接口。默认值:lo0

host_net_int_ip

服务器的内部 IP 地址。该地址也会添加到内部接口。默认值:10.1.0.1

host_net_int_net

jail 内部网络的子网掩码。用于允许 UDP 通过 pf 以到达 syslogd。默认值:'10.1.0.1/24'

host_net_priv_if

设置此变量以配置主机的私有网络接口。接口本身通过 DHCP 配置,但请确保变量 host_net_priv_ip 设置为 DHCP 请求返回的值。默认值:''

host_net_priv_ip

设置用于私有网络接口的 IP。即使接口通过 DHCP 自行配置,仍需在此添加 DHCP 请求返回的 IP。默认值:''

磁盘/ZFS/iocage

host_home_zpool_name

应用于 /home 的 ZPool。默认值:'tank'

host_ioc_release_version

iocage 获取/使用的 FreeBSD 版本,默认为主机发布版本。默认值:{{ ansible_distribution_version }}-RELEASE

host_ioc_zpool_name

iocage 应使用的 ZFS 池名称。默认值:tank

host_ioc_zpool_devices

如果要创建用于 iocage(jails 主页)的 ZFS 池,此处指定要用于池的设备的空格分隔列表。没有有效的默认值。如果 ZFS 池尚不存在,您必须指定。默认值:无。

host_srv_zpool_name

应用于 /srv 文件夹的 ZFS 池名称。默认值:tank

host_srv_zpool_devices

如果要创建用于 /srv 文件夹的 ZFS 池,此处指定要用于池的设备的空格分隔列表。没有有效的默认值。如果 ZFS 池尚不存在,您必须指定。默认值:无。

SSH

host_sshd_authorized_keys_file

包含用于认证 sshd 用户的公钥的文件。默认为不安全的 vagrant 公钥:'vagrant_pub_key'

host_sshd_port

sshd 监听的端口。默认值:22

host_sshd_user

允许通过 ssh 访问此服务器的用户名。默认值:vagrant

SSMTP

如果变量 use_ssmtp 被设置,则该功能才会激活。

ssmtp_auth_pass

用于执行 SMTP AUTH 的密码。如果为空,则不进行身份验证。默认值:''

ssmtp_auth_user

用于通过 SMTP 服务器进行身份验证的用户名。如果为空,则不进行 SMTP AUTH。默认值:''

ssmtp_mailhub

系统邮件将转发到此邮件主机。有关更多信息,请参见 ssmtp 手册页

默认值:'mail.maildrop.cc'

ssmtp_rewrite_domain

通过此变量重写 ssmtp 发送邮件的域部分。有关更多信息,请参见 ssmtp 手册页

默认值:'maildrop.cc'

ssmtp_root

系统邮件将转发到该账户。有关更多信息,请参见 ssmtp 手册页

默认值:'freebsd-jail-host'

ssmtp_use_starttls

在启动 SSL 协商前使用 STARTTLS。默认值:'no'

ssmtp_use_tls

与 SMTP 服务器通信时使用 TLS。默认值:'no'

Tarsnap

tarsnap_enabled

设置为 yes 以使用 tarsnap 进行备份。默认值:no

tarsnap_keyfile

使用 tarsnap 备份的密钥文件。有关如何创建密钥文件,请参阅 tarsnap 文档。默认值:''。

软件包存储库

host_build_server_enabled

/usr/local/etc/pkg/repos/ 中使用以下两个变量提供的 URL 和公钥创建一个附加存储库。默认值:no

host_build_server_pubkey

用于验证下载软件包的附加存储库的公钥。默认值:无。

host_build_server_url

附加存储库的 URL。默认值:无。

其他

host_use_syslogd_server

设置为 true 将本地 syslog 写入的日志消息转发到 jail 内的 syslog 服务器。使用变量 host_syslogd_server 指定 IP 地址。默认值:false

host_syslogd_server

转发消息的 syslog 服务器的 IP 地址。应在托管的一个 jail 内运行。默认值:``。

host_timezone

服务器所在的时区。默认值:'Europe/Berlin'

依赖关系

无。

示例剧本

示例剧本,使用此角色设置 EC2 实例,覆盖默认值。

- hosts: all
  become: true

roles:
  - role: 'JoergFiedler.freebsd-jail-host'

作者信息

如果您喜欢该项目或有改进的想法,请在 GitHub 上提出问题。谢谢。

安装
ansible-galaxy install JoergFiedler.freebsd-jail-host
许可证
bsd-2-clause
下载
178
拥有者