Ceci est une ancienne révision du document !
Mettre en place les dépôts mercurial pour le serveur
Description
Un dépôt pour le code, et un dépôt pour les datas, il est nécessaire de faire un contrôle d'accès. Basé sur notre annuaire LDAP.
SSH peut être lié à LDAP, et permettre une authentification et une gestion des droits basée sur les groupes, ou sur des ACL si on utilise les droits sur les fichiers.
Qui travaille dessus ?
Compétences demandées
* Administration linux
Difficulté estimée ou temps restant à y passer
Tâches liées
Commentaires
Le serveur de de test en installé, on va virtualiser le système pour permettre un transfert aisé. Puis juste un apt-get install à faire pour mercurial.
Les étapes suivies seront les suivantes :
- Mettre en place un dépôt mono-utilisateur (tester accès web éventuellement) ;
- Mettre en place plusieurs dépôts et vérifier les accès ;
- Mettre en place d'autres utilisateurs et tester les commits/push/pull en groupe, sur différents dépôts ;
- Installer le CMS de gestion avec interface web (SCM Manager) sauf si d'autres perspectives web directes sont envisageables pour interfacer avec LDAP ;
- Installer le plugin LDAP du CMS ou le plugin direct pour Mercurial et tester avec nos comptes LDAP.
mise en place
Installé avec cette méthode : https://bitbucket.org/sdorra/scm-manager/wiki/RPM%20and%20DEB%20packages puis apt-get install default-jre
Faut tester :) :
Changé le port dans /etc/default/scm-server : http://37.187.121.150/scm/
Installé le plugin ldap et essai de config : pb de connexion tls à résoudre
Installé mercurial et configuré scm pour l'utiliser
Créé une partition pour /home et une pour les dépôts (/var/lib/scm/repository de mémoire, à vérifier)
Cloné deux dépöts : ryzomcore et liria
Création d'une entrée DNS : depots.khaganat.net
Il faudrait aussi installer le https sur ce serveur, même avec un certificat auto-signé.
pour cacher les mots de passes
Deux solutions : utiliser TLS ou faire un VPN. La première solution est plus joli, c'est ce qu'il faut faire. La seconde est plus bricolé, mais c'est ce que je sais faire, ça ira plus vite. Je commence donc par ça.
Création d'un serveur VPN sur vpsweb
apt-get update apt-get install openvpn easy-rsa cp -rp /usr/share/easy-rsa /etc/openvpn cd /etc/openvpn/easy-rsa/
Modif de vars
# These are the default values for fields # which will be placed in the certificate. # Don't leave any of these fields blank. export KEY_COUNTRY="FR" export KEY_PROVINCE="NPC" export KEY_CITY="Lilles" export KEY_ORG="khanat@khaganat.org" export KEY_EMAIL="khanat@khaganat.org" export KEY_OU="TeamServeur"
Création de l'autorité de certification
. ./vars ./clean-all ./build-ca
Config du serveur
root@vps155855:/etc/openvpn/easy-rsa# ./build-key-server vpsweb root@vps155855:/etc/openvpn/easy-rsa# cp keys/ca.crt keys/vpsweb.key keys/vpsweb.crt ..