Cómo configurar los permisos de la API de Binance de forma segura: La lista blanca de IP es imprescindible
La API Key es un punto de riesgo crítico para la cuenta. Este artículo detalla la configuración de seguridad principal: permisos mínimos, lista blanca de IP y desactivación de retiros.
Si una API Key se filtra, las pérdidas pueden ser considerables. Primero, revisa tu lista de APIs en la web oficial de Binance y utiliza la app oficial de Binance para la gestión (para iOS, consulta el tutorial de instalación en iOS).
Niveles de permisos de la API
| Permiso | Riesgo |
|---|---|
| Solo lectura | Muy bajo |
| Trading Spot | Medio |
| Trading de Margen | Medio |
| Trading de Futuros | Medio |
| Transferencia interna (Subcuentas) | Medio-Alto |
| Retiros (Withdrawals) | Muy alto |
Aplica siempre el principio de "mínimo privilegio necesario".
Nunca actives los retiros
A menos que gestiones un negocio real que requiera retiros automatizados (como la integración de un exchange), nunca actives esta opción.
Si la activas y un atacante obtiene tu Key, podrá retirar tus fondos directamente. Incluso con una lista blanca de IPs, existe el riesgo de que esta sea vulnerada.
El papel de la lista blanca de IP
Este ajuste garantiza que solo las solicitudes provenientes de una dirección IP específica sean procesadas. Incluso si alguien roba tu Key, no podrá usarla desde otra IP.
Direcciones recomendadas para vincular:
- Tu IP doméstica (si es estática).
- La IP de tu servidor VPS.
- La IP pública de tu oficina.
¿Qué hacer si no tienes una IP estática?
La mayoría de las conexiones domésticas tienen IPs dinámicas. Soluciones:
1. Usar un VPS
Los proveedores de la nube asignan una IP pública fija a tu VPS. Ejecuta tu código directamente en el servidor. Opciones como DigitalOcean, Vultr o AWS ofrecen VPS por 5-10 USD al mes, suficiente para trading.
2. Túneles inversos
Herramientas como frpc o ngrok exponen una dirección fija, pero su estabilidad es menor.
3. Sin vinculación (Alto riesgo)
No se recomienda. Úsalo solo si la API es exclusivamente para consultas de mercado (lectura).
Aislamiento mediante múltiples Keys
Usa diferentes Keys para distintos propósitos:
| Uso | Key |
|---|---|
| Consultar precios | Key A (Solo lectura) |
| Estrategia Spot | Key B (Spot + Lista blanca IP) |
| Estrategia Futuros | Key C (Futuros + Lista blanca IP) |
| Reserva | Key D (Desactivada, solo para emergencias) |
Si una Key se ve comprometida, solo tienes que eliminar esa en particular sin afectar al resto.
Almacenamiento de la Key
La Secret Key debe guardarse de forma segura:
- Gestores de contraseñas (1Password / Bitwarden).
- Variables de entorno (nunca directamente en el código).
- Archivos .env cifrados.
Nunca subas tu Secret Key a GitHub. Miles de desarrolladores sufren robos de fondos cada año por este descuido.
Mejores prácticas en el código
# CORRECTO
import os
secret = os.environ['BINANCE_SECRET']
# INCORRECTO
secret = 'abc123def456...'
Lee las credenciales desde el sistema operativo, no las dejes escritas en el código fuente.
Auditoría periódica
Cada mes:
- Entra en Binance y revisa la lista de APIs.
- Confirma que cada Key sigue siendo necesaria.
- Elimina las que no uses.
- Si sospechas de una filtración, elimínala de inmediato y crea una nueva.
Señales de una posible filtración
- Órdenes de trading inesperadas.
- Disminución inexplicable del saldo.
- Inicios de sesión desde IPs desconocidas.
- Picos inusuales en las estadísticas de llamadas a la API.
Si detectas alguna, actúa de inmediato:
- Elimina todas las API Keys.
- Cambia tu contraseña.
- Restablece el 2FA.
- Contacta con el soporte técnico.
Rotación de API Keys
Una práctica recomendada es rotar las Keys cada 90 días de forma proactiva, incluso si no hay señales de peligro. Esto reduce drásticamente la "ventana de exposición" ante un posible ataque.
Uso de subcuentas
Las subcuentas tienen APIs independientes, lo que ofrece un mejor aislamiento:
- La cuenta principal no tiene APIs activas.
- Distribuyes fondos a las subcuentas.
- Ejecutas estrategias en las subcuentas.
- Si una subcuenta es vulnerada, la cuenta principal permanece a salvo.
Permisos de API y 2FA
Las operaciones vía API no requieren 2FA (de ahí su riesgo). Sin embargo, crear, modificar o eliminar una API Key sí requiere confirmación por 2FA y correo electrónico.
Lista de verificación de seguridad (Checklist)
- [ ] Permisos mínimos para cada Key.
- [ ] Opción de retiros desactivada.
- [ ] Lista blanca de IP vinculada.
- [ ] Secret Key excluida del repositorio de código.
- [ ] Uso de variables de entorno.
- [ ] Auditoría periódica.
- [ ] Rotación cada 90 días.
- [ ] Aislamiento mediante subcuentas.
API en plataformas de terceros
Si usas plataformas como 3Commas, deberás proporcionarles una API:
- Concede solo permisos de Spot/Futuros, nunca de retiro.
- Vincula la lista blanca de IPs proporcionada por la plataforma.
- Evalúa anualmente si sigues necesitando el servicio.
Recuerda: si la plataforma es hackeada, tu Key también lo estará. El riesgo de tu Key es el mismo que el riesgo de la plataforma.
Preguntas frecuentes
P: ¿Puedo recuperar mis fondos tras un robo por API? R: Es extremadamente difícil. Binance investigará, pero la tasa de recuperación es baja. La prevención es la única defensa real.
P: ¿Me cerrarán la cuenta por exceso de velocidad (Rate Limit)? R: No de forma permanente. Los límites de velocidad suelen aplicar bloqueos temporales de acceso a la API.
P: ¿Puedo usar una API para gestionar varias cuentas? R: Cada cuenta requiere su propia Key independiente, pero puedes usarlas simultáneamente en tu código.
P: ¿Puedo consultar cuentas de otros usuarios mediante API? R: No. Una Key solo da acceso a la cuenta que la generó.
P: He olvidado mi Secret Key, ¿puedo verla de nuevo? R: No. Por seguridad, Binance solo la muestra al crearla. Si la pierdes, deberás borrarla y generar una nueva.
Lecturas recomendadas
Si no aseguras tu API, no importa lo buena que sea tu tecnología; estarás trabajando para los hackers. Asegura tus permisos y bloquea tus IPs ahora mismo.