Node.js Ofuscado

Share this post on:

🔹 Paso 1: Preparar tu proyecto

  • Estructura típica:
    src/
      server.js
      rutas/
      controladores/
    package.json
    
  • Asegúrate de que tu server.js o app.js sea el punto de entrada.

🔹 Paso 2: Instalar obfuscador

En tu máquina local:

npm install --save-dev javascript-obfuscator

🔹 Paso 3: Crear script de build

Edita tu package.json y agrega:

"scripts": {
  "build": "javascript-obfuscator src --output dist/src --compact true --control-flow-flattening true && javascript-obfuscator app.js --output dist/app.js",
  "start:dist": "node dist/app.js"
}

Esto:

  • Toma todo lo que está en src/.
  • Genera una carpeta dist/ con código ofuscado.
  • Aplica técnicas de protección (compactación, flattening).

🔹 Paso 4: Ejecutar build

npm run build

Ahora tendrás:

dist/
  server.js
  rutas/
  controladores/
package.json
package-lock.json

🔹 Paso 5: Subir a cPanel

  1. Entra al File Manager o usa FTP.
  2. Sube la carpeta dist/ y los archivos package.json y package-lock.json a tu directorio de aplicación (~/api).
  3. En cPanel → Setup Node.js App:
    • Ruta: ~/api/dist
    • Versión de Node.js: usa la LTS disponible (ej. Node 18).
    • Archivo de inicio: server.js.

🔹 Paso 6: Instalar dependencias en el servidor

En el terminal de cPanel o por SSH:

cd ~/api/dist
npm install --production

Esto instala solo las dependencias necesarias para producción.


🔹 Paso 7: Probar y ajustar

  • Reinicia la aplicación desde el Application Manager.
  • Verifica que tu API responde en la URL asignada por cPanel.
  • Si necesitas variables de entorno, usa el panel de configuración de Node.js en cPanel (puedes definir PORT, DB_URL, etc.).

🔹 Resultado

  • Tu API corre en cPanel con Node.js.
  • El código fuente está ofuscado en dist/, mucho más difícil de leer.
  • No necesitas binarios, todo se ejecuta con el Node.js del hosting.


🔹 Paso 8: Probar localmente

Arranca tu API desde la carpeta dist:

npm run start:dist

o directamente:

node dist/server.js

Abre en tu navegador:

http://localhost:3000

(o el puerto que uses en tu API).


🔹 Paso 9: Validar

  • Si responde correctamente, significa que el build ofuscado funciona.
  • Si falla, revisa que las rutas y dependencias estén bien copiadas a dist/.

✅ Resultado

  • Tu API corre en Ubuntu Budgie usando el código ofuscado.
  • Ya tienes la misma carpeta (dist/ + package.json + package-lock.json) que subirás a cPanel.
  • Así garantizas que funcionará igual en el hosting.

 

 

 

Share this post on:

Leave a Reply

Your email address will not be published. Required fields are marked *