Monday, July 9, 2012

Tout à propos de FTP



-Mettre en place un ftp:

Eh bien, puisque beaucoup d'entre nous ont toujours demandé cela, c'est ici. Long et étiré. En outre, avant de tenter cela, réaliser une chose; Vous devrez abandonner votre temps, d'effort, la bande passante, et de la sécurité d'avoir un serveur ftp de la qualité.
Cela étant dit, ici, il va. Tout d'abord, savoir si votre adresse IP (Internet Protocol) est statique (ne changeant pas) ou dynamique (changements chaque fois que vous ouvrez une session sur). Pour ce faire, d'abord tenir compte du fait si vous avez un modem commuté. Si vous le faites, il ya des chances sur les 999 999 sur 1 000 000 que votre adresse IP est dynamique. Pour rendre statique, juste aller à un endroit comme h * tp :/ / www.myftp.org/~~V pour vous inscrire à une adresse IP statique.

Vous devrez ensuite obtenir votre adresse IP. Cela peut être fait en faisant cela:
Aller dans Démarrer -> Exécuter -> winipcfg ou www.ask.com et en demandant «Quel est mon IP?

Après cela, vous aurez besoin de télécharger un client serveur FTP. Personnellement, je vous recommande G6 FTP Server, Serv-U FTPor Bullitproof v2.15 tous les trois qui sont extrêmement fiables, et la norme du monde ftp.
Vous pouvez les télécharger sur ce site: h * tp :/ / www.liaokai.com / softw_en / d_index.htm

Tout d'abord, vous aurez à configurer votre ftp. Pour ce guide, je vais utiliser, étape par étape les instructions pour G6. Tout d'abord, vous aurez à aller dans "Configuration -> Général". De là, le type dans votre port (valeur par défaut est 21) #. Je recommande quelque chose d'unique, ou quelque chose un peu plus grand (ex: 3069). Si vous voulez, vérifiez le nombre d'utilisateurs max (cela fixe le montant des utilisateurs simultanés au maximum sur votre serveur à la fois d'effectuer des actions - Le plus sur à la fois, le ralentissement de la connexion et vice-versa).

Les options ci-dessous sont alors chooseable:
-Lancement de fenêtres
-Activer le serveur FTP sur Start-up
Mettez-dans le bac au démarrage
-Permettre plusieurs instances
-Show "Chargement en cours ..." état au démarrage
-Balayage d'entraînement (s) au démarrage
Confirmez-sortie

Vous pouvez faire ce que vous voulez avec ces derniers, car ils sont assez explicites. La fonction de commande de balayage est agréable, comme c'est le 2ème et la dernière option. De là, cliquez sur le texte des 'options' sur la colonne de gauche.

Pour protéger votre serveur, vous devriez vérifier 'login vérifier »et« mot de passe vérifier', 'Afficher le chemin relatif (un must!) », Et toutes les autres options que vous sentez que vous aurez besoin. Après cela, cliquez sur le «avancé» du texte dans la colonne de gauche. Vous devez ensuite quitter la taille du tampon sur le défaut (sauf si bien sûr vous savez ce que vous faites), puis laissez le type de FTP que vous désirez.

Transfert et le téléchargement est généralement bon, mais c'est à vous si vous voulez autoriser les téléchargements et / ou des téléchargements. Pour la priorité du serveur, qui va déterminer la quantité de mémoire conventionnelle sera utilisé et combien «effort» sera entrent dans la fabrication de votre serveur de fonctionner sans heurts.

Anti-martelage est aussi bonne, car elle empêche les gens de ralentir votre vitesse. De là, cliquez sur «Connexion Options 'de la colonne de gauche. Si vous souhaitez voir et enregistrer chaque commande unique et encombrer votre écran, laissez les paramètres par défaut.

Mais, si vous voulez voir ce qui se passe avec le plus bas possible l'espace prises, cliquez sur «Écran» dans le haut de colonne. Vous devez ensuite cocher «Se connecter connexions réussies», et toutes les options dans le directry client, sauf des modifications de l'annuaire log '. Après cela, cliquez sur 'Ok' dans le coin en bas à gauche.

