{{indexmenu_n>20}} ====== Gestion des utilisateurs ====== Les utilisateurs doivent avoir accès : * au serveur par SSH * à son dossier personnel par Samba * à son/ses projet(s) par des urls qui lui sont propres * au dépôt(s) SVN ===== Ajout ===== Il est temps maintenant d'ajouter un/des utilisateur(s). Pour cela on va créer un script dans le home du user courant, celui qui a été créé lors de l'installation de la distribution. Vous pouvez également le créé dans le home de root si vous voulez. Tout d'abord vous devez installer le package whois afin de pouvoir utiliser la commande mkpasswd : sudo apt-get install whois Puis on va créer le script : vi ~/usercreate.sh Et on insère le code suivant : #!/bin/bash # Un peu de couleur txtred='\e[0;31m' txtcyn='\e[0;36m' txtrst='\e[0m' # Check root WHOAMI=`/usr/bin/whoami` if [ $WHOAMI != "root" ]; then echo -e "${txtred}Vous devez etre root${txtrst}" exit 1 fi # Saisie de l'identifiant echo -e "${txtcyn}Identifiant :${txtrst}" read login if [ "${login}" == '' ]; then echo -e "${txtred}Identifiant non renseigné${txtrst}" exit 1 fi # Saisie du mot de passe echo -e "${txtcyn}Mot de passe :${txtrst}" read -s user_password echo -e "${txtcyn}Confirmation mot de passe :${txtrst}" read -s user_password_confirm if [ $user_password != $user_password_confirm ]; then echo -e "${txtred}Erreur de confirmation du mot de passe${txtrst}" exit 1 fi # Génération du mot de passe en md5 password=$(mkpasswd -H md5 $user_password) # Ajout de l'utilisateur unix useradd -m -d /home/web/$login -g www-data -s /bin/bash --password $password "${login}" # Ajout de l'utilisateur Samba (echo $user_password; echo $user_password) | smbpasswd -as ${login} # Ajout de l'accès SVN htpasswd -mb /etc/apache2/svn-passwd ${login} ${user_password} Puis on rend le script exécutable : chmod +x ~/usercreate.sh ===== Test ===== Pour tester il suffit de créer un utilisateur avec le script créé ci-dessus : cd sudo ./usercreate.sh Saisissez l'identifiant et le mot de passe. === Samba & HTTP === Ensuite accéder au partage Samba \\server.local.lan\identifiant Saisissez l'identifiant et le mot de passe. Créez un dossier puis un sous dossier www dans lequel vous créez un fichier index.php (ou .html) dans lequel vous pouvez saisir ce que vous voulez. Ensuite dans votre navigateur saisissez http://dossier.identifiant.server.local.lan Vous devez voir ce que vous avez saisi dans le fichier d'index === SSH === Il suffit de se connecter avec putty ou la commande ssh en utilisant l'identifiant et le mot de passe de l'utilisateur, vous devez arriver à la racine de son dossier personnel. === Subversion === Saisir http://server.local.lan/svn et saisissez l'identifiant et le mot de passe de l'utilisateur. ===== Suppression ===== Pour supprimer on va procéder de la même façon que pour la création : on crée un script : vi ~/userdelete.sh Dans lequel on saisira : #!/bin/bash # Un peu de couleur txtred='\e[0;31m' txtcyn='\e[0;36m' txtrst='\e[0m' # Vérification root WHOAMI=`/usr/bin/whoami` if [ $WHOAMI != "root" ]; then echo -e "${txtred}Vous devez etre root${txtrst}" exit 1 fi # Saisie de l'identifiant echo -e "${txtcyn}Identifiant :${txtrst}" read login # Suppression de l'utilisateur unix, de son home et de ses mails userdel -rf ${login} # Suppression de l'accès Samba smbpasswd -x ${login} # Suppression de l'accès SVN htpasswd -D /etc/apache2/svn-passwd ${login} On applique le droit d'exécuter : chmod +x ~/userdelete.sh Et on peut supprimer un user en exécutant le script : cd sudo ./userdelete.sh