Q : PASV eller PORT: Hva er de, og hvilken skal jeg bruke?

Målgruppe: ftp-brukere, ftp-server innehavere

Les denne siden på tysk

A : Flesteparten av ftp-brukerne vet ingenting om PASV (passiv) og PORT-kommandoer, og det er naturligvis ikke din feil. Først av alt må du vite at hver FTP-sesjon bruker 2 TCP-tilkoblinger. Når du kobler til en FTP-server brukes den første, og når du utfører en KATALOG-LISTING eller FILOVERFØRING, brukes den andre TCP-tilkoblingen. Disse to kommandoene (PASV og PORT) blir brukt bare for i sette opp den andre TCP-tilkoblingen.

Det kan føles rart at det er to kommandoer for DATA-forbindelsen, og ikke bare én. I begynnelsen var en PORT-kommando nok, men med introduksjonen av en stor mengde FIREWALL-programvare og NAT-enheter, ble PORT-kommandoen fort ubrukelig. Derfor ble PASV-kommandoen introdusert. Den er også kjent som FIREWALL-vennlig dataoverføring.

Nå skal vi forklare forskjellen mellom disse to kommandoene:

PORT: ftp-klienten FORTELLER ftp-serveren at den skal koble til ftp-klientens IP addresse (med et port-nummer)

PASV: ftp-serveren FORTELLER ftp-klienten at den skal koble til ftp-serverens IP addresse (med et port-nummer)

Det er ikke vanskelig å innse at:

PORT vil feile, hvis ftp-klienten ikke engang vet sin egen virkelige adresse (når klienten er bak et NAT)

PASV vil feile, hvis ftp-serveren ikke engang vet sin egen virkelige adresse (når serveren er bak et NAT)

Hvor kan man så se disse PORT/PASV-kommandoene og svarene?! Ja, det er nok best å ha en FTP-klient med et status-vindu :) For eksempel FlashFXP, CuteFTP eller Windows Commander. Det finnes selvsagt for mange til at vi kan liste opp alle, men mange klienter skjuler disse kommandoene slik at du aldri vil se dem.

Nå skulle du vite hvor problemene ligger når du får PORT eller PASV problemer.

Problem 1: FTP-klienten din kan ikke utføre en LIST DIR. Du får en "PORT command failed"-feilmelding. Fordi denne kommandoen er sendt av FTP-klienten, og det er klientens IP+PORT som sendes med denne kommandoen, ser det ut som om klienten er bak et NAT

Adresse-allokering for private intranet
10.0.0.0 - 10.255.255.255 (10/8 prefix)
172.16.0.0 - 172.31.255.255 (172.16/12 prefix)
192.168.0.0 - 192.168.255.255 (192.168/16 prefix)

Du vet at det er ftp-klientens feil, så du kan forsøke å fortelle denne brukeren at han/hun må konfigurere ftp-klienten sin skikkelig - be brukeren om å bruke PASV-modus, ikke PORT-modus, siden brukerens ftp-klient ikke kan se forskjellen

Problem 2: FTP-klienten din kan koble til en FTP-server, men kan ikke utføre LIST DIR. Du får en feilmelding av typen 'PASV failed, no one connects to IP:PORT'. Nå må du se på IP+PORT: Ser det ut som en IP-adresse bak et NAT?

Addresse-allokering for private intranet
10.0.0.0 - 10.255.255.255 (10/8 prefix)
172.16.0.0 - 172.31.255.255 (172.16/12 prefix)
192.168.0.0 - 192.168.255.255 (192.168/16 prefix)

I tilfelle: server-administratoren må konfigurere serveren korrekt, han/hun må ikke la FTP-serveren bruke den interne IP-adressen (les http://www.raidenftpd.com/en/raiden-ftpd-doc/howto-setup-ip.html). Hvis IP+PORT ser rett ut, og IP-adressen er den samme som serverens, er det flere muligheter. Vanligvis kan du se grunnen med en gang. Du kan prøve følgende steg:

1. Bytt til en annen FTP-klient, eller oppgrader til en nyere versjon av FTP-klienten du bruker. Ikke vær i tvil om at det finnes dårlig designete FTP-klienter (vi nevner ikke navn her). Merk også at når du sender filer mellom servere (FXP), blir den ene FTP-serveren en klient. Det finnes selvsagt dårlig designete FTP-servere også (vi nevner ikke noen av dem heller).

2. Sjekk om du kjører et FIREWALL-/sikkerhetsprogram som blokkerer den andre TCP-tilkoblingen. I tilfelle: fjern programmet.

Er alle problemene vekk? Ikke det? Hvis svaret er nei, vil du aldri finne ut hvorfor det ikke virker, med mindre du har tilgang til både serverens og klientens nettverk. Grunnen er enkel: hvordan kan du vite om det er eksisterer NOEN FIREWALLER på klientens nettverk? Eller som klient: hvordan kan du vite om det finnes NOEN FIREWALLER på serverens nettverk? Svaret er: DU VET ALDRI.

Selv om du eier både server- og klientmaskin: hvordan vet du om nettverksadministratoren eller ISPen har en firewall installert på GATEWAY-maskinen på nettverket? Svaret er fremdeles: DU VET ALDRI..

Så når du får disse feilmeldingene: prøv stegene ovenfor og prøv å finne ditt EGET SVAR - RaidenFTPD har ingen PASV/PORT problemer, og siden sannsynligvis ingen (ikke engang du selv) noen gang vil vite den virkelige grunnen, må du finne det ut på egen hånd. All nødvendig informasjon står på denne siden.

That's ALL

 

Copyright © RaidenFTPD TEAM , ALL RIGHTS RESERVED

REVISION 2.2 , 2001/11/26