OVH Community, votre nouvel espace communautaire.

Ajout user ncftpd


ps
23/02/2004, 18h24
c dommage d'abandonner comme ça alors que le soucis doit être minime

faut percévérer y a plein de choses géniales à faire!!

En tout cas si tu te cherches des infos va sur le site de ncftp dans la FAQ


Marquis
23/02/2004, 18h18
Laisse tomber, c bcp trop long tout ça. J'ai créé en 1 min un accès FTP sur un serveur win et je me pencherai sur linux quand ca sera plus user friendly.

Merci quand meme !

ps
23/02/2004, 17h32
en complément les raisons possibles liés à ton pb:

* User has an illegal shell;
Fix: Add the user's shell to /etc/shells, or change the user's shell. Then restart NcFTPd.
* User is blacklisted;
Fix: Remove the username from /etc/ftpusers. Remember, this file is used to block usernames, not allow them! Then restart NcFTPd.
* User’s home directory doesn’t exist;
* The file /etc/nologin or /etc/nologin.ftp is present.
* User had UID 0 but is not “root”.
Fix: If you really want to allow that, you can use the allow-u0 general.cf option. Then restart NcFTPd.
* Server is full, no more users are allowed.

ps
23/02/2004, 17h20
il me semble que le résultat de tes commandes représente le contenu de ton répertoire et non pas ton répertoire. Je souhaite voir les permissions et groupe de ton user (à priori baboo)

la commande:
ls -l /home | grep tonuser doit retourner un résultat du type
ls -l /home |grep toto
drwx--x--- 9 toto users 4096 fev 23 15:59 toto

==> ça veut dire liste /home et donne moi les résultats qui contiennent le mot toto

il y a un moyen de savoir ou est le pb en relancant ncftpd en mode verbose

vérifie ou est lancé ncftpd
si c'est dans /etc/inittab

copie /etc/inittab au cas ou....
cp /etc/inittab /etc/inittab.old

edite le fichier /etc/inittab et remplace la ligne contenant
/usr/local/etc/ncftpd/ncftpd -q /usr/local/etc/ncftpd/general.cf /usr/local/etc/ncftpd/domain.cf
par
/usr/local/etc/ncftpd/ncftpd -v /usr/local/etc/ncftpd/general.cf /usr/local/etc/ncftpd/domain.cf

relance ensuite le serveur ftp
connecte toi en ftp avec ton user
ftp localhost
et post les retours

si ce n'est pas dans /etc/inittab
tu dois avoir un fichier nommé ncftpd_restart à priori dans /usr/local/sbin/restart_ncftpd

fait une copie du fichier au cas ou...
édite le et met la valeur de la variable NCFTPD_VERBOSITY à
NCFTPD_VERBOSITY=-v

relance ensuite le serveur ftp
connecte toi en ftp avec ton user
ftp localhost
et post les retours

Marquis
23/02/2004, 16h21
drwxr-xr-x 2 baboo users 4096 fév 23 14:23 cgi-bin
drwxr-xr-x 2 baboo users 4096 fév 23 14:23 www


C'est ce que j'ai en retour

ps
23/02/2004, 16h08
excuse je voulais dire ls -l /home | grep tonuser, ça ne m'aide pas ce que je t'ai demandé précédemment

Marquis
23/02/2004, 16h03
psl écrivait :
[B]ok
Peux tu préciser toutes les manipes que t'as faites, faire un
ls -l /home/detonuser
total 8
drwxr-xr-x 2 baboo users 4096 fév 23 14:23 cgi-bin
drwxr-xr-x 2 baboo users 4096 fév 23 14:23 www


t'as modifié le fichier de conf de ncftpd?
Non je n'y ai pas touché.

ps
23/02/2004, 15h36
ok
Peux tu préciser toutes les manipes que t'as faites, faire un
ls -l /home/detonuser
t'as modifié le fichier de conf de ncftpd?
et éventuellement les erreurs que t'as eu lors de tes manipes