Vous aurez alors d'aller dans "Configuration -> Comptes d'utilisateurs" (ou ctrl & u). De là, vous devez cliquer sur la colonne la plus à droite, et faites un clic droit. Choisissez "Ajouter", et choisissez le nom d'utilisateur (s) que vous souhaitez aux gens d'avoir accès à.

Après avoir donné un nom (ex: themoonlanding), vous aurez à leur donner un mot de passe défini dans la colonne inférieure (ex: wasfaked). Pour le répertoire 'IP Accueil », (si vous avez enregistré avec un serveur statique, vérifier des Toutes les maisons d'IP. Si votre adresse IP est statique par défaut, choisissez votre adresse IP dans la liste. Vous aurez alors un clic droit dans le centre colonne, et choisissez «Ajouter».

De là, vous aurez à définir le répertoire que vous voulez les gens à avoir accès à. Après avoir choisi le répertoire, je vous suggère de choisir les options 'read', 'liste', et des Sous-dossiers, à moins que bien sûr vous savez ce que vous faites. Après cela, faire un 'upload' dossier dans le répertoire, et choisissez «ajouter» dans ce dossier séparément à la colonne du centre. Choisissez «écrire», «append», «faire», «liste», et des sous-répertoires. Cela leur permettra de télécharger uniquement à des dossiers spécifiques (votre dossier de téléchargement).

Maintenant, cliquez sur «Divers» de la colonne de gauche. Choisissez l'option «activer le compte", votre délai d'attente (le temps qu'il faut pour les gens de rester inactif avant que vous automatiquement le coup d'envoi), le nombre maximal d'utilisateurs pour ce nom, le nombre maximal de connexions autorisées en même temps pour une adresse ip, montrent chemin d'accès relatif (un must!), et toutes les autres choses à fond, vous aimeriez avoir. Maintenant, cliquez sur 'Ok'.
** ** Demandé


A partir de ce menu principal, cliquez sur l'icône petit gant de boxe dans le coin supérieur, et faites un clic droit et unchoose le hit-o-mètre pour les deux chargements et téléchargements (avec ce que vous pouvez surveiller l'activité IP). Maintenant cliquez sur le coup de foudre, et que votre serveur est maintenant opérationnel.

Poster vos infos ftp, comme ceci:

213.10.93.141 (ou autre chose, comme: 'f * p :/ / example.getmyip.com')

