JoergFiedler.freebsd-jail-host

freebsd-jail-host

Build-Status

Diese Rolle wird verwendet, um ein FreeBSD-System zu erstellen, das als Host für ein oder mehrere Jails dienen kann. Es gibt Rollen für Jails, die in Kombination mit dieser Rolle verwendet werden können, um einen jailed www-, db- oder Mail-Server zu erstellen. Sie können diese Jails nach Ihren Wünschen kombinieren, um einen Server zu erstellen, der mehrere WordPress-Installationen, einen einzelnen Mail-Server oder alles andere, was Sie in einem Jail ausführen möchten, hosten kann.

Anforderungen

Diese Rolle ist dafür gedacht, mit einer frischen FreeBSD-Installation verwendet zu werden. Es gibt eine Vagrant Box mit Anbietern für VirtualBox und AWS.

So geht's

Dieses Projekt enthält eine Vagrantfile. Geben Sie ein:

vagrant up

und Sie werden eine saubere FreeBSD-Maschine, die betriebsbereit ist, vorfinden. Sie können nun Jails manuell erstellen oder eine der anderen Rollen verwenden, die ich erstellt habe.

Rollenvariablen

Netzwerk

host_net_ext_if

Schnittstelle für die externe Verbindung des Servers. Standard: '{{ ansible_default_ipv4.interface }}'.

host_net_ext_ip

Die externe IP-Adresse des Servers: Standard: {{ ansible_default_ipv4.address }}'.

host_net_int_if

Die interne Schnittstelle, zu der die IP-Adressen des Jails hinzugefügt werden. Standard: lo0.

host_net_int_ip

Die interne IP-Adresse des Servers. Diese Adresse wird auch der internen Schnittstelle hinzugefügt. Standard: 10.1.0.1.

host_net_int_net

Die Netzmaske für das interne Netzwerk des Jails. Wird verwendet, um UDP über pf zuzulassen, um syslogd zu erreichen. Standard: '10.1.0.1/24'.

host_net_priv_if

Setzen Sie diese Variable, um eine private Netzwerkschnittstelle für Ihren Host zu konfigurieren. Die Schnittstelle selbst wird über DHCP konfiguriert, stellen Sie jedoch sicher, dass die Variable host_net_priv_ip auf die Werte eingestellt ist, die von der DHCP-Anfrage zurückgegeben werden. Standard: ''.

host_net_priv_ip

Setzen Sie die IP, die auf der privaten Netzwerkschnittstelle verwendet werden soll. Auch wenn die Schnittstelle sich selbst über DHCP konfiguriert, fügen Sie hier die IP hinzu, die von der DHCP-Anfrage zurückgegeben wird. Standard: ''.

Disk/ZFS/iocage

host_home_zpool_name

ZPool, der für /home verwendet werden soll. Standard: 'tank'.

host_ioc_release_version

Die FreeBSD-Version, die von iocage verwendet wird, standardmäßig die Host-Version. Standard: {{ ansible_distribution_version }}-RELEASE.

host_ioc_zpool_name

Der Name des ZFS-Pools, der von iocage verwendet werden soll. Standard: tank.

host_ioc_zpool_devices

Wenn der ZFS-Pool für iocage (Jails-Hauptverzeichnis) erstellt werden soll, gibt dies eine durch Leerzeichen getrennte Liste der Geräte an, die für den Pool verwendet werden sollen. Es gibt keinen gültigen Standard. Sie müssen dies angeben, wenn der ZFS-Pool noch nicht vorhanden ist. Standard: None.

host_srv_zpool_name

Der Name des ZFS-Pools, der für den Ordner /srv verwendet werden soll. Standard: tank.

host_srv_zpool_devices

Wenn der ZFS-Pool für den Ordner /srv erstellt werden soll, gibt dies eine durch Leerzeichen getrennte Liste der Geräte an, die für den Pool verwendet werden sollen. Es gibt keinen gültigen Standard. Sie müssen dies angeben, wenn der ZFS-Pool noch nicht vorhanden ist. Standard: None.

SSH

