Qué hace el instalador
Cada paso del install.sh de InfraFence, la revisión previa de solo lectura que ejecuta antes de cambiar nada y el dry run que muestra el plan sin tocar el servidor.
Última actualización:
InfraFence está hecho para servidores en producción: el instalador revisa el servidor en solo lectura antes de cambiar nada, y deja en paz lo que no puede cambiar de forma segura.
Los pasos
- Token y root. Sin
--tokenen un servidor que aún no está registrado, se detiene conInstall token is required; el dry run no necesita token. Debe ejecutarse como root. - Sistema. Solo Linux; detecta el sistema de init (systemd, upstart o sysvinit) y la arquitectura (
amd64oarm64). - Certificados. En los sistemas de la familia RHEL, o cuando
curlno puede verificar la descarga, añade el certificado ISRG Root X1 (Let's Encrypt) a un bundle propio,/etc/infrafence/ca-bundle.pem, y en los sistemas de la familia RHEL también a los certificados del sistema. El certificado va dentro del instalador y nunca se descarga; donde hayopenssl, antes se comprueba con su huella SHA-256 fijada. - Dependencias. Si faltan
curl,iptablesoca-certificates, los instala conapt-get,dnfoyum; en los sistemas rpm instalaiptablescomoiptables-nftdonde existe ese paquete, para que sus reglas usen el mismo backend que firewalld y nftables. Si hay otra operación de paquetes en curso, espera hasta 5 minutos (Another package operation is running — waiting for it to finish...). Nunca ejecutadpkg --configure -ani repara paquetes rotos por su cuenta. - Descarga. El binario del agente para la arquitectura se descarga de la última release de GitHub (
github.comyrelease-assets.githubusercontent.com, la única fuente de descarga) y se comprueba con su checksum SHA-256 publicado. El checksum es obligatorio: si no se puede descargar o no coincide, no se instala nada.--skip-checksuminstala sin él y es inseguro. - Revisión de solo lectura. Ejecuta
infrafence-agent preflightantes de instalar nada (más abajo). - ipset. Se instala solo si falta, si no se ha rechazado con
--no-ipsety si la revisión dice que es seguro: hay un gestor de paquetes disponible y no hay ninguna operación de paquetes en curso. - Instalación. El binario va a
/usr/local/bin/infrafence-agent; el servicio se crea, se habilita y se inicia. - Registro. El agente se registra con tu token y guarda su propio token en
/etc/infrafence/config.json. El token de instalación no se conserva. - Comprobación del arranque. Verifica que el servicio está en marcha e indica dónde leer los registros.
La descarga, el registro y el arranque del servicio comunican su resultado al panel (solo con los primeros caracteres del token), así que una instalación fallida se puede rastrear.
La revisión de solo lectura (preflight)
infrafence-agent preflight analiza el servidor y no cambia nada. El instalador la ejecuta antes de instalar, el agente la ejecuta en cada arranque y luego una vez al día, y tú puedes ejecutarla cuando quieras:
sudo infrafence-agent preflight
sudo infrafence-agent preflight --jsonLa salida empieza con InfraFence preflight (read-only — nothing was changed) y sigue con una línea por hallazgo con su nivel: ok, info, warn o block. Sin --json, el código de salida es 2 cuando un hallazgo es block y 0 en otro caso.
Revisa:
- Firewall: si
iptablesestá instalado y se puede usar, y su backend; siipsetestá presente; otros gestores de firewall y herramientas de seguridad (ufw, firewalld, CSF, fail2ban, CrowdSec, netfilter-persistent, Docker, Kubernetes). - Servidores web: nginx, Apache (
apache2ohttpd), Caddy y LiteSpeed. - Quién gestiona la configuración: paneles de hosting y herramientas de gestión de la configuración (Ansible, Puppet, Chef, Salt). Cuando hay uno, InfraFence nunca edita la configuración del servidor web.
- Paquetes: el gestor de paquetes y cualquier operación de paquetes en curso.
- Recursos: espacio libre en
/(avisa por debajo de 200 MB), memoria disponible (avisa por debajo de 128 MB), el modo de SELinux.
El resultado también llega al panel: la pestaña Host del servidor lo muestra en Compatibilidad del servidor.
El dry run
curl -fsSL https://github.com/infrafence/infrafence-agent/releases/latest/download/install.sh | sudo bash -s -- --dry-runNo necesita token, y en los sistemas de la familia RHEL tampoco cambia nada: el paso de los certificados vale solo para esa ejecución. Descarga el agente, ejecuta la revisión de solo lectura y muestra Dry run — nothing was installed or changed. seguido de lo que haría una ejecución real: instalar el binario y el servicio, instalar ipset o no, crear las cadenas de firewall INFRAFENCE (a las que se salta desde INPUT, y desde DOCKER-USER si Docker está presente) y registrarse. Los cambios en la configuración del servidor web y el bloqueo entrante de las listas de inteligencia de amenazas siguen desactivados hasta que los actives en el panel.
Lo que nunca hace
- Nunca modifica tus reglas de firewall existentes: todo vive en las cadenas propias del agente.
- Nunca termina configuraciones a medias de otros paquetes (
dpkg --configure -a), lo que podría reiniciar servicios. - Nunca edita una configuración que pertenece a un panel de hosting, a LiteSpeed o a una herramienta de gestión de la configuración.
