Bonjour à tous
Suite à l'installation de ProFTPd sur un serveur dédié ubuntu, je cherche a créer deux ftp public pour deux domaines différents.
Mon ojectif est de permettre le téléchargement de fichiers pour les sous domaines et domaines suivants (pris pour l'exemple) :
download.monsite-a.fr
ftp.monsite-b.fr
Pour cela, après lecture de plusieurs documents, j'ai créé les répertoires suivants en sudoer :
et j'ai réalisé les fichiers suivants :sudo mkdir /var/ftp/site-a/
sudo mkdir /var/ftp/site-b/
proftpd.conf
vhost.conf
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 # Nom du serveur FTP des utilisateurs locaux. ServerName "monsite FTP" # Port d'écoute pour le serveur FTP des utilisateurs locaux. # le port 21 sera réservé pour les connections anonymous. Port 2111 # email de l'administrateur ProFTPd. ServerAdmin postmaster@monsite-a.fr # "standalone" signifie que c'est moi qui démarre le serveur par la commande /etc/init.d/proftpd start # "inetd" signifie que c'est par le meta-deamon xinetd qu'il sera démarré. #(bien mettre inetd meme si le meta-deamon s'appel xinetd). ServerType standalone # Est utile que si l'on veut utiliser des VirtualHosts, sinon ce n'est pas la peine de l'indiquer. DefaultServer on # Autorise les clients à reprendre les Uploads vers vous. # A déactiver si on n'autorise pas les Uploads. AllowStoreRestart off # Autorise la reprise des téléchargements. AllowRetrieveRestart on # Pour éviter d'être vulnérable aux attaques de type DoS laissez le nombre de processus enfants à 30 maximum. # Ce paramètre n'est valable que si vous fonctionnez en mode "standalone" # Si vous êtes en mode "inetd" vous devrez configurer le nombre de processus enfants maximum dans le server xinetd. MaxInstances 30 # Permet au serveur de rechercher lui même dans /etc/passwd la validité des # mots de passe (Utile pour NIS). Laisser par défaut sur "off". PersistentPasswd off # Active un arrangement des lignes pour plus de compatibilité. MultilineRFC2228 on # Evite le blocage de ProFTPd pendant le temps de réponse de résolution DNS. UseReverseDNS off # Option de logging pour cette zone vers ce fichier. TransferLog /var/log/proftpd/proftpd.log # Formats des logs. LogFormat default "%h %l %u %t \"%r\" %s %b" LogFormat auth "%v [%P] %h %t \"%r\" %s" LogFormat write "%h %l %u %t \"%r\" %s %b" # Permet de chrooter les utilisateurs FTP locaux dans leur home directory. DefaultRoot ~ # Tout ce qui est défini dans <Global> s'applique à l'ensemble du contexte de configuration, même VirtualHost. <Global> # Règle sous quel User et Group sera lancer le serveur FTP. User nobody Group nogroup # Umask 022 is a good standard umask to prevent new dirs and files # from being group and world writable. Umask 022 022 # Définit la plage des ports passifs que ProFTPd utilisera pour répondre aux clients. PassivePorts 49152 65534 # Enregistre les accès sur les fichiers et répertoires. ExtendedLog /var/log/proftpd/access.log WRITE,READ write # Enregistre tout les logins. ExtendedLog /var/log/proftpd/auth.log AUTH auth # Force l'option de directory listings (NLST, LIST et STAT) à -l ListOptions "-l" # Autorise le remplacement d'anciens fichiers par des nouveaux, si l'utilisateur à le droit en écriture bien sur. <Directory /> AllowOverwrite on </Directory> <Limit ALL> DenyAll </Limit> # Permet de ne pas donner d'informations sur le serveur. DeferWelcome off # On indique au serveur FTP d'utiliser ou non le fichier /etc/ftpusers pour savoir qui a le droit de se connecter. # Par défaut ce fichier est utilisé par ProFTPd. UseFtpUsers on # Le premier message qui sera affiché quand quelqu'un se connectera ServerIdent on "Server FTP ready" # Message d'accueil AccessGrantMsg "Bienvenue %u sur monsite.fr" # Autorise le téléchargement ou upload distant directement depuis un autre serveur FTP sans passer par le PC de l'user. AllowForeignAddress on # Permet de déconnecter le client au bout de "x" secondes : # # S'il n'y a aucune activité de son coté. TimeoutIdle 600 # S'il n'y a aucune activité entre la saisie du login et du passwd. TimeoutLogin 300 # S'il n'opère aucun transfert. TimeoutNoTransfer 300 # S'il a stoppé le transfert. TimeoutStalled 3600 # Autorise seulement les noms de fichiers normaux (caractères alphanumérique) et non des codes shell. PathAllowFilter "[a-zA-Z0-9]" # Refuse l'upload de fichiers .ftpaccess ou .htaccess PathDenyFilter "(\.ftp)|(\.hta)[a-z]+$" # N'autorise pas de passer des printf-Formats. AllowFilter "^[a-zA-Z0-9@~ /,_.-]*$" DenyFilter "%" # Cache les liens symboliques. ShowSymlinks off </Global> # Permet de prendre en compte le fichier suivant. Include /etc/proftpd/vhost.conf
Mais après redémarrage du serveur, je constate que je me fais refuser l'accès.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 # VirtualHost Réservé aux Anonymous. <VirtualHost download.monsite-a.fr> # Nom du serveur FTP Réservé aux Anonymous. ServerName "Server FTP Public" Port 21 Umask 022 # Option de logging pour cette zone vers ce fichier. TransferLog /var/log/proftpd/site-a-anonymous.log # Permet de ne pas vérifier l'identité du login amonymous. IdentLookups off # Refuse la connexion des Utilisateurs disposant d'un login, pour autoriser seulement les connexions Amonymous. <Limit LOGIN> DenyAll </Limit> # Limite le nombre des clients différents qui peuvent se connecter. MaxClients 10 "Sorry, max %m users -- try again later" AccessGrantMsg "Bienvenue %u sur le Serveur FTP Public" <Anonymous /var/ftp/site-a/> User ftp Group ftp # Fait d'anonymous un alias à ftp, en se logant sous anonymous, ils sont appelés ftp. UserAlias anonymous ftp DirFakeUser on ftp DirFakeGroup on ftp # Ignore la vérification d'un shell pour anonymous. RequireValidShell off # Permet de ne pas rechercher dans le système, le mot de passe. AnonRequirePassword off # Pour qu'un message soit affiché à la connexion vous pouvez créer un fichier 'welcome.msg' à la racine (ici ~ftp/pub). DisplayLogin welcome.msg # Pour signaler que le client est remonté à la racine vous pouvez créer un fichier '.message' qui s'affichera. DisplayFirstChdir message # Permet de cacher tous les fichiers appartenant à "root". HideUser root HideGroup root # Limite la bande passante à 30K/s pour les commandes suivantes. # Ne limite pas la bande passante pour des fichiers inférieur ou égal à 1000KB. TransferRate APPE,STOR,RETR,STOU 30.0:1024000 <Limit LOGIN> AllowAll </Limit> <Limit READ> AllowAll </Limit> # Limite les commandes suivantes : # De renommer, de supprimer des fichiers des répertoires, changer les permissions, d'écrire ... # /!\ A décommenter après les tests # <Limit RNFR RNTO DELE RMD CHMOD SITE_CHMOD WRITE SITE XCUP XRMD XPWD> # DenyAll # </Limit> </Anonymous> </VirtualHost> # VirtualHost Réservé aux Anonymous. <VirtualHost ftp.monsite-b.fr> # Nom du serveur FTP Réservé aux Anonymous. ServerName "Server FTP Public" Port 21 Umask 022 # Option de logging pour cette zone vers ce fichier. TransferLog /var/log/proftpd/site-b-anonymous.log # Permet de ne pas vérifier l'identité du login amonymous. IdentLookups off # Refuse la connexion des Utilisateurs disposant d'un login, pour autoriser seulement les connexions Amonymous. <Limit LOGIN> DenyAll </Limit> # Limite le nombre des clients différents qui peuvent se connecter. MaxClients 10 "Sorry, max %m users -- try again later" AccessGrantMsg "Bienvenue %u sur le Serveur FTP Public" <Anonymous /var/ftp/site-b/> User ftp Group ftp # Fait d'anonymous un alias à ftp, en se logant sous anonymous, ils sont appelés ftp. UserAlias anonymous ftp DirFakeUser on ftp DirFakeGroup on ftp # Ignore la vérification d'un shell pour anonymous. RequireValidShell off # Permet de ne pas rechercher dans le système, le mot de passe. AnonRequirePassword off # Pour qu'un message soit affiché à la connexion vous pouvez créer un fichier 'welcome.msg' à la racine (ici ~ftp/pub). DisplayLogin welcome.msg # Pour signaler que le client est remonté à la racine vous pouvez créer un fichier '.message' qui s'affichera. DisplayFirstChdir message # Permet de cacher tous les fichiers appartenant à "root". HideUser root HideGroup root # Limite la bande passante à 30K/s pour les commandes suivantes. # Ne limite pas la bande passante pour des fichiers inférieur ou égal à 1000KB. TransferRate APPE,STOR,RETR,STOU 30.0:1024000 <Limit LOGIN> AllowAll </Limit> <Limit READ> AllowAll </Limit> # Limite les commandes suivantes : # De renommer, de supprimer des fichiers des répertoires, changer les permissions, d'écrire ... # /!\ A décommenter après les tests # <Limit RNFR RNTO DELE RMD CHMOD SITE_CHMOD WRITE SITE XCUP XRMD XPWD> # DenyAll # </Limit> </Anonymous> </VirtualHost>
Quelqu'un aurait-il une idée pour résoudre ce problème ?550 PWD : permission denied
Merci d'avance![]()
Partager