Marquis
23/02/2004, 15h22
oui

ps
23/02/2004, 15h06
as tu mis un passwd à ton user (tu ne l'as pas mentionné dans ton post)?

Marquis
23/02/2004, 14h50
Ok c bon j'ai créé le user en lui affectant un home directory mais lorsque je me connecte en FTP, j'ai l'erreur suivante:

451 Login failed, can't set startup dir to your home directory: Permission denied.

Le répertoire en question est pourtant mis en 755. Que faut il modifier d'autre ?

Merci !

absolom
23/02/2004, 11h05
C'est marqué juste au dessus : useradd ...
De plus, tu as du recevoir un mail lorsque tu as acheté ton dédié, expliqant très bien les commandes de bases...(Fichier Faq-sd-20020124.txt)
Lis le, il te sera très utile...

Marquis
23/02/2004, 09h46
Merci beaucoup mais comment fait on pour créer un user linux ?

ps
23/02/2004, 09h03
si ton ftp fonctionne déjà tu n'as qu'a simplement à rajouter un user avec la commande

useradd le_nom_de_ton_user

Plusieurs options courantes sont possibles:

-g tu précises un nom de groupe
-d tu précises le home directory
-s pour préciser le shell. Si ton user ne doit pas avoir de shell met le à /bin/false

ex:

useradd -g tata -d /home/toto -s /bin/false toto

tu viens de rajouter le user toto appartenant au groupe tata, son directory est /home/toto et il n'a pas de connection shell

Maintenant il faut lui donner un password. Utilise la commande
passwd le_nom_de_ton_user

ça doit te donner

passwd toto
Changing password for user toto.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.

Voici un script perl en dessous pour générer un mot de passe aléatoire de 8 caractères (lettre, chiffre, lettre majuscules) en enlevant les caractères ambigus qui pourraient être confondus:

#!/usr/bin/perl -w

###############################
# Generateur de mots de passe #
###############################
#Initialisations
@lettres = ( 'a'..'z' );
@lettresMaj = ( 'A'..'Z' );
@chiffres= ( 1..9 );
@choice = ( 1,2,3 );
srand;
$res = "";

for( $i=0; $i<8; $i++ )
{
$nb = $choice[int rand(3)];#Je choisis aleatoirement un nombre entre 1 et 3

#En fonction du resultat, j'assigne mes variables @tab et $size
#@tab sera soit le tableau de lettres, de chiffres ou de lettresMaj
#$size est la taille du tableau associe
if ($nb == 1){
@tab = @lettres;
$size = 26;
}
elsif ($nb == 2){
@tab = @chiffres;
$size = 9;
}
else {
@tab = @lettresMaj;
$size = 26;
}
$l = $tab[int rand($size)]; #generation aleatoire du caractere

if ($l =~ /^[01loOI]/){ #si le caractere genere est ambigu, je decremente le compteur de la boucle
$i --;
}
else { #sinon je concatene avec la chaine de caractere $res
$res .= $l;
}
}

print "$res\n";

Marquis
23/02/2004, 08h00
Merci pour votre réponse mais je suis nul en linux. Qui pourrait me donner la liste des commandes pour exécuter les opérations suivantes:

- créer un user linux
- créer un group ncftpd avec des droits
- ajouter le nouveau user linux dans le groupe ncftpd

Merci!

A+

OVH
21/02/2004, 12h26
ncftpd (et comme tous les serveurs ftp) utilisent la base des utilisateurs du systeme. C'est à dire que lorsque vous ajoutez un nouveau utilisateurs avec la commande adduser il a automatiquement l'accès via le serveur ftp (ncftpd donc) sur son espace.

Marquis
20/02/2004, 20h45
Salut !

Comment ajouter simplement un user FTP à ncftpd ? Peut on administrer Ncftpd à partir de Webmin ?

A+

Marquis