Red Hat, Rocky, Alma
The commands for AlmaLinux, Rocky Linux, RHEL and Oracle Linux 8 to 10: prerequisites, installer, firewalld, SELinux in enforcing mode, check, upgrade and uninstall.
La versión que se instala
La versión pública es una versión de desarrollo, llamada 0.3.0-dev. Su nombre no cambia: cada publicación sustituye a la anterior y un identificador de compilación distingue dos compilaciones. Todavía no existe ninguna versión estable: solo se publicará cuando cada sistema y cada paquete se hayan probado de extremo a extremo. Por eso, los comandos de esta página instalan desde el canal dev. Una versión de desarrollo puede contener errores: pruébela en un sitio de prueba antes de confiar en ella.
At a glance
- AlmaLinux, Rocky Linux, Oracle Linux and RHEL 8, 9 and 10 use the same installer and the same steps. It detects the family in /etc/os-release and refuses a version below 8.
- Keep SELinux enforcing: the installer labels the binaries, configuration, data and logs, labels ports 9443 and 9444 and turns on the httpd_can_network_connect boolean.
- firewalld is the default firewall: open 80 and 443, and port 9443 for your admin network only.
- No subscription is needed for ToutWAF itself, but dnf needs access to BaseOS and AppStream to install the prerequisites; on an isolated host, use the offline procedure.
The commands, step by step
Actualice el sistema e instale los requisitos previos
sudo dnf -y update
sudo dnf -y install curl tar ca-certificates firewalld policycoreutils-python-utilsInstale con el instalador de una línea
El script descarga los binarios nativos para su arquitectura, crea un usuario dedicado sin privilegios e instala los servicios systemd reforzados toutwaf-dp (plano de datos, puertos 80 y 443) y toutwaf-cp (plano de control y consola, puerto 9443), y después muestra sus datos de primer acceso.
curl -fsSL https://repo.qu3ntin.com/toutwaf/toutwaf/-/raw/dev/install.sh | sudo bash¿Prefieres leer primero el script?
Descárguelo, revíselo y luego ejecútelo. Recomendado para servidores de producción.
curl -fsSL https://repo.qu3ntin.com/toutwaf/toutwaf/-/raw/dev/install.sh -o install.sh
less install.sh
sudo bash install.shOpciones del instalador
Una instalación nueva vive en una sola carpeta, /var/toutwaf (bin, conf, data y logs; cámbiela con --home DIR o TOUTWAF_HOME), y las herramientas de línea de comandos se enlazan en /usr/local/bin. Una instalación anterior conserva sus propias rutas (/etc/toutwaf, /var/lib/toutwaf) y nunca se mueve.
# only let your admin network reach the console (port 9443)
curl -fsSL https://repo.qu3ntin.com/toutwaf/toutwaf/-/raw/dev/install.sh | sudo bash -s -- --console-from 203.0.113.0/24
# do not touch the host firewall / choose the installation home
curl -fsSL https://repo.qu3ntin.com/toutwaf/toutwaf/-/raw/dev/install.sh | sudo bash -s -- --no-firewall
curl -fsSL https://repo.qu3ntin.com/toutwaf/toutwaf/-/raw/dev/install.sh | sudo bash -s -- --home /opt/toutwaf
# name the channel explicitly (the installer of the dev branch already takes the dev channel; no stable version exists yet)
curl -fsSL https://repo.qu3ntin.com/toutwaf/toutwaf/-/raw/dev/install.sh | sudo bash -s -- --channel devAbra el cortafuegos
El instalador abre estos puertos por defecto cuando firewalld o ufw está activo: 80 y 443, y el puerto 9443 de la consola (restrínjalo a su red de administración con --console-from). El puerto 9444 de los agentes nunca se abre al público. Estos comandos solo hacen falta con --no-firewall, con otro cortafuegos o para hacerlo a mano.
sudo systemctl enable --now firewalld
sudo firewall-cmd --permanent --add-service=http --add-service=https
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="203.0.113.0/24" port port="9443" protocol="tcp" accept'
sudo firewall-cmd --reload
sudo firewall-cmd --list-allSELinux
Mantenga SELinux en modo enforcing. Etiquete los directorios de ToutWAF y compruebe que no se registre ninguna denegación AVC.
getenforce
sudo restorecon -Rv /var/toutwaf
sudo ausearch -m avc -ts recentGestione los servicios
Ambos servicios arrancan con el sistema. Use estos comandos para iniciarlos, detenerlos o reiniciarlos.
sudo systemctl enable --now toutwaf-cp toutwaf-dp
sudo systemctl restart toutwaf-cp toutwaf-dp
sudo systemctl stop toutwaf-dp toutwaf-cpCompruebe los servicios
sudo systemctl status toutwaf-cp toutwaf-dp --no-pager
toutwafctl doctor
curl -kI https://127.0.0.1:9443/
curl -s http://127.0.0.1:9101/healthz
sudo journalctl -u toutwaf-dp -u toutwaf-cp -n 50 --no-pagerActualizar
Haga una copia de la configuración y de los datos y vuelva a ejecutar el instalador: conserva sus ajustes y revierte por sí solo si la nueva versión no queda sana. Las rutas mostradas son las de una instalación nueva (/var/toutwaf); una instalación anterior conserva /etc/toutwaf y /var/lib/toutwaf. También puede actualizar desde la consola, en la página Actualizaciones.
sudo mkdir -p /var/toutwaf.bak
sudo cp -a /var/toutwaf/conf /var/toutwaf/data /var/toutwaf.bak/
curl -fsSL https://repo.qu3ntin.com/toutwaf/toutwaf/-/raw/dev/install.sh | sudo bash -s -- --update --yes
curl -s http://127.0.0.1:9101/healthzDesinstalar
El primer bloque elimina los servicios, los binarios y las reglas de cortafuegos añadidas por ToutWAF, y conserva sus datos. El segundo elimina además la configuración, los datos y los registros.
curl -fsSL https://repo.qu3ntin.com/toutwaf/toutwaf/-/raw/dev/install.sh -o install.sh
sudo bash install.sh --uninstallsudo bash install.sh --uninstall --purgeWhat is not verified
We prefer to say it plainly.
- “Tested” means the full installation passed in a container with systemd; real SELinux enforcement was not exercised, and RHEL was validated on Red Hat UBI images.
- No stable version exists yet: the public version is the development version 0.3.0-dev.