Darcs SSH Server
Ensemble de scripts pour faciliter la mise en place d'un dépot darcs accessible via SSH et partagé entre plusieurs utilisateurs.
1. Scripts PHP pour apache
1.1. Web Darcs Portail
/* est-ce utile ? il existe des outils qui le font déja ... */
- afficher joliment :
- la liste des dépots Darcs
- le contenu d'un dépot Darcs
1.2. Web Darcs Auth
- Interdire toute connexion non sécurisée via TLS/SSL
- Permettre a des utilisateurs de s'inscrire, avec un mot de passe "pas trop mauvais" (donc faire une vérif).
- Permettre à un administrateur de valider l'inscription d'un utilisateur.
- Permettre a un utilisateur authentifié d'uploader une clefs publique SSH-DSA ou SSH-RSA pour un ajout automatique dans .ssh/authorized_keys, avec les parametres de sécurité qui vont bien ( command="darcs-ssh-server.pl", no-forwarding , etc...)
2. Scripts Perl/Bash
2.1 Parser les commandes
Script qui devra etre appellé par le parametre
command="..." dans authorized_keys
Pour eviter que l'utilisateur fasse n'importe quoi.
- charger la configuration du serveur
- charger la liste des dépots Darcs
- charger la liste des utilisateurs
- comparer l'utilisateur à l'un de ceux de la liste (et on s'arrete s'il n'existe pas)
- comparer les droits de l'utilisateur à ceux définis pour le dépôt (et on s'arrête si les droits ne sont pas suffisants).
- on réécrit la commande et on l'execute
2.2. Script d'installation
- Création de l'utilisateur gérant le dépôt
- Création du dossier darcs-root
- Création du sous-dossier public_html
- Copier les scripts PHP dans public_html
- Indiquer à l'utilisateur qu'il doit lui meme vérifier sa configuration d'apache pour le dossier public_html
- Créer l'utilisateur "administrateur" du dépot