web-dev-qa-db-fra.com

un scénario qui représente vsftpd

J'ai téléchargé vsftpd, installé et configuré sur la base de ce lien Comment configurer un serveur FTP dans Ubuntu Linux Sur mon Ubuntu 12.04. Mais la question est de savoir comment tester cela?

Je veux apprendre à utiliser vsftpd et je suis à la recherche d'un scénario graphique simple étape par étape pour l'apprendre. Comme un scénario qui inclut le client et le serveur en utilisant la boîte virtuelle ?

Comment télécharger un fichier depuis Ubuntu_2 dans Ubuntu_1. Quels sont les deux OS virtuels dans la boîte virtuelle

5

Du côté serveur

  1. Vérifier l'état du service

    Sudo service vsftpd status
    
  2. Vérifiez ses processus en cours

    ps ax | grep vsftpd
    

    (Commande pour: lister tous les processus puis filtrer la sortie de la ligne vsftpd)

    ou vous pouvez utiliser une boucle pour surveiller ses processus:

    while sleep 1 ; do clear ; ps ax | grep vsftpd ; done
    

    (Commande pour: attendre 1 seconde, effacer l'écran Shell, répertorier tous les processus, puis filtrer la sortie pour la ligne vsftpd, boucler à nouveau car le sommeil revient toujours avec succès)

  3. Vérifier l'état du port lié au processus vsftpd

    netstat -lnp | grep vsftpd
    

    (Commande pour: répertorier tous les ports d'écoute avec le numéro de port et l'ID de processus (PID) le possédant, puis filtrer la sortie pour la ligne vsftpd)

  4. Surveiller le journal du serveur (tail avec -f pour suivre les mises à jour des journaux et surveiller vsftpd)

    $ tail -f /var/log/vsftpd.log
    Fri Apr 25 18:43:28 2014 [pid 2026] CONNECT: Client "127.0.0.1"
    Fri Apr 25 18:45:01 2014 [pid 2025] [sneetsher] OK LOGIN: Client "127.0.0.1"
    

Côté client

(note: je les lance depuis le serveur juste pour faire des exemples, je préfère qu'un autre hôte vérifie les paramètres du pare-feu ...)

  1. ftp commande avec -v option détaillée pour afficher toutes les réponses du serveur distant)

    $ ftp -v localhost
    Connected to localhost.
    220 (vsFTPd 3.0.2)
    Name (localhost:sneetsher):      
    331 Please specify the password.
    Password:
    230 Login successful.
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp> 
    
  2. FileZilla. Il a un journal très détaillé, mais il envoie quelques commandes en fonction de paramètres qui ne correspondent pas toujours à ce que vous voulez.

    Status: Resolving address of localhost
    Status: Connecting to 127.0.0.1:21...
    Status: Connection established, waiting for welcome message...
    Response:   220 (vsFTPd 3.0.2)
    Command:    USER sneetsher
    Response:   331 Please specify the password.
    Command:    PASS ********
    Response:   230 Login successful.
    Command:    SYST
    Response:   215 UNIX Type: L8
    Command:    FEAT
    Response:   211-Features:
    Response:    EPRT
    Response:    EPSV
    Response:    MDTM
    Response:    PASV
    Response:    REST STREAM
    Response:    SIZE
    Response:    TVFS
    Response:    UTF8
    Response:   211 End
    Command:    OPTS UTF8 ON
    Response:   200 Always in UTF8 mode.
    Status: Connected
    Status: Retrieving directory listing...
    Command:    PWD
    Response:   257 "/home/sneetsher"
    Command:    TYPE I
    Response:   200 Switching to Binary mode.
    Command:    PASV
    Response:   227 Entering Passive Mode (127,0,0,1,159,231).
    Command:    LIST
    Response:   150 Here comes the directory listing.
    Response:   226 Directory send OK.
    Status: Calculating timezone offset of server...
    Command:    MDTM 0000_12.04~
    Response:   213 20140208184211
    Status: Timezone offsets: Server: 0 seconds. Local: 0 seconds. Difference: 0 seconds.
    Status: Directory listing successful
    ...
    Status: Sending keep-alive command
    Command:    TYPE I
    Response:   200 Switching to Binary mode.
    

Flux de travail de test possible

  1. Côté serveur: après avoir modifié vsftpd.conf, redémarrage du service (pas besoin de redémarrer l'invité VBox)

    Sudo service vsftpd restart
    
  2. Côté client: il est possible d'écrire des scripts client FTP (tests de routine) en utilisant yafc. Exemple pour télécharger un dossier:

    #!/bin/bash
    yafc <<**
    open ftp://username:password@hostname
    put -f -r folder
    close
    **
    exit 0
    

    ou en utilisant ftp:

    #!/bin/sh
    Host='ftp.users.qwest.net'
    USER='yourid'
            PASSWD='yourpw'
    FILE='file.txt'
    
    ftp -n $Host <<END_SCRIPT
    quote USER $USER
    quote PASS $PASSWD
    put $FILE
    quit
    END_SCRIPT
    exit 0
    

Serveur/client sur les invités VirtualBox

  • Le client doit être dans le même NAT réseau, réseau interne avec serveur.

  • Ou si le serveur dispose d'un adaptateur ponté, le client peut être défini avec NAT, NAT Network, Bridged Adapter.

Références:

6
user.dz

Vous pouvez tester le serveur VSFTPD par les 3 méthodes suivantes:

  1. Sur la machine Ubuntu (sur laquelle vous avez installé le serveur VSFTPD), ouvrez le terminal (Ctrl + Alt + T) et tapez 'ftp localhost'. Entrez le nom et le mot de passe lorsque vous y êtes invité. En cas de succès, vous entrerez dans l'invite ftp>.

    Référez-vous: https://help.ubuntu.com/community/vsftpd

  2. Test de l'état de VSFTPD -> Exécutez "netstat -a | grep ftp" sur votre serveur. Si VSFTPD n'était pas en cours d'exécution, il n'y aurait aucune sortie du tout.

    Vérifiez ce lien: http://www.informit.com/articles/article.aspx?p=378136&seqNum=6

  3. Depuis une autre machine Ubuntu (considérez-le comme un client FTP), envoyez ou recevez des fichiers vers/depuis votre serveur FTP (c'est-à-dire la machine sur laquelle VSFTPD est installé).

    Pour cela, vous devrez vous connecter au serveur FTP depuis une autre machine ubuntu.

    Consultez la liste des commandes FTP sur linux dans ce lien: http://linux.about.com/od/commands/a/blcmdl1_ftpx.htm

3
user223882

Sur le serveur ubuntu, ouvrez le terminal et tapez:

Sudo service vsftpd status

si la sortie est similaire (sauf pour le processus pid):

vsftpd start/running, process 6582

alors le serveur fonctionne.

Depuis un autre ordinateur pour vérifier si le serveur est actif sur le port par défaut (21):

telnet ip_server_ftp 21

la sortie sera renvoyée si la connexion a été

2
girardengo
0