Administrera jails via bastille i FreeBSD
Denna guide visar hur man kan köra nginx i ett jail via bastille i FreeBSD 13.2.
Installation
Installera bastille genom kommandot:
Konfiguration
Vi kommer köra bastille på en ZFS pool som heter trunk och vår router har IP adress 192.168.0.1. Editera filen /usr/local/etc/bastille/bastille.conf och se till att följande är konfigurerat:
bastille_tzdata="Europe/Stockholm" bastille_zfs_enable="YES" bastille_zfs_zpool="trunk" bastille_network_gateway="192.168.0.1"
Nätverk
Vi kommer köra jails i privata nätverk och öppna upp access till nginx genom att göra port-forwarding av port 8080 på host:en till nginx. Kör följande kommandon:
Editera filen /etc/pf.conf:
ext_if="igb0" set block-policy return scrub in on $ext_if all fragment reassemble set skip on lo table <jails> persist nat on $ext_if from <jails> to any -> ($ext_if:0) rdr-anchor "rdr/*" block in all pass out quick keep state antispoof for $ext_if inet pass in inet proto tcp from any to any port ssh flags S/SA keep state
Start pf genom att köra:
Skapa ett jail med nginx
Hämta FreeBSD 13.2-RELEASE och även alla patchar:
Skapa ett jail som heter jail1 med IP adress 10.0.0.1:
Installera sen nginx och se till att servicen startar när jailet startar:
Verifiera att webservern är uppe:
<!DOCTYPE html> <html> <head> <title>Welcome to nginx!</title> <style> ...