Ubuntu, Debian User

Ville : Mirande
Pays : France métropolitaine
|
bonjour à tous!
Je suis en train de faire des tests pour mettre en place un serveur mass virtual hosting sous apache.
Cependant je n'y arrive pas.
De puis j'ai suivi le tuto de la mise en place de multiutilisateur sous debian présent sur ce site et j'ai créé un script php permettant de créer un espace libre sur le disque dur et ftp ....
Pour ce faire j'ai utilisé ceci: http://forum.ovh.com/showthread.php?t=13797&highlight=mass+virtual+hosting&page=2
voici mon script. Code : Console | ass_mysql_ftp=carmen
pass_mysql_root=elisha32vanille
DOSSIER=/home
echo -n "Nom d'utilisateur : "
read nom
echo -n "Nom de domaine (sans les www) : "
read DOMAINE
echo "Mot de passe : "
read -s pass
echo "Mot de passe (le retour) : "
read -s pass2
if test $pass = $pass2 ; then
mkdir $DOSSIER/$DOMAINE
chmod 755 -R $DOSSIER/$DOMAINE
mkdir $DOSSIER/$DOMAINE/logs
mkdir $DOSSIER/$DOMAINE/public_html
mkdir $DOSSIER/$DOMAINE/public_html/www
chmod 777 -R $DOSSIER/$DOMAINE
chmod 755 $DOSSIER/$DOMAINE
echo "anon_world_readable_only=NO" > /etc/vsftpd/$nom
echo "local_root=/home/$DOMAINE" >> /etc/vsftpd/$nom
echo "write_enable=YES" >> /etc/vsftpd/$nom
echo "anon_upload_enable=YES" >> /etc/vsftpd/$nom
echo "anon_mkdir_write_enable=YES" >> /etc/vsftpd/$nom
echo "anon_other_write_enable=YES" >> /etc/vsftpd/$nom
echo "hide_file=(none)" >> /etc/vsftpd/$nom
echo "force_dot_files=YES" >> /etc/vsftpd/$nom
mysql -u ftp -p"$pass_mysql_ftp" -D ftp -e "INSERT INTO users (name ,pass) VALUES ('$nom', ENCRYPT( '$pass' ));"
mysql -u root -p"$pass_mysql_root" -e "CREATE USER '$nom'@'localhost' IDENTIFIED BY '$pass';GRANT USAGE ON *.* TO '$nom'@'localhost' IDENTIFIED BY '$pass' WITH MAX_QUERIES_P$
echo '<VirtualHost *:80>
DocumentRoot '$DOSSIER'/'$DOMAINE'/public_html/www
ServerName www.$DOMAINE
</VirtualHost>
<VirtualHost *:80>
DocumentRoot '$DOSSIER'/'$DOMAINE'/public_html/www
ServerName $DOMAINE
ServerAlias *.$DOMAINE
VirtualDocumentRoot /home/$DOMAINE/%1
<Directory '$DOSSIER'/'$DOMAINE'/public_html/>
Options -Indexes FollowSymLinks MultiViews
AllowOverride All
</Directory>
ErrorLog '$DOSSIER'/'$DOMAINE'/logs/error.log
LogLevel warn
CustomLog '$DOSSIER'/'$DOMAINE'/logs/access.log combined
ServerSignature Off
</VirtualHost>' > /etc/apache2/sites-available/$DOMAINE
a2ensite $DOMAINE
/etc/init.d/apache2 stop
/etc/init.d/apache2 start
echo "Utilisateur ajoute avec succes"
else
echo "Les 2 mots de passe ne sont pas identiques"
fi |
Je suppose qu'il y a un problème au niveau de la création du fichier host.
Par contre je n'est pas compris pourquoi il n'y a pas d'ip à la place de l'étoile.
|
Nux addicT
|
Salut, voilà j'ai essayer de corriger le max de probleme, mais le probleme c'est que je ne suis pas chez moi et je dispose que d'un portable sous windaube donc il m'est impossible de tester le script
A partir de là je te laisse la main.
Donne nous des nouvelles car si sa ne marche toujours pas je reprendrai le script a ZERO !!
Sur ce ...
Bonne continuation 
Et a bientot.
Code : Bash
Il vaut mieux pas que vous voyez ça pour le moment
EDIT : apres avoir relu le script que j'avais poster une fois bien reveiller je me suis rendu compte que c'etait bourrer d'erreurs donc meme pas la peine de le tester,
je le refait et je le reposte d'ici ce soir
LAST_EDIT :
Code : Bash 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131 | #!/bin/bash
# Definition des variables
pass_mysql_ftp=carmen
pass_mysql_root=elisha32vanille
DOSSIER=home
USER_CONFIG_DIR=/etc/vsftpd/vsftpd_user_conf
# On appele le menu
function_menu
function_menu(){
# On recupere les variables dont on a besoin
echo -n "Nom d'utilisateur : "
read nom
echo -n "Nom de domaine (sans les www) : "
read DOMAINE
echo "Mot de passe : "
read -s pass
echo "Mot de passe (le retour) : "
read -s pass2
echo "#####################################"
#une fois les variables recuperees on passe a la fonction test_already_exist pour eviter d'ecraser un hebergement deja existant
function_test_already_exit
}
function_test_already_exit(){
echo " => Verification que le vHost n'existe pas deja"
# ** SI /$DOSSIER/$dir existe ALORS on annule et on repart au debut
if [ ! -d /'$DOSSIER'/'$dir' ] then {
echo " Attention : Le vHost existe deja ! "
echo "## Annulation ... ##"
function_menu
}
else {
#** SINON on passe a la fonction test_pass qui verifie si vous avez bien entrer 2 fois le meme pass
function_test_pass
}
fi
}
function_test_pass() {
echo ' => Verfication du password '
#Si le 1er pass est agal au 2 eme alors on continu
if [ "$pass" = "$pass2" ]; then {
function_create_dir
}
else {
#Sinon on annule et on repart au debut
echo " Attention : Les deux mots de passes ne sont pas identiques"
echo "## Annulation ... ##"
function_menu }
fi }
function_create_dir(){
echo ' => Creation des dossiers et application du chmod'
mkdir /$DOSSIER/$DOMAINE
chmod 755 -R /$DOSSIER/$DOMAINE
mkdir /$DOSSIER/$DOMAINE/logs
mkdir /$DOSSIER/$DOMAINE/public_html
mkdir /$DOSSIER/$DOMAINE/public_html/www
chmod 777 -R /$DOSSIER/$DOMAINE
chmod 755 /$DOSSIER/$DOMAINE
function_vsftpd_conf
}
function_vsftpd_conf(){
echo ' => Confiduration de Vsftpd'
if ! grep -q "^local_root=" $USER_CONFIG_DIR/$user 2>/dev/null; then
echo " => on chroote '$user'"
echo 'anon_world_readable_only=NO' > $USER_CONFIG_DIR/$nom #lecture seule
echo "local_root=/home/'$DOMAINE'" >> $USER_CONFIG_DIR/$nom #repertoire d'arrivee
echo 'write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'ecriture
echo 'anon_upload_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'upload
echo 'anon_mkdir_write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit de creer des repertoires
echo 'anon_other_write_enable=YES' >> $USER_CONFIG_DIR/$nom
echo 'hide_file=(none)' >> $USER_CONFIG_DIR/$nom
echo 'force_dot_files=YES' >> $USER_CONFIG_DIR/$nom #On laisse une ligne vide
echo '' >> $USER_CONFIG_DIR/$nom
function_mysql_conf
else
echo " **Attention** : $USER_CONFIG_DIR/$user: '$user' est déjà chrooté."
fi
}
function_mysql_conf(){
echo ' => On configure mysql'
mysql -h 127.0.0.1 -u ftp -p "$pass_mysql_ftp" -D ftp -e INSERT INTO users (name ,pass) VALUES ('$nom', PASSWORD('$pass'), 'PASSWORD');
mysql -h 127.0.0.1 -u root -p "$pass_mysql_root" -e CREATE USER '$nom'@'localhost' IDENTIFIED BY '$pass';GRANT USAGE ON * . * TO '$nom'@'localhost' IDENTIFIED BY '$pass' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0
function_apache_conf
}
function_apache_conf(){
echo ' On configure apache'
echo "
<VirtualHost *:80>
DocumentRoot /$DOSSIER/$DOMAINE/public_html/www
ServerName www.$DOMAINE
</VirtualHost>
<VirtualHost *:80>
ServerName www.'$DOMAINE'
ServerAlias *.'$DOMAINE'
DocumentRoot /'$DOSSIER'/'$DOMAINE'/public_html/www/
<Directory /'$DOSSIER'/'$DOMAINE'/public_html/>
Options -Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog /'$DOSSIER'/'$DOMAINE'/logs/error.log
LogLevel warn
CustomLog /'$DOSSIER'/'$DOMAINE'/logs/access.log combined
ServerSignature Off
</VirtualHost>
" > /etc/apache2/sites-available/$DOMAINE.conf
a2ensite $DOMAINE
/etc/init.d/apache2 reload
function_end
}
function_end(){
echo ''
echo '-- vHost a ete ajouter avec succes --'
}
|
Vu que je me suis jamais servi de vsftpd,
il faudrait aussi localiser login.txt de vsftpd car je crois qu'il faut
y ajouter les pseudos et les mots de passes a chaque creation d'un vHost
login.txt
Ce fichier contient les login et mdp en clair des differents utilisateurs
user1
motdepasseuser1
user2
motdepasseuser2
=> le fichier doit finir par une ligne vide
Édité
le 06/06/2008 à 18:27:57
par bb_awa
Linux is not just an Os but is the future of the humanity !
- Citation ubuntu : "... You are encorouraged and legally entiltled to copy, reinstall, modify and redistribute this CD ..." Yeaaah !! Le libre !
- Si Billou à inventer crosoft et windaube alors le Manchot a inventer Billou (meme si il l'a rater ).
- La connerie n'est pas un virus mais elle se propage a la meme vitesse.
Citation : AlertAttention, Votre windows n'a pas planter depuis plus d'1h,
-Windows va maintenant effectuer un plantage de routine.
-FATALERROR
|
Ubuntu, Debian User

Ville : Mirande
Pays : France métropolitaine
|
Je testerais ceci ce soir, je vous tiens au courant.
Pour vsftp, j'utilise une base de donnée et non un fichier txt.
|
Nux addicT
|
ok donc pour sa c'est bon,
Tiens nous au courant
Linux is not just an Os but is the future of the humanity !
- Citation ubuntu : "... You are encorouraged and legally entiltled to copy, reinstall, modify and redistribute this CD ..." Yeaaah !! Le libre !
- Si Billou à inventer crosoft et windaube alors le Manchot a inventer Billou (meme si il l'a rater ).
- La connerie n'est pas un virus mais elle se propage a la meme vitesse.
Citation : AlertAttention, Votre windows n'a pas planter depuis plus d'1h,
-Windows va maintenant effectuer un plantage de routine.
-FATALERROR
|
Ubuntu, Debian User

Ville : Mirande
Pays : France métropolitaine
|
Bon j'ai fait un copier coller de ce code, sauf j'ai modifier les mots de passe ftp et root car je les ai changer.
à l'exécution du code, il m'envoie cette erreur:
domaine.sh: line 11: function_menu: command not found
domaine.sh: line 40: syntax error near unexpected token `else'
domaine.sh: line 40: `else '
domaine.sh etant le fichier contenant ton code.
j'ai aussi enlevé les accents d'une des lignes du code pour pas avoir de problème d'accentuation.
Bon j'espere que quelqu'un pourra m'aider.
Merci d'avance
EDIT: D'après ce que j'ai vu, je me demande si il ne manque pas quelque " ; ". En plus la fonction function_menu n'a pas l'air de vouloir se lancer.En plus en relisant, tu as modifié mes virtuals host. Je veux faire du mass hosting apache. Donc le www qu'il y a dans public_html, ce www correspond au www du nom de domaine. Si j'aurais un dossier blog dans le dossier public_html, ce blog donnerait naissance à blog.domaine.tld .
|
Nux addicT
|
Voilà j'ai corriger les erreurs que je voyait mais il risque d'y avoir des problemes au niveau des droits, on verra bien.
Code : Bash 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144 | #!/bin/bash
# Definition des variables
pass_mysql_ftp=carmen
pass_mysql_root=elisha32vanille
DOSSIER=home
USER_CONFIG_DIR=/etc/vsftpd/vsftpd_user_conf
fonction_end(){
echo ''
echo '-- vHost a ete ajouter avec succes --'
exit 0
}
fonction_apache_conf(){
echo ' On configure apache'
echo "
<VirtualHost *:80>
DocumentRoot /$DOSSIER/$DOMAINE/public_html/www
ServerName www.$DOMAINE
</VirtualHost>
<VirtualHost *:80>
ServerName www.'$DOMAINE'
ServerAlias *.'$DOMAINE'
DocumentRoot /'$DOSSIER'/'$DOMAINE'/public_html/www/
<Directory /'$DOSSIER'/'$DOMAINE'/public_html/>
Options -Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog /'$DOSSIER'/'$DOMAINE'/logs/error.log
LogLevel warn
CustomLog /'$DOSSIER'/'$DOMAINE'/logs/access.log combined
ServerSignature Off
</VirtualHost>
" > /etc/apache2/sites-available/$DOMAINE.conf
a2ensite $DOMAINE
/etc/init.d/apache2 reload
fonction_end
}
fonction_mysql_conf(){
echo ' => On configure mysql'
'/usr/bin/mysql -h 127.0.0.1 -u ftp -p "$pass_mysql_ftp" -D ftp -e "INSERT INTO users (name ,pass) VALUES ('$nom', PASSWORD('$pass'), 'PASSWORD'); "'
'/usr/bin/mysql -h 127.0.0.1 -u root -p "$pass_mysql_root" -e "CREATE USER '$nom'@'localhost' IDENTIFIED BY '$pass';GRANT USAGE ON * . * TO '$nom'@'localhost' IDENTIFIED BY '$pass' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0"'
fonction_apache_conf
}
fonction_create_dir(){
echo ' => Creation des dossiers et application du chmod'
mkdir /$DOSSIER/$DOMAINE
chmod 755 -R /$DOSSIER/$DOMAINE
mkdir /$DOSSIER/$DOMAINE/logs
mkdir /$DOSSIER/$DOMAINE/public_html
mkdir /$DOSSIER/$DOMAINE/public_html/www
chmod 777 -R /$DOSSIER/$DOMAINE
chmod 755 /$DOSSIER/$DOMAINE
chmod 755 -R /etc/apache2/sites-available/
chown -R $nom /etc/apache2/sites-available/
fonction_vsftpd_conf
}
fonction_vsftpd_conf(){
echo ' => Confiduration de Vsftpd'
echo 'anon_world_readable_only=NO' > $USER_CONFIG_DIR/$nom #lecture seule
echo "local_root=/home/'$DOMAINE'" >> $USER_CONFIG_DIR/$nom #repertoire d'arrivee
echo 'write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'ecriture
echo 'anon_upload_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'upload
echo 'anon_mkdir_write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit de creer des repertoires
echo 'anon_other_write_enable=YES' >> $USER_CONFIG_DIR/$nom
echo 'hide_file=(none)' >> $USER_CONFIG_DIR/$nom
echo 'force_dot_files=YES' >> $USER_CONFIG_DIR/$nom #On laisse une ligne vide
echo '' >> $USER_CONFIG_DIR/$nom
fonction_mysql_conf
}
#fonction_test_already_exist(){
#echo " => Verification que le vHost n'existe pas deja"
#if [ ! -d /'$DOSSIER'/'$DOMAINE' ]; then {
#echo " Attention : Le vHost existe deja ! "
#echo "## Annulation ... ##"
#fonction_menu
#}
#else {
#fonction_test_pass
#}
#fi
#}
fonction_test_pass() {
echo ' => Verfication du password '
if [ "$pass" = "$pass2" ]; then
{
fonction_create_dir
}
else
{
echo " Attention : Les deux mots de passes ne sont pas identiques"
echo "## Annulation ... ##"
fonction_menu
}
fi
}
fonction_menu(){
echo -n "Nom d'utilisateur : "
read nom
echo -n "Nom de domaine (sans les www) : "
read DOMAINE
echo -n "Mot de passe : "
read pass
echo -n "Mot de passe (le retour) : "
read pass2
echo "#####################################"
fonction_test_pass
}
fonction_first_menu(){
echo 'Menu :'
echo ''
echo '1.Creer un vHost.'
echo '2.Quitter'
echo ''
echo -n 'Votre choix ( 1 - 2) :'
read choix
if [ "$choix" = "1" ]; then
{
fonction_menu
}
else
{
exit 0
}
fi
}
fonction_first_menu
|
Linux is not just an Os but is the future of the humanity !
- Citation ubuntu : "... You are encorouraged and legally entiltled to copy, reinstall, modify and redistribute this CD ..." Yeaaah !! Le libre !
- Si Billou à inventer crosoft et windaube alors le Manchot a inventer Billou (meme si il l'a rater ).
- La connerie n'est pas un virus mais elle se propage a la meme vitesse.
Citation : AlertAttention, Votre windows n'a pas planter depuis plus d'1h,
-Windows va maintenant effectuer un plantage de routine.
-FATALERROR
|
Ubuntu, Debian User

Ville : Mirande
Pays : France métropolitaine
|
J'ai fait ça car tes commandes mysql était érroné par rapport à ma base de donnee.
Code : Bash 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144 | !/bin/bash
# Definition des variables
pass_mysql_ftp=carmen
pass_mysql_root=elisha32vanille
DOSSIER=home
USER_CONFIG_DIR=/etc/vsftpd/vsftpd_user_conf
fonction_end(){
echo ''
echo '-- vHost a ete ajouter avec succes --'
exit 0
}
fonction_apache_conf(){
echo ' On configure apache'
echo "
<VirtualHost *:80>
DocumentRoot /$DOSSIER/$DOMAINE/public_html/www
ServerName www.$DOMAINE
</VirtualHost>
<VirtualHost *:80>
ServerName www.'$DOMAINE'
ServerAlias *.'$DOMAINE'
DocumentRoot /'$DOSSIER'/'$DOMAINE'/public_html/www/
<Directory /'$DOSSIER'/'$DOMAINE'/public_html/>
Options -Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog /'$DOSSIER'/'$DOMAINE'/logs/error.log
LogLevel warn
CustomLog /'$DOSSIER'/'$DOMAINE'/logs/access.log combined
ServerSignature Off
</VirtualHost>
" > /etc/apache2/sites-available/$DOMAINE.conf
a2ensite $DOMAINE
/etc/init.d/apache2 stop
/etc/init.d/apache2 start
fonction_end
}
fonction_mysql_conf(){
echo ' => On configure mysql'
mysql -u ftp -p"$pass_mysql_ftp" -D ftp -e "INSERT INTO users (name ,pass) VALUES ('$nom', ENCRYPT( '$pass' ));"
mysql -u root -p"$pass_mysql_root" -e "CREATE USER '$nom'@'localhost' IDENTIFIED BY '$pass';GRANT USAGE ON *.* TO '$nom'@'localhost' IDENTIFIED BY '$pass' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;CREATE DATABASE IF NOT EXISTS $nom;GRANT ALL PRIVILEGES ON $nom.* TO '$nom'@'localhost';"
fonction_apache_conf
}
fonction_create_dir(){
echo ' => Creation des dossiers et application du chmod'
mkdir /$DOSSIER/$DOMAINE
chmod 755 -R /$DOSSIER/$DOMAINE
mkdir /$DOSSIER/$DOMAINE/logs
mkdir /$DOSSIER/$DOMAINE/public_html
mkdir /$DOSSIER/$DOMAINE/public_html/www
chmod 777 -R /$DOSSIER/$DOMAINE
chmod 755 /$DOSSIER/$DOMAINE
chmod 755 -R /etc/apache2/sites-available/
chown -R $nom /etc/apache2/sites-available/
fonction_vsftpd_conf
}
fonction_vsftpd_conf(){
echo ' => Confiduration de Vsftpd'
echo 'anon_world_readable_only=NO' > $USER_CONFIG_DIR/$nom #lecture seule
echo "local_root=/home/'$DOMAINE'" >> $USER_CONFIG_DIR/$nom #repertoire d'arrivee
echo 'write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'ecriture
echo 'anon_upload_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'upload
echo 'anon_mkdir_write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit de creer des repertoires
echo 'anon_other_write_enable=YES' >> $USER_CONFIG_DIR/$nom
echo 'hide_file=(none)' >> $USER_CONFIG_DIR/$nom
echo 'force_dot_files=YES' >> $USER_CONFIG_DIR/$nom #On laisse une ligne vide
echo '' >> $USER_CONFIG_DIR/$nom
fonction_mysql_conf
}
#fonction_test_already_exist(){
#echo " => Verification que le vHost n'existe pas deja"
#if [ ! -d /'$DOSSIER'/'$DOMAINE' ]; then {
#echo " Attention : Le vHost existe deja ! "
#echo "## Annulation ... ##"
#fonction_menu
#}
#else {
#fonction_test_pass
#}
#fi
#}
fonction_test_pass() {
echo ' => Verfication du password '
if [ "$pass" = "$pass2" ]; then
{
fonction_create_dir
}
else
{
echo " Attention : Les deux mots de passes ne sont pas identiques"
echo "## Annulation ... ##"
fonction_menu
}
fi
}
fonction_menu(){
echo -n "Nom d'utilisateur : "
read nom
echo -n "Nom de domaine (sans les www) : "
read DOMAINE
echo -n "Mot de passe : "
read pass
echo -n "Mot de passe (le retour) : "
read pass2
echo "#####################################"
fonction_test_pass
}
fonction_first_menu(){
echo 'Menu :'
echo ''
echo '1.Creer un vHost.'
echo '2.Quitter'
echo ''
echo -n 'Votre choix ( 1 - 2) :'
read choix
if [ "$choix" = "1" ]; then
{
fonction_menu
}
else
{
exit 0
}
fi
}
fonction_first_menu
|
Il me renvoie ce message:
Citation : ma console#####################################
=> Verfication du password
=> Creation des dossiers et application du chmod
chown: `pascal': usager invalide
=> Confiduration de Vsftpd
=> On configure mysql
On configure apache
This site does not exist!
Reloading web server config...2430
apache2: Could not reliably determine the server's fully qualified domain name, using 192.168.1.99 for ServerName
.
-- vHost a ete ajouter avec succes --
Je voudrais en meme temps savoir pourquoi tu fait ceci:
Code : Bash1
2 | chmod 755 -R /etc/apache2/sites-available/
chown -R $nom /etc/apache2/sites-available/
|
Je ne comprend pas trop l'utilité.
|
Nux addicT
|
Pour la ligne mysql j'ai retirer la fonction ENCRYPT car j'ai déja eu des problemes avec donc j'aurais pu voir si le probleme lié a mysql venait de là.
Pour les commandes
Code : Bash1
2 | chmod 755 -R /etc/apache2/sites-available/
chown -R $nom /etc/apache2/sites-available/
|
tu avais raison  sa servait strictement a rien
je l'ai remplacer pour etre sur d'avoir les droits pour ecrire les configuration d'apache dans le $DOMAINE.conf
Code : Bash1 | chmod 755 -R /etc/apache2/sites-available/$DOMAINE.conf
|
Code : Bash 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145 | #!/bin/bash
# Definition des variables
pass_mysql_ftp=carmen
pass_mysql_root=elisha32vanille
DOSSIER=home
USER_CONFIG_DIR=/etc/vsftpd/vsftpd_user_conf
fonction_end(){
echo ''
echo '$0'': -- Le vHost ''$DOMAINE'' a ete ajouter avec succes --'
exit 0
}
fonction_apache_conf(){
echo "'$0': On configure apache"
echo "
<VirtualHost 192.168.1.99:80>
DocumentRoot /$DOSSIER/$DOMAINE/public_html/www
ServerName www.$DOMAINE
</VirtualHost>
<VirtualHost 192.168.1.99:80>
ServerName www.'$DOMAINE'
ServerAlias *.'$DOMAINE'
DocumentRoot /'$DOSSIER'/'$DOMAINE'/public_html/www/
<Directory /'$DOSSIER'/'$DOMAINE'/public_html/>
Options -Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog /'$DOSSIER'/'$DOMAINE'/logs/error.log
LogLevel warn
CustomLog /'$DOSSIER'/'$DOMAINE'/logs/access.log combined
ServerSignature Off
</VirtualHost>
" > /etc/apache2/sites-available/$DOMAINE.conf
a2ensite $DOMAINE
/etc/init.d/apache2 reload
fonction_end
}
fonction_mysql_conf(){
echo "'$0': On configure mysql"
'/usr/bin/mysql -h 127.0.0.1 -u ftp -p "$pass_mysql_ftp" -D ftp -e "INSERT INTO users (name ,pass) VALUES ('$nom', PASSWORD('$pass'), 'PASSWORD'); "'
'/usr/bin/mysql -h 127.0.0.1 -u root -p "$pass_mysql_root" -e "CREATE USER '$nom'@'localhost' IDENTIFIED BY '$pass';GRANT USAGE ON * . * TO '$nom'@'localhost' IDENTIFIED BY '$pass' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0"'
fonction_apache_conf
}
fonction_create_dir(){
echo "'$0': Creation des dossiers et application du chmod"
mkdir /$DOSSIER/$DOMAINE
chmod 755 -R /$DOSSIER/$DOMAINE
mkdir /$DOSSIER/$DOMAINE/logs
mkdir /$DOSSIER/$DOMAINE/public_html
mkdir /$DOSSIER/$DOMAINE/public_html/www
chmod 777 -R /$DOSSIER/$DOMAINE
chmod 755 /$DOSSIER/$DOMAINE
chmod 755 /etc/apache2/sites-available/$DOMAINE.conf
fonction_vsftpd_conf
}
fonction_vsftpd_conf(){
echo "'$0': Confiduration de Vsftpd"
echo 'anon_world_readable_only=NO' > $USER_CONFIG_DIR/$nom #lecture seule
echo "local_root=/home/'$DOMAINE'" >> $USER_CONFIG_DIR/$nom #repertoire d'arrivee
echo 'write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'ecriture
echo 'anon_upload_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'upload
echo 'anon_mkdir_write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit de creer des repertoires
echo 'anon_other_write_enable=YES' >> $USER_CONFIG_DIR/$nom
echo 'hide_file=(none)' >> $USER_CONFIG_DIR/$nom
echo 'force_dot_files=YES' >> $USER_CONFIG_DIR/$nom #On laisse une ligne vide
echo '' >> $USER_CONFIG_DIR/$nom
fonction_mysql_conf
}
#fonction_test_already_exist(){
#echo " => Verification que le vHost n'existe pas deja"
#if [ ! -d /'$DOSSIER'/'$DOMAINE' ]; then {
#echo " Attention : Le vHost existe deja ! "
#echo "## Annulation ... ##"
#fonction_menu
#}
#else {
#fonction_test_pass
#}
#fi
#}
fonction_test_pass() {
echo "'$0': Verfication du password "
if [ "$pass" = "$pass2" ]; then;
{
fonction_create_dir
}
else
{
echo "'$0': Attention : Les deux mots de passes ne sont pas identiques"
echo "'$0': ## Annulation ... ##"
fonction_menu
}
fi
}
fonction_menu(){
echo -n "Nom d'utilisateur : "
read nom
echo -n "Nom de domaine (sans les www) : "
read DOMAINE
echo -n "Mot de passe : "
read pass
echo -n "Mot de passe (le retour) : "
read pass2
echo "#####################################"
fonction_test_pass
}
fonction_first_menu(){
echo "'$0': Menu :"
echo ''
echo ' ---'
echo ''
echo '1.Creer un vHost.'
echo '2.Quitter'
echo ''
echo -n 'Votre choix ( 1 - 2) :'
read choix
if [ "$choix" = "1" ]; then
{
fonction_menu
}
else
{
exit 0
}
fi
}
fonction_first_menu
|
Il faut aussi rentrer l'ip a la main aux lignes 18 et 23.
Il faut aussi creer l'utilisateur "$user" a la main aussi si il n'existe pas il ne sera pas creer.
Linux is not just an Os but is the future of the humanity !
- Citation ubuntu : "... You are encorouraged and legally entiltled to copy, reinstall, modify and redistribute this CD ..." Yeaaah !! Le libre !
- Si Billou à inventer crosoft et windaube alors le Manchot a inventer Billou (meme si il l'a rater ).
- La connerie n'est pas un virus mais elle se propage a la meme vitesse.
Citation : AlertAttention, Votre windows n'a pas planter depuis plus d'1h,
-Windows va maintenant effectuer un plantage de routine.
-FATALERROR
|
Ubuntu, Debian User

Ville : Mirande
Pays : France métropolitaine
|
user ne peut il pas être non?
|
Nux addicT
|
Pour la ligne mysql j'ai retirer la fonction ENCRYPT car j'ai déja eu des problemes avec donc j'aurais pu voir si le probleme lié a mysql venait de là.
Pour les commandes
Code : Bash1
2 | chmod 755 -R /etc/apache2/sites-available/
chown -R $nom /etc/apache2/sites-available/
|
tu avais raison  sa servait strictement a rien
je l'ai remplacer pour etre sur d'avoir les droits pour ecrire les configuration d'apache dans le $DOMAINE.conf
Code : Bash1 | chmod 755 -R /etc/apache2/sites-available/$DOMAINE.conf
|
Code : Bash 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145 | #!/bin/bash
# Definition des variables
pass_mysql_ftp=carmen
pass_mysql_root=elisha32vanille
DOSSIER=home
USER_CONFIG_DIR=/etc/vsftpd/vsftpd_user_conf
fonction_end(){
echo ''
echo '$0'': -- Le vHost ''$DOMAINE'' a ete ajouter avec succes --'
exit 0
}
fonction_apache_conf(){
echo "'$0': On configure apache"
echo "
<VirtualHost *:80>
DocumentRoot /$DOSSIER/$DOMAINE/public_html/www
ServerName www.$DOMAINE
</VirtualHost>
<VirtualHost *:80>
ServerName www.'$DOMAINE'
ServerAlias *.'$DOMAINE'
DocumentRoot /'$DOSSIER'/'$DOMAINE'/public_html/www/
<Directory /'$DOSSIER'/'$DOMAINE'/public_html/>
Options -Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog /'$DOSSIER'/'$DOMAINE'/logs/error.log
LogLevel warn
CustomLog /'$DOSSIER'/'$DOMAINE'/logs/access.log combined
ServerSignature Off
</VirtualHost>
" > /etc/apache2/sites-available/$DOMAINE.conf
a2ensite $DOMAINE
/etc/init.d/apache2 reload
fonction_end
}
fonction_mysql_conf(){
echo "'$0': On configure mysql"
'/usr/bin/mysql -h 127.0.0.1 -u ftp -p "$pass_mysql_ftp" -D ftp -e "INSERT INTO users (name ,pass) VALUES ('$nom', PASSWORD('$pass'), 'PASSWORD'); "'
'/usr/bin/mysql -h 127.0.0.1 -u root -p "$pass_mysql_root" -e "CREATE USER '$nom'@'localhost' IDENTIFIED BY '$pass';GRANT USAGE ON * . * TO '$nom'@'localhost' IDENTIFIED BY '$pass' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0"'
fonction_apache_conf
}
fonction_create_dir(){
echo "'$0': Creation des dossiers et application du chmod"
mkdir /$DOSSIER/$DOMAINE
chmod 755 -R /$DOSSIER/$DOMAINE
mkdir /$DOSSIER/$DOMAINE/logs
mkdir /$DOSSIER/$DOMAINE/public_html
mkdir /$DOSSIER/$DOMAINE/public_html/www
chmod 777 -R /$DOSSIER/$DOMAINE
chmod 755 /$DOSSIER/$DOMAINE
chmod 755 /etc/apache2/sites-available/$DOMAINE.conf
fonction_vsftpd_conf
}
fonction_vsftpd_conf(){
echo "'$0': Confiduration de Vsftpd"
echo 'anon_world_readable_only=NO' > $USER_CONFIG_DIR/$nom #lecture seule
echo "local_root=/home/'$DOMAINE'" >> $USER_CONFIG_DIR/$nom #repertoire d'arrivee
echo 'write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'ecriture
echo 'anon_upload_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'upload
echo 'anon_mkdir_write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit de creer des repertoires
echo 'anon_other_write_enable=YES' >> $USER_CONFIG_DIR/$nom
echo 'hide_file=(none)' >> $USER_CONFIG_DIR/$nom
echo 'force_dot_files=YES' >> $USER_CONFIG_DIR/$nom #On laisse une ligne vide
echo '' >> $USER_CONFIG_DIR/$nom
fonction_mysql_conf
}
#fonction_test_already_exist(){
#echo " => Verification que le vHost n'existe pas deja"
#if [ ! -d /'$DOSSIER'/'$DOMAINE' ]; then {
#echo " Attention : Le vHost existe deja ! "
#echo "## Annulation ... ##"
#fonction_menu
#}
#else {
#fonction_test_pass
#}
#fi
#}
fonction_test_pass() {
echo "'$0': Verfication du password "
if [ "$pass" = "$pass2" ]; then;
{
fonction_create_dir
}
else
{
echo "'$0': Attention : Les deux mots de passes ne sont pas identiques"
echo "'$0': ## Annulation ... ##"
fonction_menu
}
fi
}
fonction_menu(){
echo -n "Nom d'utilisateur : "
read nom
echo -n "Nom de domaine (sans les www) : "
read DOMAINE
echo -n "Mot de passe : "
read pass
echo -n "Mot de passe (le retour) : "
read pass2
echo "#####################################"
fonction_test_pass
}
fonction_first_menu(){
echo "'$0': Menu :"
echo ''
echo ' ---'
echo ''
echo '1.Creer un vHost.'
echo '2.Quitter'
echo ''
echo -n 'Votre choix ( 1 - 2) :'
read choix
if [ "$choix" = "1" ]; then
{
fonction_menu
}
else
{
exit 0
}
fi
}
fonction_first_menu
|
Il faut aussi rentrer l'ip a la main aux lignes 18 et 23.
Et aussi creer l'utilisateur "$user" a la main, si il n'existe pas il ne sera pas creer !
Édité
le 07/06/2008 à 18:40:48
par bb_awa
Linux is not just an Os but is the future of the humanity !
- Citation ubuntu : "... You are encorouraged and legally entiltled to copy, reinstall, modify and redistribute this CD ..." Yeaaah !! Le libre !
- Si Billou à inventer crosoft et windaube alors le Manchot a inventer Billou (meme si il l'a rater ).
- La connerie n'est pas un virus mais elle se propage a la meme vitesse.
Citation : AlertAttention, Votre windows n'a pas planter depuis plus d'1h,
-Windows va maintenant effectuer un plantage de routine.
-FATALERROR
|
Ubuntu, Debian User

Ville : Mirande
Pays : France métropolitaine
|
je ne comprend pas ce que tu veux dire par
Et aussi creer l'utilisateur "$user" a la main aussi si il n'existe pas il ne sera pas creer !
|
Nux addicT
|
Si je me trompe pas, il faut 1 vHost pas Utilisateur linux.
Donc en fait pour chaque vhost il faut que tu ajoute un utilisateur sur la machine, comme si tu creer une autre session.
Linux is not just an Os but is the future of the humanity !
- Citation ubuntu : "... You are encorouraged and legally entiltled to copy, reinstall, modify and redistribute this CD ..." Yeaaah !! Le libre !
- Si Billou à inventer crosoft et windaube alors le Manchot a inventer Billou (meme si il l'a rater ).
- La connerie n'est pas un virus mais elle se propage a la meme vitesse.
Citation : AlertAttention, Votre windows n'a pas planter depuis plus d'1h,
-Windows va maintenant effectuer un plantage de routine.
-FATALERROR
|
Ubuntu, Debian User

Ville : Mirande
Pays : France métropolitaine
|
on peut pas le rendre automatique? car en fait, le nom de domaine sans le www correspond a mon user. En fait il y a un probleme au niveau de a2ensite
|
Nux addicT
|
Si biensur  je t'envoi ça dans quelques minutes
Linux is not just an Os but is the future of the humanity !
- Citation ubuntu : "... You are encorouraged and legally entiltled to copy, reinstall, modify and redistribute this CD ..." Yeaaah !! Le libre !
- Si Billou à inventer crosoft et windaube alors le Manchot a inventer Billou (meme si il l'a rater ).
- La connerie n'est pas un virus mais elle se propage a la meme vitesse.
Citation : AlertAttention, Votre windows n'a pas planter depuis plus d'1h,
-Windows va maintenant effectuer un plantage de routine.
-FATALERROR
|
Ubuntu, Debian User

Ville : Mirande
Pays : France métropolitaine
|
Ton code au dessus est bon, il me crait une base de donnée, un accès ftp fonctionnel, un espace web. C'est bon mais quand j'utilise un domaine en .com, il m'oriente vers l'emplacement /var/www/ et non /home/mondomaine.com/public_html/www
j'ai orienter mon domaine sur l'ip de mon serveur, est ce bon?
PS:j'ai une ip fixe.
|
Nux addicT
|
J'ai editer le code et ajouter les dernieres corrections à 19h46
Si le nom est le meme que ton domaine alors il faut remplacer $DOMAINE par $nom pour les creations de dossier et etc ...
Pour l'ip sa devrait etre bon avec l'ip locale.
Code : Bash 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151 | #!/bin/bash
# Definition des variables
pass_mysql_ftp=carmen
pass_mysql_root=elisha32vanille
DOSSIER=home
USER_CONFIG_DIR=/etc/vsftpd/vsftpd_user_conf
fonction_end(){
echo ''
echo "$0: -- Le vHost $DOMAINE a ete ajouter avec succes --"
exit 0
}
fonction_apache_conf(){
echo "$0: On configure apache"
echo "
<VirtualHost 192.168.1.99:80>
DocumentRoot /$DOSSIER/$nom/public_html/www
ServerName www.$DOMAINE
</VirtualHost>
<VirtualHost 192.168.1.99:80>
ServerName www.$DOMAINE
ServerAlias *.$DOMAINE
DocumentRoot /$DOSSIER/$nom/public_html/www/
<Directory /$DOSSIER/$nom/public_html/>
Options -Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog /$DOSSIER/$nom/logs/error.log
LogLevel warn
CustomLog /$DOSSIER/$nom/logs/access.log combined
ServerSignature Off
</VirtualHost>
" > /etc/apache2/sites-available/$nom.conf
a2ensite $nom
/etc/init.d/apache2 reload
fonction_end
}
fonction_mysql_conf(){
echo "$0: On configure mysql"
'/usr/bin/mysql -h 127.0.0.1 -u ftp -p "$pass_mysql_ftp" -D ftp -e "INSERT INTO users (name ,pass) VALUES ('$nom', PASSWORD('$pass'), 'PASSWORD'); "'
'/usr/bin/mysql -h 127.0.0.1 -u root -p "$pass_mysql_root" -e "CREATE USER '$nom'@'localhost' IDENTIFIED BY '$pass';GRANT USAGE ON * . * TO '$nom'@'localhost' IDENTIFIED BY '$pass' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0"'
fonction_apache_conf
}
fonction_create_dir(){
echo "$0: Creation des dossiers et application du chmod"
chmod 755 -R /$DOSSIER/$nom
mkdir /$DOSSIER/$nom/logs
mkdir /$DOSSIER/$nom/public_html
mkdir /$DOSSIER/$nom/public_html/www
chmod 777 -R /$DOSSIER/$nom
chmod 755 /$DOSSIER/$nom
chmod 777 /etc/apache2/sites-available/$nom.conf
fonction_vsftpd_conf
}
fonction_vsftpd_conf(){
echo "$0: Confiduration de Vsftpd"
echo 'anon_world_readable_only=NO' > $USER_CONFIG_DIR/$nom #lecture seule
echo "local_root=/home/$DOMAINE" >> $USER_CONFIG_DIR/$nom #repertoire d'arrivee
echo 'write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'ecriture
echo 'anon_upload_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'upload
echo 'anon_mkdir_write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit de creer des repertoires
echo 'anon_other_write_enable=YES' >> $USER_CONFIG_DIR/$nom
echo 'hide_file=(none)' >> $USER_CONFIG_DIR/$nom
echo 'force_dot_files=YES' >> $USER_CONFIG_DIR/$nom
echo '' >> $USER_CONFIG_DIR/$nom #On laisse une ligne vide
fonction_mysql_conf
}
fonction_test_pass() {
echo "$0: Verfication du password "
if [ "$pass" = "$pass2" ]; then
{
fonction_create_dir
}
else
{
echo "$0: Attention : Les deux mots de passes ne sont pas identiques"
echo "$0: ## Annulation ... ##"
fonction_first_menu
}
fi
}
fonction_create_user(){
# création du user (le programme s'arrête par sécurité si le user existe déja )
/usr/sbin/useradd $nom -p `perl -e "print crypt('$pass',pwet)"` -d /$DOSSIER/$nom -m -s /bin/bash
if [ $? -ne 0 ]; then
{
echo "$0: L'utilisateur $nom existe déjà , opération annulée !"
fonction_first_menu
}
else
{
echo "$0: Utilisateur $nom cree\n"
fonction_test_pass
}
fi
}
fonction_menu(){
echo -n "Nom d'utilisateur : "
read nom
echo -n "Nom de domaine (sans les www) : "
read DOMAINE
echo -n "Mot de passe : "
read pass
echo -n "Mot de passe (le retour) : "
read pass2
echo "#####################################"
fonction_create_user
}
fonction_first_menu(){
echo "'$0': Menu :"
echo ''
echo ' ---'
echo ''
echo '1.Creer un vHost.'
echo '2.Quitter'
echo ''
echo -n 'Votre choix ( 1 - 2) :'
read choix
if [ "$choix" = "1" ]; then
{
fonction_menu
}
else
{
exit 0
}
fi
}
fonction_first_menu
|
Si jamais tu as la moindre erreur qui sort dit moi le parce que je pense qu'il y a un probleme avec les droits d'ecriture du user.conf d'apache
PS : Oubli pas de remettre ton ip
J'ai editer le code et ajouter les dernieres corrections à 19h46
Édité
le 07/06/2008 à 19:48:03
par bb_awa
Linux is not just an Os but is the future of the humanity !
- Citation ubuntu : "... You are encorouraged and legally entiltled to copy, reinstall, modify and redistribute this CD ..." Yeaaah !! Le libre !
- Si Billou à inventer crosoft et windaube alors le Manchot a inventer Billou (meme si il l'a rater ).
- La connerie n'est pas un virus mais elle se propage a la meme vitesse.
Citation : AlertAttention, Votre windows n'a pas planter depuis plus d'1h,
-Windows va maintenant effectuer un plantage de routine.
-FATALERROR
|
Ubuntu, Debian User

Ville : Mirande
Pays : France métropolitaine
|
Voici le message qui m'envoie. J'ai fait un copier coller de ton script
Code : Bash 1
2
3
4
5
6
7
8
9
10
11
12
13
14 | /root/domaine.sh: Utilisateur knoppix cree\n
/root/domaine.sh: Verfication du password
/root/domaine.sh: Creation des dossiers et application du chmod
chmod: ne peut accéder `/etc/apache2/sites-available/knoppix.conf': Aucun fichier ou répertoire de ce type
/root/domaine.sh: Confiduration de Vsftpd
/root/domaine.sh: On configure mysql
/root/domaine.sh: line 51: /usr/bin/mysql -h 127.0.0.1 -u ftp -p "$pass_mysql_ftp" -D ftp -e "INSERT INTO users (name ,pass) VALUES (knoppix, PASSWORD(elisha), PASSWORD); ": Aucun fichier ou répertoire de ce type
/root/domaine.sh: line 53: /usr/bin/mysql -h 127.0.0.1 -u root -p "$pass_mysql_root" -e "CREATE USER knoppix@localhost IDENTIFIED BY elisha;GRANT USAGE ON * . * TO knoppix@localhost IDENTIFIED BY elisha WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0": Nom de fichier trop long
/root/domaine.sh: On configure apache
This site does not exist!
Reloading web server config...2984
.
/root/domaine.sh: -- Le vHost leknoppix.com a ete ajouter avec succes --
|
Je comprend pas pourquoi tu me fait marque ceci dans l'enregistrement mysql :
/usr/bin/mysql -h 127.0.0.1 -u ftp -p "$pass_mysql_ftp" -D ftp -e "INSERT INTO users (name ,pass) VALUES (knoppix, PASSWORD(monpass), PASSWORD);
POurquoi ne puisje pas utiliser ceci?
mysql -u ftp -p"$pass_mysql_ftp" -D ftp -e "INSERT INTO users (name ,pass) VALUES ('$nom', ENCRYPT( '$pass' ));"
|
Nux addicT
|
pour mysql tu as aussi raison
Code : Bash1 | mysql -u ftp -p"$pass_mysql_ftp" -D ftp -e "INSERT INTO users (name ,pass) VALUES ('$nom', ENCRYPT( '$pass' ));"
|
La seule chose qui manque c'est de
savoir ou doit se trouver se fichier user.conf
car je pense que le chemin d'acces pour l'ecriture n'est pas
bon donc il faudrait voir si tu peu le trouver.
Linux is not just an Os but is the future of the humanity !
- Citation ubuntu : "... You are encorouraged and legally entiltled to copy, reinstall, modify and redistribute this CD ..." Yeaaah !! Le libre !
- Si Billou à inventer crosoft et windaube alors le Manchot a inventer Billou (meme si il l'a rater ).
- La connerie n'est pas un virus mais elle se propage a la meme vitesse.
Citation : AlertAttention, Votre windows n'a pas planter depuis plus d'1h,
-Windows va maintenant effectuer un plantage de routine.
-FATALERROR
|
Ubuntu, Debian User

Ville : Mirande
Pays : France métropolitaine
|
Toujours un problème:
Code : Bash 1
2
3
4
5
6
7
8
9
10
11
12 | /root/domaine.sh: Utilisateur knoppix cree\n
/root/domaine.sh: Verfication du password
/root/domaine.sh: Creation des dossiers et application du chmod
chmod: ne peut accéder `/etc/apache2/sites-available/knoppix.conf': Aucun fichier ou répertoire de ce type
/root/domaine.sh: Confiduration de Vsftpd
/root/domaine.sh: On configure mysql
/root/domaine.sh: On configure apache
This site does not exist!
Reloading web server config...2462
.
/root/domaine.sh: -- Le vHost leknoppix a ete ajouter avec succes --
|
Voici le code que j'ai utilisé:
Code : Bash 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151 | #!/bin/bash
# Definition des variables
pass_mysql_ftp=elisha32vanille
pass_mysql_root=elisha32vanille
DOSSIER=home
USER_CONFIG_DIR=/etc/vsftpd
fonction_end(){
echo ''
echo "$0: -- Le vHost $DOMAINE a ete ajouter avec succes --"
exit 0
}
fonction_apache_conf(){
echo "$0: On configure apache"
echo "
<VirtualHost 192.168.1.99:80>
DocumentRoot /$DOSSIER/$nom/public_html/www
ServerName www.$DOMAINE
</VirtualHost>
<VirtualHost 192.168.1.99:80>
ServerName www.$DOMAINE
ServerAlias *.$DOMAINE
DocumentRoot /$DOSSIER/$nom/public_html/www/
<Directory /$DOSSIER/$nom/public_html/>
Options -Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog /$DOSSIER/$nom/logs/error.log
LogLevel warn
CustomLog /$DOSSIER/$nom/logs/access.log combined
ServerSignature Off
</VirtualHost>
" > /etc/apache2/sites-available/$nom.conf
a2ensite $nom
/etc/init.d/apache2 reload
fonction_end
}
fonction_mysql_conf(){
echo "$0: On configure mysql"
mysql -u ftp -p"$pass_mysql_ftp" -D ftp -e "INSERT INTO users (name ,pass) VALUES ('$nom', ENCRYPT( '$pass' ));"
mysql -u root -p"$pass_mysql_root" -e "CREATE USER '$nom'@'localhost' IDENTIFIED BY '$pass'; GRANT USAGE ON *.* TO '$nom'@'localhost' IDENTIFIED BY '$pass' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0; CREATE DATABASE IF NOT EXISTS $nom; GRANT ALL PRIVILEGES ON $nom.* TO '$nom'@'localhost';"
fonction_apache_conf
}
fonction_create_dir(){
echo "$0: Creation des dossiers et application du chmod"
chmod 755 -R /$DOSSIER/$nom
mkdir /$DOSSIER/$nom/logs
mkdir /$DOSSIER/$nom/public_html
mkdir /$DOSSIER/$nom/public_html/www
chmod 777 -R /$DOSSIER/$nom
chmod 755 /$DOSSIER/$nom
chmod 777 /etc/apache2/sites-available/$nom.conf
fonction_vsftpd_conf
}
fonction_vsftpd_conf(){
echo "$0: Confiduration de Vsftpd"
echo 'anon_world_readable_only=NO' > $USER_CONFIG_DIR/$nom #lecture seule
echo "local_root=/home/$DOMAINE" >> $USER_CONFIG_DIR/$nom #repertoire d'arrivee
echo 'write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'ecriture
echo 'anon_upload_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'upload
echo 'anon_mkdir_write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit de creer des repertoires
echo 'anon_other_write_enable=YES' >> $USER_CONFIG_DIR/$nom
echo 'hide_file=(none)' >> $USER_CONFIG_DIR/$nom
echo 'force_dot_files=YES' >> $USER_CONFIG_DIR/$nom
echo '' >> $USER_CONFIG_DIR/$nom #On laisse une ligne vide
fonction_mysql_conf
}
fonction_test_pass() {
echo "$0: Verfication du password "
if [ "$pass" = "$pass2" ]; then
{
fonction_create_dir
}
else
{
echo "$0: Attention : Les deux mots de passes ne sont pas identiques"
echo "$0: ## Annulation ... ##"
fonction_first_menu
}
fi
}
fonction_create_user(){
# creation du user (le programme s'arrete par securite si le user existe deja )
/usr/sbin/useradd $nom -p `perl -e "print crypt('$pass',pwet)"` -d /$DOSSIER/$nom -m -s /bin/bash
if [ $? -ne 0 ]; then
{
echo "$0: L'utilisateur $nom existe deja , operation annulee !"
fonction_first_menu
}
else
{
echo "$0: Utilisateur $nom cree\n"
fonction_test_pass
}
fi
}
fonction_menu(){
echo -n "Nom d'utilisateur : "
read nom
echo -n "Nom de domaine (sans les www) : "
read DOMAINE
echo -n "Mot de passe : "
read pass
echo -n "Mot de passe (le retour) : "
read pass2
echo "#####################################"
fonction_create_user
}
fonction_first_menu(){
echo "'$0': Menu :"
echo ''
echo ' ---'
echo ''
echo '1.Creer un vHost.'
echo '2.Quitter'
echo ''
echo -n 'Votre choix ( 1 - 2) :'
read choix
if [ "$choix" = "1" ]; then
{
fonction_menu
}
else
{
exit 0
}
fi
}
fonction_first_menu
|
En relisant, il y a un petit problème au niveau de la config de vsftpd, mais sa ne viens pas de là le problème.
Il dit qu'il ne peux pas chroner le fichier car il n'existe pas.Tu chrone et après tu crais. Il ne faudrai pas faire ceci avant de chrone
Code : Bash1 | echo "" >> $USER_CONFIG_DIR/$nom
|
Après j'ai une petite question, L'ip du virtualhost, c'est laquelle? L'ip de la machine sur le réseau 192.168.1.99 ou l'ip du FAI?
|
Nux addicT
|
Pour l'ip oui c'est l'ip de la machine 192.168.*.**
Pour le fichier .conf je pense plutot qu'il n'est pas creer a aucun moment en fait car cette commande
Initialisation du fichier + ecriture :
Code : Bash1 | echo 'anon_world_readable_only=NO' > $USER_CONFIG_DIR/$nom
|
Ecriture a la suite du fichier :
Code : Bash1 | echo "local_root=/home/$DOMAINE" >> $USER_CONFIG_DIR/$nom
|
Meme avec un seul > je ne pense pas que cela creer et modifie le fichier,
sa redonne juste le fichier vierge, donc si il n'existe pas il sera pas creer
On va essayer de faire un touch sur ce fichier
Code : Bash 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152 | #!/bin/bash
# Definition des variables
pass_mysql_ftp=elisha32vanille
pass_mysql_root=elisha32vanille
DOSSIER=home
USER_CONFIG_DIR=/etc/vsftpd
fonction_end(){
echo ''
echo "$0: -- Le vHost $DOMAINE a ete ajouter avec succes --"
exit 0
}
fonction_apache_conf(){
echo "$0: On configure apache"
echo "
<VirtualHost 192.168.1.99:80>
DocumentRoot /$DOSSIER/$nom/public_html/www
ServerName www.$DOMAINE
</VirtualHost>
<VirtualHost 192.168.1.99:80>
ServerName www.$DOMAINE
ServerAlias *.$DOMAINE
DocumentRoot /$DOSSIER/$nom/public_html/www/
<Directory /$DOSSIER/$nom/public_html/>
Options -Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog /$DOSSIER/$nom/logs/error.log
LogLevel warn
CustomLog /$DOSSIER/$nom/logs/access.log combined
ServerSignature Off
</VirtualHost>
" > /etc/apache2/sites-available/$nom.conf
a2ensite $nom
/etc/init.d/apache2 reload
fonction_end
}
fonction_mysql_conf(){
echo "$0: On configure mysql"
mysql -u ftp -p"$pass_mysql_ftp" -D ftp -e "INSERT INTO users (name ,pass) VALUES ('$nom', ENCRYPT( '$pass' ));"
mysql -u root -p"$pass_mysql_root" -e "CREATE USER '$nom'@'localhost' IDENTIFIED BY '$pass'; GRANT USAGE ON *.* TO '$nom'@'localhost' IDENTIFIED BY '$pass' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0; CREATE DATABASE IF NOT EXISTS $nom; GRANT ALL PRIVILEGES ON $nom.* TO '$nom'@'localhost';"
fonction_apache_conf
}
fonction_create_dir(){
echo "$0: Creation des dossiers et application du chmod"
chmod 755 -R /$DOSSIER/$nom
mkdir /$DOSSIER/$nom/logs
mkdir /$DOSSIER/$nom/public_html
mkdir /$DOSSIER/$nom/public_html/www
chmod 777 -R /$DOSSIER/$nom
chmod 755 /$DOSSIER/$nom
touch /etc/apache2/sites-available/$nom.conf
chmod 777 /etc/apache2/sites-available/$nom.conf
fonction_vsftpd_conf
}
fonction_vsftpd_conf(){
echo "$0: Confiduration de Vsftpd"
echo 'anon_world_readable_only=NO' > $USER_CONFIG_DIR/$nom #lecture seule
echo "local_root=/home/$DOMAINE" >> $USER_CONFIG_DIR/$nom #repertoire d'arrivee
echo 'write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'ecriture
echo 'anon_upload_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'upload
echo 'anon_mkdir_write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit de creer des repertoires
echo 'anon_other_write_enable=YES' >> $USER_CONFIG_DIR/$nom
echo 'hide_file=(none)' >> $USER_CONFIG_DIR/$nom
echo 'force_dot_files=YES' >> $USER_CONFIG_DIR/$nom
echo '' >> $USER_CONFIG_DIR/$nom #On laisse une ligne vide
fonction_mysql_conf
}
fonction_test_pass() {
echo "$0: Verfication du password "
if [ "$pass" = "$pass2" ]; then
{
fonction_create_dir
}
else
{
echo "$0: Attention : Les deux mots de passes ne sont pas identiques"
echo "$0: ## Annulation ... ##"
fonction_first_menu
}
fi
}
fonction_create_user(){
# creation du user (le programme s'arrete par securite si le user existe deja )
/usr/sbin/useradd $nom -p `perl -e "print crypt('$pass',pwet)"` -d /$DOSSIER/$nom -m -s /bin/bash
if [ $? -ne 0 ]; then
{
echo "$0: L'utilisateur $nom existe deja , operation annulee !"
fonction_first_menu
}
else
{
echo "$0: Utilisateur $nom cree\n"
fonction_test_pass
}
fi
}
fonction_menu(){
echo -n "Nom d'utilisateur : "
read nom
echo -n "Nom de domaine (sans les www) : "
read DOMAINE
echo -n "Mot de passe : "
read pass
echo -n "Mot de passe (le retour) : "
read pass2
echo "#####################################"
fonction_create_user
}
fonction_first_menu(){
echo "'$0': Menu :"
echo ''
echo ' ---'
echo ''
echo '1.Creer un vHost.'
echo '2.Quitter'
echo ''
echo -n 'Votre choix ( 1 - 2) :'
read choix
if [ "$choix" = "1" ]; then
{
fonction_menu
}
else
{
exit 0
}
fi
}
fonction_first_menu
|
Car je pense que c'est a cause de ce fichier qu'il y a un probleme au niveau de l'a2nsite
Linux is not just an Os but is the future of the humanity !
- Citation ubuntu : "... You are encorouraged and legally entiltled to copy, reinstall, modify and redistribute this CD ..." Yeaaah !! Le libre !
- Si Billou à inventer crosoft et windaube alors le Manchot a inventer Billou (meme si il l'a rater ).
- La connerie n'est pas un virus mais elle se propage a la meme vitesse.
Citation : AlertAttention, Votre windows n'a pas planter depuis plus d'1h,
-Windows va maintenant effectuer un plantage de routine.
-FATALERROR
|
Ubuntu, Debian User

Ville : Mirande
Pays : France métropolitaine
|
Toujours idem
Code : Bash1 | This site does not exist!
|
|
Nux addicT
|
On va réessayer avec le chemin $DOSSIER/$DOMAINE
car a2nsite fonctionne avec le nom de domaine il me semble
donc une erreur en lui déclarant $nom
Code : Bash 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152 | #!/bin/bash
# Definition des variables
pass_mysql_ftp=elisha32vanille
pass_mysql_root=elisha32vanille
DOSSIER=home
USER_CONFIG_DIR=/etc/vsftpd
fonction_end(){
echo ''
echo "$0: -- Le vHost $DOMAINE a ete ajouter avec succes --"
exit 0
}
fonction_apache_conf(){
echo "$0: On configure apache"
echo "
<VirtualHost 192.168.1.99:80>
DocumentRoot /$DOSSIER/$DOMAINE/public_html/www
ServerName www.$DOMAINE
</VirtualHost>
<VirtualHost 192.168.1.99:80>
ServerName www.$DOMAINE
ServerAlias *.$DOMAINE
DocumentRoot /$DOSSIER/$DOMAINE/public_html/www/
<Directory /$DOSSIER/$DOMAINE/public_html/>
Options -Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog /$DOSSIER/$DOMAINE/logs/error.log
LogLevel warn
CustomLog /$DOSSIER/$DOMAINE/logs/access.log combined
ServerSignature Off
</VirtualHost>
" > /etc/apache2/sites-available/$DOMAINE
a2ensite $DOMAINE
/etc/init.d/apache2 reload
fonction_end
}
fonction_mysql_conf(){
echo "$0: On configure mysql"
mysql -u ftp -p"$pass_mysql_ftp" -D ftp -e "INSERT INTO users (name ,pass) VALUES ('$nom', ENCRYPT( '$pass' ));"
mysql -u root -p"$pass_mysql_root" -e "CREATE USER '$nom'@'localhost' IDENTIFIED BY '$pass'; GRANT USAGE ON *.* TO '$nom'@'localhost' IDENTIFIED BY '$pass' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0; CREATE DATABASE IF NOT EXISTS $nom; GRANT ALL PRIVILEGES ON $nom.* TO '$nom'@'localhost';"
fonction_apache_conf
}
fonction_create_dir(){
echo "$0: Creation des dossiers et application du chmod"
chmod 755 -R /$DOSSIER/$DOMAINE
mkdir /$DOSSIER/$DOMAINE/logs
mkdir /$DOSSIER/$DOMAINE/public_html
mkdir /$DOSSIER/$DOMAINE/public_html/www
chmod 777 -R /$DOSSIER/$DOMAINE
chmod 755 /$DOSSIER/$DOMAINE
touch /etc/apache2/sites-available/$DOMAINE
chmod 777 /etc/apache2/sites-available/$DOMAINE
fonction_vsftpd_conf
}
fonction_vsftpd_conf(){
echo "$0: Confiduration de Vsftpd"
echo 'anon_world_readable_only=NO' > $USER_CONFIG_DIR/$nom #lecture seule
echo "local_root=/home/$DOMAINE" >> $USER_CONFIG_DIR/$nom #repertoire d'arrivee
echo 'write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'ecriture
echo 'anon_upload_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'upload
echo 'anon_mkdir_write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit de creer des repertoires
echo 'anon_other_write_enable=YES' >> $USER_CONFIG_DIR/$nom
echo 'hide_file=(none)' >> $USER_CONFIG_DIR/$nom
echo 'force_dot_files=YES' >> $USER_CONFIG_DIR/$nom
echo '' >> $USER_CONFIG_DIR/$nom #On laisse une ligne vide
fonction_mysql_conf
}
fonction_test_pass() {
echo "$0: Verfication du password "
if [ "$pass" = "$pass2" ]; then
{
fonction_create_dir
}
else
{
echo "$0: Attention : Les deux mots de passes ne sont pas identiques"
echo "$0: ## Annulation ... ##"
fonction_first_menu
}
fi
}
fonction_create_user(){
# creation du user (le programme s'arrete par securite si le user existe deja )
/usr/sbin/useradd $nom -p `perl -e "print crypt('$pass',pwet)"` -d /$DOSSIER/$DOMAINE -m -s /bin/bash
if [ $? -ne 0 ]; then
{
echo "$0: L'utilisateur $nom existe deja , operation annulee !"
fonction_first_menu
}
else
{
echo "$0: Utilisateur $nom cree\n"
fonction_test_pass
}
fi
}
fonction_menu(){
echo -n "Nom d'utilisateur : "
read nom
echo -n "Nom de domaine (sans les www) : "
read DOMAINE
echo -n "Mot de passe : "
read pass
echo -n "Mot de passe (le retour) : "
read pass2
echo "#####################################"
fonction_create_user
}
fonction_first_menu(){
echo "'$0': Menu :"
echo ''
echo ' ---'
echo ''
echo '1.Creer un vHost.'
echo '2.Quitter'
echo ''
echo -n 'Votre choix ( 1 - 2) :'
read choix
if [ "$choix" = "1" ]; then
{
fonction_menu
}
else
{
exit 0
}
fi
}
fonction_first_menu
|
Linux is not just an Os but is the future of the humanity !
- Citation ubuntu : "... You are encorouraged and legally entiltled to copy, reinstall, modify and redistribute this CD ..." Yeaaah !! Le libre !
- Si Billou à inventer crosoft et windaube alors le Manchot a inventer Billou (meme si il l'a rater ).
- La connerie n'est pas un virus mais elle se propage a la meme vitesse.
Citation : AlertAttention, Votre windows n'a pas planter depuis plus d'1h,
-Windows va maintenant effectuer un plantage de routine.
-FATALERROR
|
Ubuntu, Debian User

Ville : Mirande
Pays : France métropolitaine
|
Merci sa marche! mais j'ai une merde avec le mass hosting.
Sa me renvoie un probleme
Code : Bash1
2
3
4 | Site leknoppix.com installed; run /etc/init.d/apache2 reload to enable.
Reloading web server config...2462
[Sun Jun 08 14:21:14 2008] [warn] VirtualHost 192.168.1.99:80 overlaps with VirtualHost 192.168.1.99:80, the first has precedence, perhaps you need a NameVirtualHost directive
.
|
de plus qd j'ai créer un autre dossier au niveau du www, le sous domaine ne marche pas.
Il doit y avoir un probleme au niveau du virtualhost car l'orsque je tape mon ip de mon fai, je suis rediriger vers le test que j'ai fait.
|
Nux addicT
|
Essaye tout simplement comme ça on va voir ce que sa donne.
Code : Bash 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153 | #!/bin/bash
# Definition des variables
pass_mysql_ftp=elisha32vanille
pass_mysql_root=elisha32vanille
DOSSIER=home
USER_CONFIG_DIR=/etc/vsftpd
fonction_end(){
echo ''
echo "$0: -- Le vHost $DOMAINE a ete ajouter avec succes --"
exit 0
}
fonction_apache_conf(){
echo "$0: On configure apache"
#<VirtualHost $DOMAINE0:80>
# DocumentRoot /$DOSSIER/$DOMAINE/public_html/www
# ServerName www.$DOMAINE
# </VirtualHost>
echo "
<VirtualHost 192.168.10.99:80>
ServerName www.$DOMAINE
ServerAlias *.$DOMAINE
DocumentRoot /$DOSSIER/$DOMAINE/public_html/www/
<Directory /$DOSSIER/$DOMAINE/public_html/>
Options -Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog /$DOSSIER/$DOMAINE/logs/error.log
LogLevel warn
CustomLog /$DOSSIER/$DOMAINE/logs/access.log combined
ServerSignature Off
</VirtualHost>
" > /etc/apache2/sites-available/$DOMAINE
a2ensite $DOMAINE
/etc/init.d/apache2 reload
fonction_end
}
fonction_mysql_conf(){
echo "$0: On configure mysql"
mysql -u ftp -p"$pass_mysql_ftp" -D ftp -e "INSERT INTO users (name ,pass) VALUES ('$nom', ENCRYPT( '$pass' ));"
mysql -u root -p"$pass_mysql_root" -e "CREATE USER '$nom'@'localhost' IDENTIFIED BY '$pass'; GRANT USAGE ON *.* TO '$nom'@'localhost' IDENTIFIED BY '$pass' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0; CREATE DATABASE IF NOT EXISTS $nom; GRANT ALL PRIVILEGES ON $nom.* TO '$nom'@'localhost';"
fonction_apache_conf
}
fonction_create_dir(){
echo "$0: Creation des dossiers et application du chmod"
chmod 755 -R /$DOSSIER/$DOMAINE
mkdir /$DOSSIER/$DOMAINE/logs
mkdir /$DOSSIER/$DOMAINE/public_html
mkdir /$DOSSIER/$DOMAINE/public_html/www
chmod 777 -R /$DOSSIER/$DOMAINE
chmod 755 /$DOSSIER/$DOMAINE
touch /etc/apache2/sites-available/$DOMAINE
chmod 777 /etc/apache2/sites-available/$DOMAINE
fonction_vsftpd_conf
}
fonction_vsftpd_conf(){
echo "$0: Confiduration de Vsftpd"
echo 'anon_world_readable_only=NO' > $USER_CONFIG_DIR/$nom #lecture seule
echo "local_root=/home/$DOMAINE" >> $USER_CONFIG_DIR/$nom #repertoire d'arrivee
echo 'write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'ecriture
echo 'anon_upload_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'upload
echo 'anon_mkdir_write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit de creer des repertoires
echo 'anon_other_write_enable=YES' >> $USER_CONFIG_DIR/$nom
echo 'hide_file=(none)' >> $USER_CONFIG_DIR/$nom
echo 'force_dot_files=YES' >> $USER_CONFIG_DIR/$nom
echo '' >> $USER_CONFIG_DIR/$nom #On laisse une ligne vide
fonction_mysql_conf
}
fonction_test_pass() {
echo "$0: Verfication du password "
if [ "$pass" = "$pass2" ]; then
{
fonction_create_dir
}
else
{
echo "$0: Attention : Les deux mots de passes ne sont pas identiques"
echo "$0: ## Annulation ... ##"
fonction_first_menu
}
fi
}
fonction_create_user(){
# creation du user (le programme s'arrete par securite si le user existe deja )
/usr/sbin/useradd $nom -p `perl -e "print crypt('$pass',pwet)"` -d /$DOSSIER/$DOMAINE -m -s /bin/bash
if [ $? -ne 0 ]; then
{
echo "$0: L'utilisateur $nom existe deja , operation annulee !"
fonction_first_menu
}
else
{
echo "$0: Utilisateur $nom cree\n"
fonction_test_pass
}
fi
}
fonction_menu(){
echo -n "Nom d'utilisateur : "
read nom
echo -n "Nom de domaine (sans les www) : "
read DOMAINE
echo -n "Mot de passe : "
read pass
echo -n "Mot de passe (le retour) : "
read pass2
echo "#####################################"
fonction_create_user
}
fonction_first_menu(){
echo "'$0': Menu :"
echo ''
echo ' ---'
echo ''
echo '1.Creer un vHost.'
echo '2.Quitter'
echo ''
echo -n 'Votre choix ( 1 - 2) :'
read choix
if [ "$choix" = "1" ]; then
{
fonction_menu
}
else
{
exit 0
}
fi
}
fonction_first_menu
|
Linux is not just an Os but is the future of the humanity !
- Citation ubuntu : "... You are encorouraged and legally entiltled to copy, reinstall, modify and redistribute this CD ..." Yeaaah !! Le libre !
- Si Billou à inventer crosoft et windaube alors le Manchot a inventer Billou (meme si il l'a rater ).
- La connerie n'est pas un virus mais elle se propage a la meme vitesse.
Citation : AlertAttention, Votre windows n'a pas planter depuis plus d'1h,
-Windows va maintenant effectuer un plantage de routine.
-FATALERROR
|
Ubuntu, Debian User

Ville : Mirande
Pays : France métropolitaine
|
Là je n'est plus rediriger vers /home/mondomaine/public/www
|
Nux addicT
|
Je pense avoir trouver la solution pour pas qu'il y ait de
confusion avec les noms des vhosts pour apache.
Si sa ne marche toujours pas essaie en enlevant .$DOMAINE à la ligne 27
Il faut juste laisser l'asterisque
Code : Bash1 | ligne 27 : ServerAlias *.$DOMAINE
|
par
Code : Bash
Code : Bash 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154 | #!/bin/bash
# Definition des variables
pass_mysql_ftp=elisha32vanille
pass_mysql_root=elisha32vanille
DOSSIER=home
USER_CONFIG_DIR=/etc/vsftpd
fonction_end(){
echo ''
echo "$0: -- Le vHost $DOMAINE a ete ajouter avec succes --"
exit 0
}
fonction_apache_conf(){
echo "$0: On configure apache"
echo "
NameVirtualHost *
<VirtualHost *:80>
DocumentRoot /$DOSSIER/$DOMAINE/public_html/www
ServerName www.$DOMAINE
</VirtualHost>
<VirtualHost *:80>
ServerName www.$DOMAINE
ServerAlias *.$DOMAINE
DocumentRoot /$DOSSIER/$DOMAINE/public_html/www/
<Directory /$DOSSIER/$DOMAINE/public_html/>
Options -Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog /$DOSSIER/$DOMAINE/logs/error.log
LogLevel warn
CustomLog /$DOSSIER/$DOMAINE/logs/access.log combined
ServerSignature Off
</VirtualHost>
" > /etc/apache2/sites-available/$DOMAINE
a2ensite $DOMAINE
/etc/init.d/apache2 reload
fonction_end
}
fonction_mysql_conf(){
echo "$0: On configure mysql"
mysql -u ftp -p"$pass_mysql_ftp" -D ftp -e "INSERT INTO users (name ,pass) VALUES ('$nom', ENCRYPT( '$pass' ));"
mysql -u root -p"$pass_mysql_root" -e "CREATE USER '$nom'@'localhost' IDENTIFIED BY '$pass'; GRANT USAGE ON *.* TO '$nom'@'localhost' IDENTIFIED BY '$pass' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0; CREATE DATABASE IF NOT EXISTS $nom; GRANT ALL PRIVILEGES ON $nom.* TO '$nom'@'localhost';"
fonction_apache_conf
}
fonction_create_dir(){
echo "$0: Creation des dossiers et application du chmod"
chmod 755 -R /$DOSSIER/$DOMAINE
mkdir /$DOSSIER/$DOMAINE/logs
mkdir /$DOSSIER/$DOMAINE/public_html
mkdir /$DOSSIER/$DOMAINE/public_html/www
chmod 777 -R /$DOSSIER/$DOMAINE
chmod 755 /$DOSSIER/$DOMAINE
touch /etc/apache2/sites-available/$DOMAINE
chmod 777 /etc/apache2/sites-available/$DOMAINE
fonction_vsftpd_conf
}
fonction_vsftpd_conf(){
echo "$0: Confiduration de Vsftpd"
echo 'anon_world_readable_only=NO' > $USER_CONFIG_DIR/$nom #lecture seule
echo "local_root=/home/$DOMAINE" >> $USER_CONFIG_DIR/$nom #repertoire d'arrivee
echo 'write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'ecriture
echo 'anon_upload_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'upload
echo 'anon_mkdir_write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit de creer des repertoires
echo 'anon_other_write_enable=YES' >> $USER_CONFIG_DIR/$nom
echo 'hide_file=(none)' >> $USER_CONFIG_DIR/$nom
echo 'force_dot_files=YES' >> $USER_CONFIG_DIR/$nom
echo '' >> $USER_CONFIG_DIR/$nom #On laisse une ligne vide
fonction_mysql_conf
}
fonction_test_pass() {
echo "$0: Verfication du password "
if [ "$pass" = "$pass2" ]; then
{
fonction_create_dir
}
else
{
echo "$0: Attention : Les deux mots de passes ne sont pas identiques"
echo "$0: ## Annulation ... ##"
fonction_first_menu
}
fi
}
fonction_create_user(){
# creation du user (le programme s'arrete par securite si le user existe deja )
/usr/sbin/useradd $nom -p `perl -e "print crypt('$pass',pwet)"` -d /$DOSSIER/$DOMAINE -m -s /bin/bash
if [ $? -ne 0 ]; then
{
echo "$0: L'utilisateur $nom existe deja , operation annulee !"
fonction_first_menu
}
else
{
echo "$0: Utilisateur $nom cree\n"
fonction_test_pass
}
fi
}
fonction_menu(){
echo -n "Nom d'utilisateur : "
read nom
echo -n "Nom de domaine (sans les www) : "
read DOMAINE
echo -n "Mot de passe : "
read pass
echo -n "Mot de passe (le retour) : "
read pass2
echo "#####################################"
fonction_create_user
}
fonction_first_menu(){
echo "'$0': Menu :"
echo ''
echo ' ---'
echo ''
echo '1.Creer un vHost.'
echo '2.Quitter'
echo ''
echo -n 'Votre choix ( 1 - 2) :'
read choix
if [ "$choix" = "1" ]; then
{
fonction_menu
}
else
{
exit 0
}
fi
}
fonction_first_menu
|
Édité
le 08/06/2008 à 15:11:36
par bb_awa
Linux is not just an Os but is the future of the humanity !
- Citation ubuntu : "... You are encorouraged and legally entiltled to copy, reinstall, modify and redistribute this CD ..." Yeaaah !! Le libre !
- Si Billou à inventer crosoft et windaube alors le Manchot a inventer Billou (meme si il l'a rater ).
- La connerie n'est pas un virus mais elle se propage a la meme vitesse.
Citation : AlertAttention, Votre windows n'a pas planter depuis plus d'1h,
-Windows va maintenant effectuer un plantage de routine.
-FATALERROR
|
Ubuntu, Debian User

Ville : Mirande
Pays : France métropolitaine
|
il m'envoie ce message maintenant:
Code : Bash1
2
3
4
5
6
7
8 | Stopping web server (apache2)...[Sun Jun 08 15:17:44 2008] [error] VirtualHost *:80 -- mixing * ports and non-* ports with a NameVirtualHost address is not supported, proceeding with undefined results
[Sun Jun 08 15:17:44 2008] [error] VirtualHost *:80 -- mixing * ports and non-* ports with a NameVirtualHost address is not supported, proceeding with undefined results
[Sun Jun 08 15:17:44 2008] [warn] NameVirtualHost *:0 has no VirtualHosts
.
Starting web server (apache2)...[Sun Jun 08 15:17:45 2008] [error] VirtualHost *:80 -- mixing * ports and non-* ports with a NameVirtualHost address is not supported, proceeding with undefined results
[Sun Jun 08 15:17:45 2008] [error] VirtualHost *:80 -- mixing * ports and non-* ports with a NameVirtualHost address is not supported, proceeding with undefined results
[Sun Jun 08 15:17:45 2008] [warn] NameVirtualHost *:0 has no VirtualHosts
.
|
j'ai fait un copier coller.
|
Nux addicT
|
C'est le seul probleme qui nous reste, on va bien trouver
Sinon vu que là je suis chez moi je vais monter un petit serveur de tests,
Essaye ce code au cas ou
Code : Bash 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152 | #!/bin/bash
# Definition des variables
pass_mysql_ftp=elisha32vanille
pass_mysql_root=elisha32vanille
DOSSIER=home
USER_CONFIG_DIR=/etc/vsftpd
fonction_end(){
echo ''
echo "$0: -- Le vHost $DOMAINE a ete ajouter avec succes --"
exit 0
}
fonction_apache_conf(){
echo "$0: On configure apache"
echo "
<VirtualHost *:80>
DocumentRoot /$DOSSIER/$DOMAINE/public_html/www
ServerName www.$DOMAINE
</VirtualHost>
<VirtualHost *:80>
ServerName www.$DOMAINE
ServerAlias *.$DOMAINE
DocumentRoot /$DOSSIER/$DOMAINE/public_html/www/
<Directory /$DOSSIER/$DOMAINE/public_html/>
Options -Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog /$DOSSIER/$DOMAINE/logs/error.log
LogLevel warn
CustomLog /$DOSSIER/$DOMAINE/logs/access.log combined
ServerSignature Off
</VirtualHost>
" > /etc/apache2/sites-available/$DOMAINE
a2ensite $DOMAINE
/etc/init.d/apache2 reload
fonction_end
}
fonction_mysql_conf(){
echo "$0: On configure mysql"
mysql -u ftp -p"$pass_mysql_ftp" -D ftp -e "INSERT INTO users (name ,pass) VALUES ('$nom', ENCRYPT( '$pass' ));"
mysql -u root -p"$pass_mysql_root" -e "CREATE USER '$nom'@'localhost' IDENTIFIED BY '$pass'; GRANT USAGE ON *.* TO '$nom'@'localhost' IDENTIFIED BY '$pass' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0; CREATE DATABASE IF NOT EXISTS $nom; GRANT ALL PRIVILEGES ON $nom.* TO '$nom'@'localhost';"
fonction_apache_conf
}
fonction_create_dir(){
echo "$0: Creation des dossiers et application du chmod"
chmod 755 -R /$DOSSIER/$DOMAINE
mkdir /$DOSSIER/$DOMAINE/logs
mkdir /$DOSSIER/$DOMAINE/public_html
mkdir /$DOSSIER/$DOMAINE/public_html/www
chmod 777 -R /$DOSSIER/$DOMAINE
chmod 755 /$DOSSIER/$DOMAINE
touch /etc/apache2/sites-available/$DOMAINE
chmod 777 /etc/apache2/sites-available/$DOMAINE
fonction_vsftpd_conf
}
fonction_vsftpd_conf(){
echo "$0: Confiduration de Vsftpd"
echo 'anon_world_readable_only=NO' > $USER_CONFIG_DIR/$nom #lecture seule
echo "local_root=/home/$DOMAINE" >> $USER_CONFIG_DIR/$nom #repertoire d'arrivee
echo 'write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'ecriture
echo 'anon_upload_enable=YES' >> $USER_CONFIG_DIR/$nom #droit d'upload
echo 'anon_mkdir_write_enable=YES' >> $USER_CONFIG_DIR/$nom #droit de creer des repertoires
echo 'anon_other_write_enable=YES' >> $USER_CONFIG_DIR/$nom
echo 'hide_file=(none)' >> $USER_CONFIG_DIR/$nom
echo 'force_dot_files=YES' >> $USER_CONFIG_DIR/$nom
echo '' >> $USER_CONFIG_DIR/$nom #On laisse une ligne vide
fonction_mysql_conf
}
fonction_test_pass() {
echo "$0: Verfication du password "
if [ "$pass" = "$pass2" ]; then
{
fonction_create_dir
}
else
{
echo "$0: Attention : Les deux mots de passes ne sont pas identiques"
echo "$0: ## Annulation ... ##"
fonction_first_menu
}
fi
}
fonction_create_user(){
# creation du user (le programme s'arrete par securite si le user existe deja )
/usr/sbin/useradd $nom -p `perl -e "print crypt('$pass',pwet)"` -d /$DOSSIER/$DOMAINE -m -s /bin/bash
if [ $? -ne 0 ]; then
{
echo "$0: L'utilisateur $nom existe deja , operation annulee !"
fonction_first_menu
}
else
{
echo "$0: Utilisateur $nom cree\n"
fonction_test_pass
}
fi
}
fonction_menu(){
echo -n "Nom d'utilisateur : "
read nom
echo -n "Nom de domaine (sans les www) : "
read DOMAINE
echo -n "Mot de passe : "
read pass
echo -n "Mot de passe (le retour) : "
read pass2
echo "#####################################"
fonction_create_user
}
fonction_first_menu(){
echo "'$0': Menu :"
echo ''
echo ' ---'
echo ''
echo '1.Creer un vHost.'
echo '2.Quitter'
echo ''
echo -n 'Votre choix ( 1 - 2) :'
read choix
if [ "$choix" = "1" ]; then
{
fonction_menu
}
else
{
exit 0
}
fi
}
fonction_first_menu
|
Linux is not just an Os but is the future of the humanity !
- Citation ubuntu : "... You are encorouraged and legally entiltled to copy, reinstall, modify and redistribute this CD ..." Yeaaah !! Le libre !
- Si Billou à inventer crosoft et windaube alors le Manchot a inventer Billou (meme si il l'a rater ).
- La connerie n'est pas un virus mais elle se propage a la meme vitesse.
Citation : AlertAttention, Votre windows n'a pas planter depuis plus d'1h,
-Windows va maintenant effectuer un plantage de routine.
-FATALERROR
|
Ubuntu, Debian User

Ville : Mirande
Pays : France métropolitaine
|
Bon sa ne marche toujours pas
bon à la place de créer ton serveur, je peux te laisser faire des tests avec le mien et le mon de domaine que j'utilise.
|
Nux addicT
|
Voilà j'ai fini par faire mes test sur ton serveur 
Le script fonctionne mais j'ai du rajouter une variable
a définir au début du script c'est l'ip locale du serveur.
On pourrait le remplacer par un script qui la récupere automatiquement,
mais j'ai pas ça sous la main
Je t'ai mis le script final dans ton /root sous le nom vhost.sh
Regarde si tout va comme tu veut comme ça je pourrais faire un 2eme script
pour désactiver et supprimer les vhosts.
Et peu etre un pour les désactiver temporairement pour maintenance ...
PS : j'ai remis ton serveur "a neuf" c'est a dire que il n'y a aucun vhost dessus"
Pour creer un vhosts il faut que tu le fasse avec un autre user que leknoppix* (*il me semble que c'est ça) qui est déja creer.
Je poste le code final quand meme ici
Code : Bash 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158 | #!/bin/bash
# Definition des variables
pass_mysql_ftp=elisha32vanille
pass_mysql_root=elisha32vanille
DOSSIER=home
USER_CONFIG_DIR=/etc/vsftpd
fonction_end(){
echo ''
echo "$0: -- Le vHost $DOMAINE a ete ajouter avec succes --"
exit 0
}
fonction_apache_conf(){
echo "$0: On configure apache"
echo "
NameVirtualHost $IP:80
<VirtualHost $IP:80>
DocumentRoot /$DOSSIER/$DOMAINE/public_html/www
ServerName www.$DOMAINE
</VirtualHost>
<VirtualHost $IP:80>
ServerName www.$DOMAINE
ServerAlias *.$DOMAINE
DocumentRoot /$DOSSIER/$DOMAINE/public_html/www/
<Directory /$DOSSIER/$DOMAINE/public_html/>
Options -Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog /$DOSSIER/$DOMAINE/logs/error.log
LogLevel warn
CustomLog /$DOSSIER/$DOMAINE/logs/access.log combined
ServerSignature Off
</VirtualHost>
" > /etc/apache2/sites-available/$DOMAINE
a2ensite $DOMAINE
/etc/init.d/apache2 reload
fonction_end
}
fonction_mysql_conf(){
echo "$0: On configure mysql"
mysql -u ftp -p"$pass_mysql_ftp" -D ftp -e "INSERT INTO users (name ,pass) VALUES ('$nom', ENCRYPT( '$pass' ));"
mysql -u root -p"$pass_mysql_root" -e "CREATE USER '$nom'@'localhost' IDENTIFIED BY '$pass'; GRANT USAGE ON *.* TO '$nom'@'localhost' IDENTIFIED BY '$pass' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0; CREATE DATABASE IF NOT EXISTS $nom; GRANT ALL PRIVILEGES ON $nom.* TO '$nom'@'localhost';"
fonction_apache_conf
}
fonction_create_dir(){
echo "$0: Creation des dossiers et application du chmod"
chmod 755 -R /$DOSSIER/$DOMAINE
mkdir /$DOSSIER/$DOMAINE/logs
mkdir /$DOSSIER/$DOMAINE/public_html
mkdir /$DOSSIER/$DOMAINE/public_html/www
chmod 777 -R /$DOSSIER/$DOMAINE
chmod 755 /$DOSSIER/$DOMAINE
touch /etc/apache2/sites-available/$DOMAINE
chmod 777 /etc/apache2/sites-available/$DOMAINE
touch $USER_CONFIG_DIR/$nom.conf
chmod 777 $USER_CONFIG_DIR/$nom.conf
fonction_vsftpd_conf
}
fonction_vsftpd_conf(){
echo "$0: Confiduration de Vsftpd"
echo 'anon_world_readable_only=NO' > $USER_CONFIG_DIR/$nom.conf #lecture seule
echo "local_root=/home/$DOMAINE" >> $USER_CONFIG_DIR/$nom.conf #repertoire d'arrivee
echo 'write_enable=YES' >> $USER_CONFIG_DIR/$nom.conf #droit d'ecriture
echo 'anon_upload_enable=YES' >> $USER_CONFIG_DIR/$nom.conf #droit d'upload
echo 'anon_mkdir_write_enable=YES' >> $USER_CONFIG_DIR/$nom.conf #droit de creer des repertoires
echo 'anon_other_write_enable=YES' >> $USER_CONFIG_DIR/$nom.conf
echo 'hide_file=(none)' >> $USER_CONFIG_DIR/$nom.conf
echo 'force_dot_files=YES' >> $USER_CONFIG_DIR/$nom.conf
echo '' >> $USER_CONFIG_DIR/$nom.conf #On laisse une ligne vide
fonction_mysql_conf
}
fonction_test_pass() {
echo "$0: Verfication du password "
if [ "$pass" = "$pass2" ]; then
{
fonction_create_dir
}
else
{
echo "$0: Attention : Les deux mots de passes ne sont pas identiques"
echo "$0: ## Annulation ... ##"
fonction_first_menu
}
fi
}
fonction_create_user(){
# creation du user (le programme s'arrete par securite si le user existe deja )
/usr/sbin/useradd $nom -p `perl -e "print crypt('$pass',pwet)"` -d /$DOSSIER/$DOMAINE -m -s /bin/bash
if [ $? -ne 0 ]; then
{
echo "$0: L'utilisateur $nom existe deja , operation annulee !"
fonction_first_menu
}
else
{
echo "$0: Utilisateur $nom cree\n"
fonction_test_pass
}
fi
}
fonction_menu(){
echo -n "Ip locale : "
read IP
echo -n "Nom d'utilisateur : "
read nom
echo -n "Nom de domaine (sans les www) : "
read DOMAINE
echo -n "Mot de passe : "
read pass
echo -n "Mot de passe (le retour) : "
read pass2
echo "#####################################"
fonction_create_user
}
fonction_first_menu(){
echo "'$0': Menu :"
echo ''
echo ' ---'
echo ''
echo '1.Creer un vHost.'
echo '2.Quitter'
echo ''
echo -n 'Votre choix ( 1 - 2) :'
read choix
if [ "$choix" = "1" ]; then
{
fonction_menu
}
else
{
exit 0
}
fi
}
fonction_first_menu
|
Linux is not just an Os but is the future of the humanity !
- Citation ubuntu : "... You are encorouraged and legally entiltled to copy, reinstall, modify and redistribute this CD ..." Yeaaah !! Le libre !
- Si Billou à inventer crosoft et windaube alors le Manchot a inventer Billou (meme si il l'a rater ).
- La connerie n'est pas un virus mais elle se propage a la meme vitesse.
Citation : AlertAttention, Votre windows n'a pas planter depuis plus d'1h,
-Windows va maintenant effectuer un plantage de routine.
-FATALERROR
|