Fedora-Fr - Communauté francophone Fedora - Linux

Communauté francophone des utilisateurs de la distribution Linux Fedora.

  

Dernière news : La nouvelle version de Fedora dite 33 est sortie

#1 03/02/2013 23:46:07

ptiteuf4000
Membre
Inscription : 01/02/2013
Messages : 3

Modifier script sh

Bonjour à tous,

Voila je me lance vers vous et ce pour modifier des fichiers qui date du fedora 4, c'est pour vous dire que cela fais longtemps. Bon je n'aime pas trop les serveur dédié  avec un cpanel style webmin, directadmin, plesk, etc et donc j'avais ces script a ma possesion et ce grace a un membre de la famille fedora "titax".

je voudrais que c'est fichier  soit améliorer dans le sens que je voudrais créé une adresse mail "postmaster" par default a chaque compte créé.

voila pour la creation d'un compte

#!/bin/bash
#########################################################################################
## Script repris de http://www.tatane.com/index.php/script-de-creation-de-comptes-web  ##
## modifie pour s'adapter a FEDORA CORE 4                                              ##
## TitaX                                                                               ##
## titax@rezium.net                                                                    ##
## blog.titaxium.org                                                                   ##
## www.titaxium.com                                                                    ##
## www.fedora-france.org                                                               ##
##                                -------------                                        ##
## Permet de:                                                                          ##
## >>   Creer un compte user avec sa home directory /home/$user                        ##
##	Site accessible en www (www.domaine.com pointe vers /home/$user/www            ##
##	Alias illimites (ex: linux.domaine.com pointe vers /home/u$ser/linux           ##
## >> Creation d'une base MySql                                                        ##
#########################################################################################
#quelques variables
log="/var/log/creation/creation-$login-`date +%d-%m-%Y`.log"
touch $log
group="users"
# petit nettoyage d'ecran
clear

# seul root peux executer ce script
if test `id -u` != "0"; then
     echo "il faut etre root pour executer ce script"
else

echo "################################## Creation d'utilisateur"
# on recupere les parametres du compte
echo -n "Entrez le compte a creer : ";
read login;

echo -n "Entrez son mot de passe : ";
read password;
passmysql=$password

echo -n "Entrez le nom de domaine (sans \"www\", par exemple domaine.com) : ";
read domaine;

# on demande confirmation de ces parametres
echo "
Domaine  : $domaine
Compte   : $login
Passwd   : $password
" >> $log
echo -n "Est- ce correct ? (o/[n]) "
read ans
if [ _$ans != _o -a _$ans != _O ]
then
     echo "la creation du compte a ete annulee">> $log
fi

# creation du compte utilisateur sauf si existe deja
/usr/sbin/useradd $login -p `perl -e "print crypt('$password',pwet)"` -g $group -d /home/$login -m -s /bin/bash
if [ $? -ne 0 ]
	then
	echo "L'utilisateur $login existe deja!" >> $log
fi
echo -e " + Utilisateur \"$login\"                                   [  \E[32;40m\033[1mOK\033[0m  ]"
# creation et droits sur les repertoires
/bin/mkdir /home/$login/logs /home/$login/www /home/$login/cgi-bin
echo -e " + Creation repertoires                                     [  \E[32;40m\033[1mOK\033[0m  ]"

# modifications des droits sur les dossiers
chown -R $login.$group /home/$login/
echo -e " + Modification des droits                                  [  \E[32;40m\033[1mOK\033[0m  ]"

# creation du virtual host (inclus dans httpd.conf)
echo "
<VirtualHost *:80>
        ServerName $domaine
        DocumentRoot /home/$login/www/
        ErrorLog /home/$login/logs/error.log
        CustomLog /home/$login/logs/access.log combined
        ScriptAlias /cgi-bin/ /home/$login/cgi-bin/
        <Directory /home/$login/www/>
                AllowOverride All
                Options -Indexes +ExecCGI
                Order Deny,Allow
                Allow from all
        </Directory>
</VirtualHost>

" > /etc/httpd/conf/vhosts/$login.conf
echo -e " + VirtualHost Apache                                       [  \E[32;40m\033[1mOK\033[0m  ]"
echo "################################## Termine "

# creation de la base de donnee mysql
echo -n "Faut-il installer une base de donnee mySQL ? (o/[n]) "
read ans
if [ _$ans = _o -o _$ans = _O ]
then
echo "################################## Creation de la base MySql "
	echo -n "Entrez le password root mysql :";
	read passroot;

	# creation de la base
	/usr/bin/mysqladmin -u root -p$passroot create $login
echo -e "Base MySQL \"$login\"                                       [  \E[32;40m\033[1mOK\033[0m  ]"

	# creation du compte + db + droits
	/usr/bin/mysql -u root --password=$passroot mysql <<END_COMMANDS
