# 🔧 Fix: Autenticación Git en VPS

**Problema:** El script intentaba clonar con HTTPS, requiriendo usuario/contraseña.

**Solución:** Convertir automáticamente URLs HTTPS a SSH y usar claves SSH configuradas.

---

## ❌ Problema Original

```bash
git clone https://github.com/LACOMPANIADIGITAL/cokecolombres.git
# Error: Password authentication is not supported for Git operations
```

**Causa:** GitHub ya no permite autenticación por contraseña. Requiere SSH o tokens.

---

## ✅ Solución Implementada

### 1. Conversión Automática HTTPS → SSH

El script ahora convierte automáticamente:
- `https://github.com/user/repo.git` → `git@github.com:user/repo.git`

### 2. Uso de Claves SSH

El script usa las claves SSH ya configuradas por `setup_ssh_keys()`:
- `id_rsa` / `id_rsa.pub`
- `id_ed25519` / `id_ed25519.pub`

### 3. Configuración Git

```bash
GIT_SSH_COMMAND='ssh -o StrictHostKeyChecking=no' git clone "$ssh_url"
```

Esto evita prompts de confirmación de host.

---

## 🔍 Verificación

### Verificar Claves SSH en VPS

```bash
# Como root
ls -la /root/.ssh/

# Debe mostrar:
# id_rsa, id_rsa.pub
# id_ed25519, id_ed25519.pub (opcional)
```

### Verificar Claves en Usuario cPanel

```bash
su - cokecolo
ls -la ~/.ssh/

# Debe mostrar las claves copiadas desde root
```

### Probar Conexión SSH a GitHub

```bash
su - cokecolo
ssh -T git@github.com

# Debe mostrar:
# Hi LACOMPANIADIGITAL! You've successfully authenticated...
```

---

## 🚀 Uso Actualizado

El script ahora funciona automáticamente:

```bash
./bulk_create_cpanel4.sh --json /tmp/mi-proyecto.json
```

**No requiere:**
- ❌ Usuario/contraseña de GitHub
- ❌ Tokens de acceso
- ❌ Configuración manual de Git

**Usa automáticamente:**
- ✅ Claves SSH configuradas
- ✅ Conversión HTTPS → SSH
- ✅ Autenticación sin prompts

---

## 📝 Notas

1. **Claves SSH deben estar en `/root/.ssh/`**
   - El script las copia automáticamente al usuario cPanel

2. **GitHub debe tener la clave pública**
   - Si no funciona, agregar la clave pública a GitHub:
     ```bash
     cat /root/.ssh/id_rsa.pub
     # Copiar y agregar en GitHub: Settings → SSH and GPG keys
     ```

3. **Si el repositorio es privado**
   - La clave SSH debe tener acceso al repositorio
   - Verificar permisos en GitHub

---

**Última actualización:** Noviembre 2024  
**Estado:** ✅ CORREGIDO