host_sshd_authorized_keys_file

Die Datei, die die öffentlichen Schlüssel enthält, die zur Authentifizierung des sshd-Benutzers verwendet werden. Standardmäßig wird der unsichere öffentliche Schlüssel von Vagrant verwendet: 'vagrant_pub_key'.

host_sshd_port

Der Port, auf dem sshd lauscht. Standard: 22.

host_sshd_user

Der Benutzername, der für den Zugriff auf diesen Server über SSH erlaubt ist. Standard: vagrant.

SSMTP

Diese Funktion ist nur aktiv, wenn die Variable use_ssmtp gesetzt ist.

ssmtp_auth_pass

Das Passwort, das für die SMTP-Authentifizierung verwendet wird. Keine Authentifizierung, wenn leer. Standard: ''.

ssmtp_auth_user

Der Benutzername, der zur Authentifizierung am SMTP-Server verwendet wird. Keine SMTP-Authentifizierung, wenn leer. Standard: ''.

ssmtp_mailhub

Systemmails werden an diesen Mailhost weitergeleitet. Weitere Informationen finden Sie in der ssmtp-Handbuchseite.

Standard: 'mail.maildrop.cc'.

ssmtp_rewrite_domain

Der Domain-Teil von Mails, die von ssmtp gesendet werden, wird mithilfe dieser Variable umgeschrieben. Weitere Informationen finden Sie in der ssmtp-Handbuchseite.

Standard: 'maildrop.cc'.

ssmtp_root

Systemmails werden an dieses Konto weitergeleitet. Weitere Informationen finden Sie in der ssmtp-Handbuchseite.

Standard: 'freebsd-jail-host'.

ssmtp_use_starttls

Verwenden Sie STARTTLS, bevor Sie die SSL-Verhandlung starten. Standard: 'nein'.

ssmtp_use_tls

Verwendet TLS beim Sprechen mit dem SMTP-Server. Standard: 'nein'.

Tarsnap

tarsnap_enabled

Setzen Sie dies auf ja, um Tarsnap für Backups zu verwenden. Standard: nein.

tarsnap_keyfile

Die Schlüsseldatei, die für das Backup mit Tarsnap verwendet wird. Weitere Informationen zur Erstellung finden Sie in der Tarsnap-Dokumentation. Standard: ''.

Paket-Repository

host_build_server_enabled

Erstellen Sie ein zusätzliches Repository in /usr/local/etc/pkg/repos/ mit der URL und dem öffentlichen Schlüssel, die durch die folgenden beiden Variablen bereitgestellt werden. Standard: nein.

host_build_server_pubkey

Der öffentliche Schlüssel des zusätzlichen Repositorys, der verwendet wird, um heruntergeladene Pakete zu überprüfen. Standard: None.

host_build_server_url

Die URL des zusätzlichen Repositorys. Standard: None.

Sonstiges

host_use_syslogd_server

Setzen Sie auf true, um Protokollnachrichten, die vom lokalen syslog geschrieben werden, an einen Syslog-Server innerhalb eines Jails weiterzuleiten. Verwenden Sie die Variable host_syslogd_server, um die IP-Adresse anzugeben. Standard: false.

host_syslogd_server

Die IP-Adresse des Syslog-Servers, an den Nachrichten weitergeleitet werden sollen. Sollte in einem der gehosteten Jails laufen. Standard: ''.

host_timezone

Die Zeitzone, in der sich der Server befindet. Standard: 'Europe/Berlin'.

Abhängigkeiten

Keine.

Beispiel-Playbook

Playbook-Beispiel mit überschriebenen Standardeinstellungen, um diese Rolle zu verwenden, um eine EC2-Instanz einzurichten.

- hosts: all
  become: true

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

Autoreninformation

Wenn Ihnen dieses Projekt gefällt oder Sie Ideen zur Verbesserung haben, eröffnen Sie bitte ein Problem auf GitHub. Vielen Dank.

Installieren
ansible-galaxy install JoergFiedler.freebsd-jail-host
Lizenz
bsd-2-clause
Downloads
178
Besitzer