# Bitácora de Frases Segura

Incluye:

- PHP + MariaDB
- Login con sesión PHP
- Contraseñas con `password_hash()` y `password_verify()`
- CRUD completo
- Papelera y borrado definitivo
- Favoritas
- Búsqueda y filtros
- Exportación JSON
- Auditoría básica por usuario

## 1. Crear base y usuario MariaDB

```bash
sudo mariadb
```

```sql
CREATE DATABASE bitacora
  CHARACTER SET utf8mb4
  COLLATE utf8mb4_unicode_ci;

CREATE USER 'bitacora_user'@'localhost'
IDENTIFIED BY 'UNA_CLAVE_SEGURA';

GRANT ALL PRIVILEGES
ON bitacora.*
TO 'bitacora_user'@'localhost';

FLUSH PRIVILEGES;
```

## 2. Importar estructura

```bash
mariadb -u root bitacora < schema.sql
```

## 3. Configurar

Editar `config.php`:

```php
'user' => 'bitacora_user',
'pass' => 'UNA_CLAVE_SEGURA',
'setup_token' => 'UN_TOKEN_LARGO_Y_ALEATORIO',
```

## 4. Crear el primer usuario

Abrir:

```text
http://IP/bitacora/create_admin.php?token=UN_TOKEN_LARGO_Y_ALEATORIO
```

Crear usuario y contraseña.

Después borrar inmediatamente:

```bash
sudo rm /var/www/html/bitacora/create_admin.php
```

## 5. Permisos

```bash
sudo chown -R www-data:www-data /var/www/html/bitacora
sudo find /var/www/html/bitacora -type d -exec chmod 755 {} \;
sudo find /var/www/html/bitacora -type f -exec chmod 644 {} \;
```

## Seguridad recomendada

- Usar HTTPS.
- No exponer MariaDB a Internet.
- Borrar `create_admin.php` después de crear el usuario.
- Cambiar el token de instalación.
- Usar una contraseña larga.