#	GRANT ALL PRIVILEGES ON $login.* TO "$login"@"localhost" IDENTIFIED BY '$passmysql';
        GRANT ALL PRIVILEGES ON \`$login\`.* TO "$login"@"localhost" IDENTIFIED BY '$passmysql';
	FLUSH PRIVILEGES;
END_COMMANDS

	# redemarrage de la base
	/usr/bin/mysqladmin -u root -p$passroot reload
	echo -e "User MySQL \"$login\" [  \E[32;40m\033[1mOK\033[0m  ]"
else
	echo "Choix: Base non creee">> $log
fi
echo "################################## Termine "

echo "Creation du nouvel utilisateur \"$login\" terminee."
service httpd restart
echo "relance de Apache"
fi
# fin du script

et voila pour la suppression du compte

#!/bin/bash
#################################################
## Script repris de http://www.ruas-blog.com/  ##
## modifie pour s'adapter a FEDORA CORE 4      ##
## TitaX                                       ##
## titax@rezium.net                            ##
## blog.titaxium.org                           ##
## www.titaxium.com                            ##
## www.fedora-france.org                       ##
##                -------------                ##
#################################################
#variables
#votre password mysql
passmysql="votre_pass"

# petit nettoyage d'écran
clear

# seul root peux exécuter ce script
if test `id -u` != "0"; then
     echo "Vous devez etre root pour executer ce script, désolé..."
else


echo "################################## Suppression d'utilisateur"
# recuperation des parametres
echo -n "Entrez le compte à supprimer : ";
read login;

# --- Suppression du user ---

/usr/sbin/userdel $login

echo -e " + Suppression de l'utilisateur : $login     [  \E[32;40m\033[1mOK\033[0m  ]"

echo -n "Voulez vous supprimer le repertoire dans /home? (o/[n]) ";
read home
if [ _$home != _o -a _$home != _O ]
then
     echo "le repertoire dans /home ne sera pas effacé"
else

# --- Suppression du repertoire /var/www/nom_du_compte ---
        rm -rf /home/$login/

echo -e " + Suppression du repertoire /www            [  \E[32;40m\033[1mOK\033[0m  ]"
fi

echo -n "Voulez vous supprimer la configuration vhost (o/[n]) ";
read www
if [ _$www != _o -a _$www != _O ]
then
     echo "la configuration vhost ne sera pas effacée"
else

# --- Suppression du virtual host---

rm -f /etc/httpd/conf/vhosts/$login.conf

echo -e " + Suppression du VirtualHost : $login       [  \E[32;40m\033[1mOK\033[0m  ]"
fi

echo -n "Voulez vous supprimer la base de donnée (o/[n]) ";
read base
if [ _$base != _o -a _$base != _O ]
then
     echo "la base de donnée ne sera pas effacée"
else

# --- Suppression de la base de donnée et de l'utilisateur---

        mysql -u root --password=$passmysql mysql <<END_COMMANDS

        REVOKE ALL ON *.* FROM $login@localhost;

        REVOKE ALL ON $login.* FROM $login@localhost;

        DELETE FROM mysql.user WHERE user='$login';

        DROP DATABASE IF EXISTS $login;

        FLUSH PRIVILEGES;

END_COMMANDS

/usr/bin/mysqladmin -u root -p"$passmysql" reload

fi

#On recharge la configuration de apache

service httpd restart

#c'est fini !!!!
echo -e " + Suppression totale de  $login             [  \E[32;40m\033[1mOK\033[0m  ]"
fi

Merci d'avance pour votre soutiens et vos reponses .

Hors ligne

#2 04/02/2013 09:40:24

madko
Contributeur Fedora et Linuxé depuis 1994
Modérateur
Lieu : Noisy the Great (9³)
Inscription : 22/12/2006
Messages : 8 472
Site Web

Re : Modifier script sh

Bonjour,

ton script ne fait que créer un compte unix, un vhost, et une base mysql eventuellement. Je ne vois rien qui pourrait nous indiquer le serveur de mail utilisé. Quelle commande utiliserais tu pour créer le compte postmaster?


Linux, ya moins bien, mais c'est plus chèr!!!
Fedora 32 WorkStation sur HP 850 G5
Fedora 32 SilverBlue sur Lenovo Thinkpad Yoga 12

Hors ligne

#3 04/02/2013 18:16:22

ptiteuf4000
Membre
Inscription : 01/02/2013
Messages : 3

Re : Modifier script sh

oui justement avant j'avais pas besoin de mail  mais maintenant j'en aie besoin et je n'y connais pas trop en script sh

Hors ligne

#4 04/02/2013 18:17:17

madko
Contributeur Fedora et Linuxé depuis 1994
Modérateur
Lieu : Noisy the Great (9³)
Inscription : 22/12/2006
Messages : 8 472
Site Web

Re : Modifier script sh

Là sans plus d'info, je vois pas trop comment t'aider


Linux, ya moins bien, mais c'est plus chèr!!!
Fedora 32 WorkStation sur HP 850 G5
Fedora 32 SilverBlue sur Lenovo Thinkpad Yoga 12

Hors ligne

#5 24/02/2013 12:51:51

ptiteuf4000
Membre
Inscription : 01/02/2013
Messages : 3

Re : Modifier script sh

Merci je vais voir cela

Hors ligne

Pied de page des forums