Tema 9 · Filtros & Seguridad

Filtros de Exclusión: Ignorar .git, .env y node_modules

Aprende a configurar filtros de exclusión en FileZilla para evitar la subida accidental de secretos (.env), repositorios (.git) y carpetas pesadas (node_modules).

Los Tres Peligros Mortales al Desplegar por FTP

Cuando seleccionas la carpeta de tu proyecto y la arrastras al servidor, si no usas filtros de exclusión, estás cometiendo tres errores graves que pueden arruinar tu despliegue o la seguridad de tu cliente:

Flujo Profesional de Despliegue con FileZilla y Filtros
1. Carpeta `.git`

Si subes .git/, cualquiera en internet puede descargar tu repositorio completo usando herramientas como git-dumper, leyendo todo tu código fuente y credenciales históricas.

2. Archivo `.env`

Tu archivo .env local contiene claves de tu base de datos local y llaves privadas. Si se sube a la raíz web, puede ser descargado por atacantes revelando secretos del servidor.

3. `node_modules/`

Contiene más de 100,000 archivos diminutos. Subirlos por FTP puede tardar 4 horas innecesariamente y colapsar los inodos de tu hosting.

Cómo Activar y Crear Filtros en FileZilla

  1. Presiona Ctrl + I o ve al menú: Ver ➔ Filtros de nombres de archivo...
  2. FileZilla ya incluye filtros preconfigurados listos para marcar:
    • Marca Repositorios de control de código fuente (oculta automáticamente .git, .svn y .hg).
    • Marca Archivos de copia de seguridad e innecesarios (oculta *.bak, Thumbs.db, .DS_Store).
  3. Para crear una regla personalizada: haz clic en Editar reglas de filtro ➔ Nueva.
  4. Nómbrala "Ignorar Node y Secretos" y agrega las condiciones:
    • El nombre de archivo coincide con la expresión regular: ^(\.env|\.git|node_modules|vendor)$
  5. Pulsa Aceptar y márcala tanto en Sitio Local como en Sitio Remoto. ¡Ahora esos archivos serán invisibles y nunca se subirán por descuido!

⚡ Configuración XML de Filtros Recomendados en FileZilla

Reglas estándar exportadas de filters.xml para proteger proyectos web modernos:

filtros-recomendados.xml
Solo lectura
<!-- Reglas de filtrado para omitir archivos y carpetas sensibles -->
<Filter>
    <Name>Proteger Secretos y Dependencias</Name>
    <ApplyToFiles>1</ApplyToFiles>
    <ApplyToDirs>1</ApplyToDirs>
    <CaseSensitive>0</CaseSensitive>
    <Conditions>
        <!-- Omitir repositorios Git -->
        <Condition>
            <Type>1</Type>
            <ConditionItem>.git</ConditionItem>
        </Condition>
        <!-- Omitir archivo de variables de entorno local -->
        <Condition>
            <Type>1</Type>
            <ConditionItem>.env</ConditionItem>
        </Condition>
        <!-- Omitir dependencias de Node.js -->
        <Condition>
            <Type>1</Type>
            <ConditionItem>node_modules</ConditionItem>
        </Condition>
        <!-- Omitir archivos temporales de sistema -->
        <Condition>
            <Type>1</Type>
            <ConditionItem>.DS_Store</ConditionItem>
        </Condition>
    </Conditions>
</Filter>
🧠
Mini-Quiz de Retención
Comprueba tu comprensión antes de pasar a la siguiente lección
1 Pregunta
Pregunta 1
¿Cuál es el peligro de seguridad más grave de no usar filtros de exclusión y subir la carpeta ".git" completa a tu servidor web público por FTP?
🦉
¿Tienes dudas con este tema?
Sócrates AI puede darte analogías y explicarte este código paso a paso.

🚀 ¿Quieres dominar Manual de FileZilla: FTP, SFTP & Despliegue Web y crear proyectos reales?

Aprende arquitectura limpia, desarrollo web moderno, buenas prácticas y despliegue en producción con nuestro Bootcamp Fullstack Developer con mentorías en vivo.

🏛️ Autoría y Propiedad Intelectual: Obra educativa original de David Amador para Kilopolis Academia (Solucionáticos), estructurada sobre las especificaciones y estándares abiertos del W3C, el estándar vivo de WHATWG y la documentación oficial de código abierto. © Todos los derechos reservados.