# Problèmes rencontré et troubleshooting

## Problèmes rencontrés

### 1. VNC impossible à configurer sur AlmaLinux

**Problème :** TigerVNC et autres solutions VNC ne fonctionnent pas correctement avec AlmaLinux, particulièrement avec Wayland.

**Symptômes :**
- Écran noir lors de la connexion
- Erreurs de permissions SELinux
- Incompatibilité avec Wayland

**Solution :** Migration vers NoMachine qui fonctionne out-of-the-box.

---

### 2. Nginx ne démarre pas après installation de certificats

**Problème :**
```
nginx: [emerg] cannot load certificate: Permission denied
```

**Cause :** Contexte SELinux incorrect sur les certificats Let's Encrypt.

**Solution :**
```bash
sudo restorecon -Rv /etc/letsencrypt
sudo semanage fcontext -a -t httpd_sys_content_t "/etc/letsencrypt(/.*)?"
sudo systemctl restart nginx
```

---

### 3. Certbot fail après renouvellement

**Problème :** Certificats renouvelés mais Nginx continue d'utiliser les anciens.

**Cause :** Nginx non rechargé après renouvellement.

**Solution :**
```bash
# Créer un hook de renouvellement
sudo nano /etc/letsencrypt/renewal-hooks/deploy/reload-nginx.sh
```
```bash
#!/bin/bash
systemctl reload nginx
```
```bash
sudo chmod +x /etc/letsencrypt/renewal-hooks/deploy/reload-nginx.sh
```

---

## Commandes de maintenance

### Mises à jour système
```bash
# Mettre à jour AlmaLinux
sudo dnf update -y

# Vérifier les updates de sécurité
sudo dnf updateinfo list security

# Installer uniquement les updates de sécurité
sudo dnf update --security
```

### Monitoring
```bash
# Vérifier les connexions SSH actives
who
w

# Voir les tentatives de connexion SSH échouées
sudo journalctl -u sshd | grep Failed

# Logs du firewall
sudo journalctl -k | grep nft

# Logs Nginx
sudo tail -f /var/log/nginx/access.log
sudo tail -f /var/log/nginx/error.log

# Statut des services
sudo systemctl status nginx
sudo systemctl status nftables
sudo systemctl status nxserver
```

## Checklist de sécurité

- [x] SSH sur port non-standard (55555)
- [x] Authentification par clé SSH uniquement
- [x] Root login désactivé
- [x] Firewall nftables configuré (policy drop par défaut)
- [x] SELinux en mode enforcing
- [x] Certificats SSL Let's Encrypt
- [x] Headers de sécurité HTTP configurés
- [x] Mises à jour automatiques de sécurité
- [x] Monitoring des logs
- [x] Backups réguliers

---