Utilisateur: *** (Le nom d'utilisateur du client)

Mot de passe: *** (Le mot de passe)

Port: *** (Le numéro de port que vous avez choisi)

Donc, faire un FTP et rejoindre la section FTP


Liste du contenu d'un serveur FTP:

Lister le contenu d'un FTP est très simple.
Vous aurez besoin de FTP Content Maker, qui peut être téléchargé à partir d'ici:
ht * p :/ / www.etplanet.com / download / application / FTP 20Content%%% 201.02.zip 20Maker

1. Mettez dans le IP du serveur. Ne mettez pas "ftp://" ou un "/" car il ne fonctionnera pas si vous le faites.
2. Mettez dans le port. Si le port est le numéro par défaut, 21 ans, vous n'avez pas à y entrer.
3. Mettez le nom d'utilisateur et mot de passe dans les champs appropriés. Si la connexion est anonyme, vous n'avez pas à y entrer.
4. Si vous voulez à la liste d'un répertoire spécifique de la FTP, placez-le dans le champ du répertoire. Sinon, ne rien indiquer dans le champ du répertoire.
5. Cliquez sur "Prenez la liste!"
6. Après la liste a été prise, cliquez sur l'onglet Sortie UBB, et copier et coller à l'endroit où vous le voulez.


Si Content Maker FTP ne fonctionne pas, c'est probablement parce que le serveur n'utilise pas Serv-U Software.

Si vous obtenez ce message d'erreur:
StatusCode = 550
LastResponse était: «Impossible d'ouvrir le fichier local de test-ftp '
Erreur = 550 (Impossible d'ouvrir le fichier local de test-ftp)
Erreur = Impossible d'ouvrir le fichier local de test ftp = 550
Fermez et relancez Content Maker FTP, puis essayez à nouveau.




messages d'erreur:

110 Réponse à marqueur de redémarrage. Dans ce cas, le texte est exact et non laissée à la mise en oeuvre particulière, il faut lire: MARK yyyy = mmmm où yyyy est l'utilisateur le marqueur du flux de données, et le marqueur équivalent côté serveur mmmm (notez les espaces entre les marqueurs et "=") .
120 Service disponible dans nnn minutes.
125 Connexion de données déjà ouvert; début de transfert.
150 du statut du fichier correct; s'apprête à ouvrir de connexion de données.
200 Commande correct.
202 Commande non implémentée, ou superflue sur ce site.
211 Statut système, ou réponse d'aide système.
212 Statut de répertoire.
213 du statut du fichier.
214 Message d'aide. Sur la façon d'utiliser le serveur ou la signification d'un particulier non-commande standard. Cette réponse n'est utile que pour l'utilisateur humain.
215 Type de système NOM. Où NOM est un nom de système officiel de la liste dans le document Assigned Numbers.
220 Service disponible pour nouvel utilisateur.
221 Canal de contrôle fermé par le service. Déconnecté le cas échéant.
225 Canal de données ouvert; aucun transfert en cours.
226 Fermeture de connexion de données. Action du fichier requise réussie (par exemple, transfert de fichiers ou un fichier abort).
227 Entering Passive Mode (h1, h2, h3, h4, p1, p2).
230 L'utilisateur connecté, passez.
250 Service fichier correct, terminé.
257 "CHEMIN" créé.
331 Nom d'utilisateur correct, besoin de mot de passe.
332 Besoin compte pour la connexion.
350 Service fichier en attente d'informations complémentaires.
421 Trop d'utilisateurs connectés au même compte
425 Impossible d'ouvrir la connexion de données.
426 Connexion fermée, transfert interrompu.
450 Service fichier non pris. Fichier non disponible (par exemple, fichier occupé).
451 Action demandée abandonnée: erreur locale dans le traitement.
452 Action non effectuée. Espace de stockage insuffisant dans le système.
500 Erreur de syntaxe, commande non reconnue. Cela peut inclure des erreurs telles que la ligne de commande trop longue.
501 Erreur de syntaxe dans les paramètres ou arguments.
502 Commande non implémentée.
503 Mauvaise séquence de commandes.
504 Commande non implémentée pour ce paramètre.
530 Non connecté po
532 Besoin compte pour le stockage de fichiers.
550 Action non effectuée. Fichier non disponible (par exemple, fichier non trouvé, pas d'accès).
551 Action demandée abandonnée: inconnu type de page.
552 Service fichier interrompu. De ressources de stockage (pour le répertoire ou compte courant).
553 Action non effectuée. Nom de fichier non autorisé.


 FTP actif vs passif FTP, une explication définitive

Introduction
L'une des questions les plus fréquemment observés lorsqu'ils traitent avec des pare-feu et d'autres problèmes de connectivité Internet est la différence entre le FTP actif et passif et la meilleure façon de soutenir une ou l'autre d'entre eux. Espérons que le texte qui suit vous aidera à éclaircir quelque peu la confusion sur la façon de soutenir les FTP dans un environnement pare-feu.

Cela peut ne pas être l'explication définitive, comme le prétend le titre, cependant, j'ai entendu des commentaires assez bon et vu ce document lié dans des endroits assez pour savoir que quelques personnes ont trouvé pour être utile. Je suis toujours à la recherche des moyens d'améliorer les choses si, et si vous trouvez quelque chose qui n'est pas assez claire ou a besoin de plus amples explications, s'il vous plaît faites le moi savoir! Les ajouts récents à ce document comprennent les exemples de deux sessions actives et passives de commande FTP en ligne. Ces exemples de session devrait contribuer à rendre les choses un peu plus clair. Ils fournissent également une belle image dans ce qui se passe dans les coulisses lors d'une session FTP. Maintenant, à l'information ...



Les principes de base
FTP est un service TCP basé exclusivement. Il n'ya pas de composante UDP vers FTP. FTP est un service inhabituel en ce qu'il utilise deux ports, le port A 'data' et une 'commande' de port (également connu sous le nom du port de contrôle). Traditionnellement ce sont le port 21 pour le port de commande et le port 20 pour le port de données. La confusion commence cependant, lorsque nous constatons que selon le mode, le port de données n'est pas toujours sur le port 20.



Active FTP
En mode actif FTP le client se connecte à partir d'un port aléatoire non privilégié (N> 1024) au port de commande du serveur FTP, le port 21. Ensuite, le client commence à écouter sur le port N +1 et envoie la commande FTP PORT N +1 sur le serveur FTP. Le serveur va alors se connecter à nouveau spécifié le client sur le port de données à partir de son port de données locale, qui est le port 20.

Du point de vue du pare-feu côté serveur, pour soutenir le mode FTP actif des canaux de communication suivants doivent être ouverts:

Serveur FTP sur le port 21 à partir de n'importe où (client initialise la connexion)
Serveur FTP sur le port 21 à ports> 1024 (Server répond au port de contrôle du client)
Serveur FTP sur le port 20 à ports> 1024 (serveur initialise la connexion de données au client de port de données)
Serveur FTP sur le port 20 à partir de ports> 1024 (Le client envoie les accusés de réception de données du serveur de port)


Dans l'étape 1, en contact avec le client du port de commande du port de commande du serveur et envoie la commande PORT 1027. Le serveur envoie alors un ACK en retour au port de commande du client à l'étape 2. Dans l'étape 3 du serveur établit une connexion sur son port de données locale au port de données du client spécifié précédemment. Enfin, le client envoie un ACK en retour, comme indiqué à l'étape 4.

Le principal problème avec le mode actif FTP tombe effectivement sur le côté client. Le client FTP ne font pas le lien réel pour le port de données du serveur - il dit simplement le serveur sur quel port il est à l'écoute sur le serveur et se connecte à un port spécifique sur le client. Du pare-feu côté client, cela semble être un système à l'extérieur de lancer une connexion à un client interne - quelque chose qui est généralement bloqué.



Actif Exemple FTP
Voici un exemple réel d'une session FTP actif. Les seules choses qui ont été modifiées sont les noms des serveurs, les adresses IP et noms d'utilisateur. Dans cet exemple une session FTP est initiée à partir testbox1.slacksite.com (192.168.150.80), une boîte de linux qui exécute le client FTP standard ligne de commande, à testbox2.slacksite.com (192.168.150.90), une boîte de linux en cours d'exécution ProFTPd 1.2. 2RC2. Le débogage (-d) du pavillon est utilisé avec le client FTP pour montrer ce qui se passe dans les coulisses. Tout dans le rouge est la sortie de débogage qui montre les commandes réelles FTP envoyées au serveur et les réponses générées à partir de ces commandes. Sortie du serveur normal est affiché en noir, et l'entrée d'utilisateur est en gras.

Il ya quelques petites choses intéressantes à prendre en considération à propos de cette boîte de dialogue. Notez que lorsque la commande PORT est délivré, il spécifie un port sur le client (192.168.150.80) du système, plutôt que le serveur. Nous allons voir le comportement inverse lorsque nous utilisons le mode FTP passif. Alors que nous sommes sur le sujet, une note rapide sur le format de la commande PORT. Comme vous pouvez le voir dans l'exemple ci-dessous, il est formaté comme une série de six nombres séparés par des virgules. Les quatre premiers octets de l'adresse IP sont alors que les deux deuxièmes octets comprennent le port qui sera utilisé pour la connexion de données. Pour trouver le port actuel de multiplier le cinquième octet 256 et puis ajoutez le sixième octet au total. Ainsi dans l'exemple ci-dessous le numéro de port est ((14 * 256) + 178), ou 3762. Une vérification rapide avec netstat doit confirmer cette information.

testbox1: {/ home / pt / slacker / public_html}% ftp-d testbox2
Connecté à testbox2.slacksite.com.
220 testbox2.slacksite.com serveur FTP prêt.
Nom (testbox2: slacker): slacker
---> USER slacker
331 Password required for slacker.
Mot de passe: TmpPass
---> PASS XXXX
230 slacker utilisateur connecté po
---> SYST
215 UNIX Type: L8
Type de système à distance est UNIX.
En utilisant le mode binaire pour transférer des fichiers.
ftp> ls
ftp:setsockopt (ignoré): Permission denied
---> PORT 192,168,150,80,14,178
200 PORT command successful.
---> LISTE
150 Ouverture de mode ASCII connexion de données pour la liste des fichiers.
drwx ------ 3 104 utilisateurs fainéant 27 juillet public_html 01:45
226 Transfert compléter.
ftp> quit
---> QUIT
221 Goodbye.


Le mode FTP passif
Afin de résoudre le problème du serveur qui initie la connexion au client une méthode différente pour les connexions FTP a été développé. Cela a été connu sous le nom en mode passif, ou PASV, après la commande utilisée par le client de dire au serveur, il est en mode passif.

Dans le mode FTP passif le client initie deux connexions au serveur, la résolution du problème de pare-feu de filtrage de la connexion du port entrant des données au client à partir du serveur. Lors de l'ouverture d'une connexion FTP, le client ouvre deux ports aléatoires non privilégiés localement (N> 1024 et N +1). Les contacts portuaires premiers du serveur sur le port 21, mais au lieu de l'émission, puis une commande PORT et permettant au serveur de se connecter à son port de données, le client émet la commande PASV. Le résultat de ceci est que le serveur ouvre alors un port aléatoire non privilégié (P> 1024) et envoie la commande PORT P vers le client. Le client lance la connexion du port N +1 au port P sur le serveur pour transférer des données.

Du point de vue du pare-feu côté serveur, pour soutenir le mode FTP passif des canaux de communication suivants doivent être ouverts:

Serveur FTP sur le port 21 à partir de n'importe où (client initialise la connexion)
Serveur FTP sur le port 21 à ports> 1024 (Server répond au port de contrôle du client)
FTP serveur ports> 1024 depuis n'importe quel endroit (client initialise la connexion de données au port aléatoire spécifiée par le serveur)
FTP serveur ports> 1024 aux ports distants> 1024 (Server envoie les accusés de réception (et données) au port de données du client)



Dans l'étape 1, le client contacte le serveur sur le port de commande et les questions de la commande PASV. Le serveur répond alors à l'étape 2 avec le Port 2024, indiquant au client quel port il est à l'écoute pour la connexion de données. Dans l'étape 3 du client déclenche ensuite la connexion de données à partir de son port de données vers le port de serveur de données spécifié. Enfin, le serveur renvoie un accusé de réception à l'étape 4 au port de données du client.

Bien que le mode FTP passif résout bon nombre des problèmes du côté client, il ouvre toute une gamme de problèmes sur le côté serveur. Le plus gros problème est la nécessité de permettre à toute connexion à distance à haute ports numérotés sur le serveur. Heureusement, de nombreux démons FTP, y compris le populaire WU-FTPD permettre à l'administrateur de spécifier une plage de ports que le serveur FTP utilisent. Voir l'annexe 1 pour plus d'informations.

La deuxième question consiste à soutenir et dépannage des clients qui ne (ou pas) le support du mode passif. A titre d'exemple, la ligne de commande FTP utilitaire fourni avec Solaris ne supporte pas le mode passif, ce qui nécessite un client FTP tiers, tels que ncftp.

Avec la popularité massive du World Wide Web, beaucoup de gens préfèrent utiliser leur navigateur Web en tant que client FTP. La plupart des navigateurs ne supportent que le mode passif lors de l'accès URL ftp://. Cela peut être bon ou mauvais en fonction de ce que les serveurs et les pare-feu sont configurés pour supporter.



Passif Exemple FTP
Voici un exemple réel d'une session FTP passif. Les seules choses qui ont été modifiées sont les noms des serveurs, les adresses IP et noms d'utilisateur. Dans cet exemple une session FTP est initiée à partir testbox1.slacksite.com (192.168.150.80), une boîte de linux qui exécute le client FTP standard ligne de commande, à testbox2.slacksite.com (192.168.150.90), une boîte de linux en cours d'exécution ProFTPd 1.2. 2RC2. Le débogage (-d) du pavillon est utilisé avec le client FTP pour montrer ce qui se passe dans les coulisses. Tout dans le rouge est la sortie de débogage qui montre les commandes réelles FTP envoyées au serveur et les réponses générées à partir de ces commandes. Sortie du serveur normal est affiché en noir, et l'entrée d'utilisateur est en gras.

Notez la différence dans la commande PORT dans cet exemple, par opposition à l'exemple FTP actif. Ici, nous voyons un port en cours d'ouverture sur le serveur (192.168.150.90) du système, plutôt que le client. Voir la discussion sur le format de la commande PORT-dessus, dans la section Exemple FTP actif.

testbox1: {/ home / pt / slacker / public_html}% ftp-d testbox2
Connecté à testbox2.slacksite.com.
220 testbox2.slacksite.com serveur FTP prêt.
Nom (testbox2: slacker): slacker
---> USER slacker
331 Password required for slacker.
Mot de passe: TmpPass
---> PASS XXXX
230 slacker utilisateur connecté po
---> SYST
215 UNIX Type: L8
Type de système à distance est UNIX.
En utilisant le mode binaire pour transférer des fichiers.
ftp> passive
Le mode passif sur.
ftp> ls
ftp:setsockopt (ignoré): Permission denied
---> PASV
227 Entering Passive Mode (192,168,150,90,195,149).
---> LISTE
150 Ouverture de mode ASCII connexion de données pour la liste des fichiers
drwx ------ 3 104 utilisateurs fainéant 27 juillet public_html 01:45
226 Transfert compléter.
ftp> quit
---> QUIT
221 Goodbye.


Résumé
Le tableau suivant devrait aider les administrateurs à se rappeler comment chaque mode FTP fonctionne:

Active FTP:
commande: client> 1024 -> serveur 21
des données: client> 1024 <- serveur 20

FTP passif:
commande: client> 1024 -> serveur 21
des données: client> 1024 -> serveur> 1024

Un résumé rapide des avantages et des inconvénients de FTP actif vs passif est également dans l'ordre:

FTP actif est bénéfique pour l'administrateur du serveur FTP, mais préjudiciable à l'administrateur du côté client. Le serveur FTP tente de faire des liens avec aléatoires ports élevés sur le client, qui serait presque certainement être bloqué par un pare-feu sur le côté client. Le mode FTP passif est bénéfique pour le client, mais préjudiciable à l'administrateur du serveur FTP. Le client doit faire les deux connexions au serveur, mais l'un d'eux sera d'un port aléatoire élevé, ce qui serait presque certainement être bloqué par un pare-feu sur le côté serveur.

Heureusement, il ya peu d'un compromis. Depuis les admins serveurs FTP en cours d'exécution devront faire leurs serveurs accessibles au plus grand nombre de clients, ils seront presque certainement besoin pour soutenir FTP passif. L'exposition des ports de haut niveau sur le serveur peut être minimisé en spécifiant une plage de ports limité pour le serveur FTP à utiliser. Ainsi, tout, sauf pour cette plage de ports peut être derrière un firewall sur le côté serveur. Bien que cela n'élimine pas tous les risques pour le serveur, il le diminue énormément.