157 lines
5.5 KiB
Markdown
157 lines
5.5 KiB
Markdown
|
|
# 📚 Guides techniques
|
||
|
|
|
||
|
|
Collection de guides et conventions pour le développement et l'administration système.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 📁 Structure
|
||
|
|
|
||
|
|
```
|
||
|
|
guides/
|
||
|
|
├── serveur/ Guides d'administration serveur Linux
|
||
|
|
└── conventions/ Conventions de code et bonnes pratiques
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 🚀 Démarrage rapide
|
||
|
|
|
||
|
|
### Configuration d'un VPS
|
||
|
|
Vous avez un nouveau serveur VPS à configurer ?
|
||
|
|
👉 **[serveur/vps-setup-rapide.md](serveur/vps-setup-rapide.md)** - Setup rapide (30-50 min)
|
||
|
|
👉 **[serveur/vps-setup-complet.md](serveur/vps-setup-complet.md)** - Guide détaillé (1-2h)
|
||
|
|
|
||
|
|
### Administration serveur
|
||
|
|
Votre disque est plein, des bots attaquent votre serveur, ou vous cherchez un fichier ?
|
||
|
|
👉 **[serveur/](serveur/)** - Tous les guides Linux essentiels
|
||
|
|
|
||
|
|
### Conventions de code
|
||
|
|
Vous développez une application SvelteKit ?
|
||
|
|
👉 **[conventions/svelte-kit-frontend-conventions.md](conventions/svelte-kit-frontend-conventions.md)**
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 📖 Tous les guides
|
||
|
|
|
||
|
|
### [serveur/](serveur/) - Administration serveur
|
||
|
|
|
||
|
|
**Configuration VPS :**
|
||
|
|
- **[vps-setup-rapide.md](serveur/vps-setup-rapide.md)** - Setup VPS rapide (30-50 min)
|
||
|
|
- **[vps-setup-complet.md](serveur/vps-setup-complet.md)** - Setup VPS détaillé (1-2h)
|
||
|
|
- **[kirby-vps-deploy.md](serveur/kirby-vps-deploy.md)** - Déployer Kirby CMS sur VPS
|
||
|
|
- **[kirby-ci-cd-deploy.md](serveur/kirby-ci-cd-deploy.md)** - CI/CD automatique pour Kirby
|
||
|
|
|
||
|
|
**Linux essentials :**
|
||
|
|
- **[vim-guide-essentiel.md](serveur/linux-essentials/vim-guide-essentiel.md)** - Maîtriser Vim (éditeur universel)
|
||
|
|
- **[architecture-filesystem.md](serveur/linux-essentials/architecture-filesystem.md)** - Comprendre /etc, /var, /lib
|
||
|
|
- **[diagnostic-espace-disque.md](serveur/linux-essentials/diagnostic-espace-disque.md)** - Résoudre les problèmes d'espace
|
||
|
|
- **[analyse-logs-detection-bots.md](serveur/linux-essentials/analyse-logs-detection-bots.md)** - Analyser les logs et bloquer les bots
|
||
|
|
- **[comprendre-commandes-find-du.md](serveur/linux-essentials/comprendre-commandes-find-du.md)** - Maîtriser find, du, grep
|
||
|
|
|
||
|
|
**Forgejo (forge Git) :**
|
||
|
|
- **[forgejo/QUICK-START.md](serveur/forgejo/QUICK-START.md)** - Sécuriser Forgejo en 15 min
|
||
|
|
- **[forgejo/bloquer-telechargements-abusifs.md](serveur/forgejo/bloquer-telechargements-abusifs.md)** - Fail2ban, rate limiting
|
||
|
|
|
||
|
|
### [conventions/](conventions/) - Bonnes pratiques
|
||
|
|
|
||
|
|
- **[svelte-kit-frontend-conventions.md](conventions/svelte-kit-frontend-conventions.md)** - Structure et conventions pour SvelteKit
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 🎯 Par besoin
|
||
|
|
|
||
|
|
### Je viens d'avoir un VPS
|
||
|
|
1. **[Apprendre Vim](serveur/linux-essentials/vim-guide-essentiel.md)** - Éditeur essentiel (15 min)
|
||
|
|
2. **[Configuration VPS complète](serveur/vps-setup.md)** - Sécurité, serveur web, SSL
|
||
|
|
3. **[Architecture Linux](serveur/linux-essentials/architecture-filesystem.md)** - Comprendre où sont les fichiers
|
||
|
|
4. **[Commandes essentielles](serveur/linux-essentials/comprendre-commandes-find-du.md)** - find, du, grep
|
||
|
|
|
||
|
|
### Mon serveur a un problème
|
||
|
|
- **Disque plein** → [diagnostic-espace-disque.md](serveur/linux-essentials/diagnostic-espace-disque.md)
|
||
|
|
- **Attaque de bots** → [analyse-logs-detection-bots.md](serveur/linux-essentials/analyse-logs-detection-bots.md)
|
||
|
|
- **Forgejo saturé** → [bloquer-telechargements-abusifs.md](serveur/forgejo/bloquer-telechargements-abusifs.md)
|
||
|
|
|
||
|
|
### Je développe une application
|
||
|
|
- **SvelteKit** → [svelte-kit-frontend-conventions.md](conventions/svelte-kit-frontend-conventions.md)
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 🔍 Recherche rapide
|
||
|
|
|
||
|
|
### Commandes serveur
|
||
|
|
```bash
|
||
|
|
# Espace disque
|
||
|
|
df -h # Vue globale
|
||
|
|
du -sh /* | sort -h | tail -10 # Top 10 dossiers
|
||
|
|
|
||
|
|
# Recherche de fichiers
|
||
|
|
find /path -name "*.log" -size +100M # Gros fichiers logs
|
||
|
|
grep -r "erreur" /var/log/ # Chercher dans les logs
|
||
|
|
|
||
|
|
# Services
|
||
|
|
systemctl status apache2 # État d'un service
|
||
|
|
journalctl -u service -n 50 # Logs d'un service
|
||
|
|
```
|
||
|
|
|
||
|
|
### SSH et déploiement
|
||
|
|
```bash
|
||
|
|
# Connexion
|
||
|
|
ssh user@host
|
||
|
|
|
||
|
|
# Déploiement avec rsync
|
||
|
|
rsync -avhP ./dist/ user@host:/var/www/site/
|
||
|
|
|
||
|
|
# Certificat SSL
|
||
|
|
certbot --apache -d example.com
|
||
|
|
```
|
||
|
|
|
||
|
|
### Pare-feu et sécurité
|
||
|
|
```bash
|
||
|
|
# UFW
|
||
|
|
ufw status verbose # État du pare-feu
|
||
|
|
ufw allow 80/tcp # Autoriser un port
|
||
|
|
|
||
|
|
# Fail2ban
|
||
|
|
fail2ban-client status # Vue d'ensemble
|
||
|
|
fail2ban-client status sshd # IPs bannies SSH
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 🛠️ Outils utiles
|
||
|
|
|
||
|
|
- **[Explain Shell](https://explainshell.com/)** - Décompose les commandes shell
|
||
|
|
- **[SSL Labs](https://www.ssllabs.com/ssltest/)** - Teste la configuration SSL
|
||
|
|
- **[Security Headers](https://securityheaders.com/)** - Teste les en-têtes de sécurité
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 📝 Notes
|
||
|
|
|
||
|
|
Ces guides sont créés à partir d'expériences réelles en production. Ils sont conçus pour être :
|
||
|
|
- **Pratiques** : Des solutions concrètes à des problèmes réels
|
||
|
|
- **Pédagogiques** : Explications détaillées pour comprendre ce qu'on fait
|
||
|
|
- **Rapides** : Temps de lecture/application indiqué pour chaque guide
|
||
|
|
|
||
|
|
**Structure des guides :**
|
||
|
|
- 📋 Table des matières pour navigation rapide
|
||
|
|
- ✅ Checklists pour ne rien oublier
|
||
|
|
- ⚠️ Avertissements sur les points critiques
|
||
|
|
- 💡 Tips et bonnes pratiques
|
||
|
|
- 🔍 Sections troubleshooting
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 🌱 Contribuer
|
||
|
|
|
||
|
|
Améliorations bienvenues :
|
||
|
|
- Nouveaux guides
|
||
|
|
- Corrections et clarifications
|
||
|
|
- Scripts d'automatisation
|
||
|
|
- Traductions
|
||
|
|
|
||
|
|
**Organisation :**
|
||
|
|
- Guides serveur → `serveur/`
|
||
|
|
- Guides spécifiques à un service → `serveur/nom-service/`
|
||
|
|
- Conventions de code → `conventions/`
|