21. november 2005 - 21:30Der er
37 kommentarer og 1 løsning
Ftp clienter kan ikke logge ind?
Hejsa. Jeg har en FTP server, og en del kan sagtens logge ind, men der er også en del som ikke kan logge ind. I IE når de til lommelygten, der kan de så stå i lang tid. Hos mig ser jeg i loggen at de når til "Passive mode". Hvordan kan det være at nogen kan komme på, og andre kan ikke???
Hejsa. Det burde jeg måske have skrevet, at dette ikke hjælper i de tilfælde jeg snakker om her. Problemet er der en del der oplever... Nogen der har nogle løsningsforslag?
Jeg har lige prøvet i passiv mode. Når jeg sender PASV kommandoen, så hænger den bare. Her plejer serveren at svare tilbage med ip+port på dataforbindelsen
ok, i så fald vil funktionen i flashfxp som hedder noget i stil med "host behind ip masq/NAT" hjælpe.
Problemet er din NAT, og at serveren ikke har et offentligt ip. Det gør at den går kold på list kommandoen. Men egentlig er det primært et problem på klienten og fordi det er dumt at benytte IE som ftp klient.
I FlashFXP i NON-PASSIVE: [L] USER eksp [L] 331 User name okay, need password. [L] PASS (hidden) [L] 230 User logged in, proceed. [L] SYST [L] 215 UNIX type: L8 [L] FEAT [L] 211-Extensions supported: [L] 211- SIZE [L] 211- MDTM [L] 211- REST STREAM [L] 211- LIST [WILDCARDS] [L] 211- CLNT [L] 211 End of extentions. [L] PWD [L] 257 "/" is working directory. [L] TYPE A [L] 200 Type set to A. [L] PORT 192,168,0,3,17,3 [L] 200 PORT Command successful. [L] LIST -al [L] 125 File status okay; about to open data connection. [L] 226 Transfer complete, closing data connection. [L] List Complete: 186 bytes in 16,06 seconds (0,0 KB/s)
I FlashFXP i PASSIVE: [L] USER eksp [L] 331 User name okay, need password. [L] PASS (hidden) [L] 230 User logged in, proceed. [L] SYST [L] 215 UNIX type: L8 [L] FEAT [L] 211-Extensions supported: [L] 211- SIZE [L] 211- MDTM [L] 211- REST STREAM [L] 211- LIST [WILDCARDS] [L] 211- CLNT [L] 211 End of extentions. [L] CWD / [L] 250 CWD Command successful. [L] PWD [L] 257 "/" is working directory. [L] TYPE A [L] 200 Type set to A. [L] PASV
Q: Why can't I see any files? I can see them in other ftp clients. A: There are two possible reasons. 1. You are behind a firewall and the FTP server is unable to connect to your computer. To resolve this issue you need to use Passive mode. This option is located in Preferences on the Proxy tab. Check "Use Passive mode". 2. The files may be hidden on the ftp server, and in order to see them you need to change the list method. This is located in Preferences on the Options tab. Change the List method to show hidden files. Note: some sites don't allow you to view hidden files and will result in an error. To resolve this problem, go into the Site Manager, select the site and click the advanced tab. Uncheck "show hidden files", then save to keep the changes
Hejsa. Fejlene syntes jeg kan deles op i tre grupper. Nogen går i stå i pasw mode. Dem har jeg foreslået at benytte et ftp clientprogram hvor det er muligt at slå passive mode fra. Dette virker. Derudover er der en gruppe, hvor det virker at slå firewallen fra. Dem har jeg foreslået at få åbnet port 20 og 21. OM det har virket ved jeg ikke. Men der er stadig en lille gruppe som "går kolde" trods brug af FTP client software, med passive mode slået fra. Men om de virkelig har slået passive mode fra, det har jeg jo kun deres eget ord for. ER der ikke andre fejlkilder?
Lige nu var der faktisk en der har sendt mig en mail med en fejlkode som han får i sit FTP program: "Can't resolve host name"
Giver det mening?
Jeg fandt dette på google: I had a similar problem. Go to windows firewall "advanced" tab and make sure that your network connections have a checkmark to allow Web Server (HTTP) services. Mine were not set, so once set that fixed it for me.
Når der køres i passive mode forsøger serveren at oprette forbindelse til klienten. Det duer ikke hvis NAT serveren ikke ved hvad den skal gøre af pakkerne. Derfor kan det hjælpe disse hvis de forwarder al traffik fra router til deres maskine.
Kodeordene her er NAT og firewalls. Uden disse fungerer alt problemfrit.
Det er den enhed i routeren som oversætter pakkerne mellem internt og eksternt ip og holder styr på hvor pakker til hvilke porte skal hen. Det står for Network Address Translation, således at du kan have mange ip numre på dit LAN. Det blev opfundet fordi internet er ved at løbe tør for ip numre. Hvis man har en router på en hjemmeforbindelse er det sikkert at regne med at der er NAT server i den.
Ok.. tak for det.. Men det vil altså sige, at hvis de sidder bag en router (NAT), så skal de ikke forwarde port 20 og 22 til computeren.
Jeg tror muligvis at dette kan være noget nogle har problemer med. Jeg har sagt til folk, at det er vigtigt at disse porte er åbne i en firewall, men jeg har ikke nævnt en disse om at de skal forwardes. Ellers er der ikke nogle gængse problematikker omkring FTP?
Ikke for at gentage mig selv. Men serveren oplyser aldrig ip+port, når klienten sender PASV kommandoen. At det ikke sker, har ikke noget at gøre med diverse firewalls og NAT routere
When opening an FTP connection, the client opens two random unprivileged ports locally (N > 1024 and N+1). The first port contacts the server on port 21, but instead of then issuing a PORT command and allowing the server to connect back to its data port, the client will issue the PASV command. The result of this is that the server then opens a random unprivileged port (P > 1024) and sends the PORT P command back to the client. The client then initiates the connection from port N+1 to port P on the server to transfer data.
Der er to muligheder: Enten bliver den fanget i den NAT/firewall som serveren er bag, ellers også bliver den fanget i NAT/firewall som klienten er bag.
men klienten når jo ikke aldrig til det punkt, hvor den forsøger at oprette dataforbindelsen. Først når serveren har svaret tilbage på klientens pasv kommando (som sker på kontrolforbindelsen, port 21), kan klienten oprette dataforbindelsen.
klienten sender pasv kommandoen afsted, og så hænger den du ved ikke om den kommer frem til serveren eller ej. Det kan jeg så afsløre at den gør. =) Det er når serveren sender svar på pasv at det aldrig kommer frem til klienten.
Det er NAT serverens skyld, ikke firewall. NAT fungerer notorisk dårligt med FTP. Til Linux NAT server (netfilter) er der ligefrem kodet selvstændige moduler til at håndtere ftp med de workarounds der må laves. Mange consumer-level routere er skrækkelige til det her...
Hvad mener du helt præcist, at NAT serveren filterer væk, når serveren forsøger at svare tilbage på klietens pasv kommando?
Jeg har aldrig oplevet en NAT router filtere på denne måde. Jeg har derimod oplevet routere, som er ftp aware, og ændrer serverens lan ip > wan ip, hvis serveren prøver at svare tilbage med sin lan ip
Det handler ikke udelukkende om porte. Det handler også om det faktum at ftp er en usædvanelig protokol idet den benytter to forbindelser. Samtidig skal NAT ændre på payload størrelsen og encoding af pakken.
men kort sagt er det blandt andet fordi serverens svar på pasv kommandoen indeholder ip og port i HEADER, og ikke i payload af pakken. Der kan ske et royal fuckup der når NAT skal oversætte header på sådan en pakke.
Du sidder fast på den der dataforbindelse. Der er stadig ikke her det går galt i dette tilfælde.
Før klienten kan oprette dataforbindelsen (hvor det evt. kan gå galt), skal serveren først svare tilbage med ip+port. Det gør den på den TCP forbindelse, hvor alle de andre kommandoer også bliver sendt. Den som klienten startede med at oprette til serverens port 21
Den log du selv postede fra dig forsøg, viser at de andre kommandoer fint bliver sendt til serveren, og severen fint kan svare tilbage.
Nuvel, kan vi blive enige så langt som at problemet er løst hvis: A) Toksvig holder op med selv at bruge NAT og giver sin FTP server et offentligt IP eller B) Toksvig sætter sin FTP server i DMZ således at alle porte bliver forwardet til den
og B med den klausul at NAT serveren skal være programmeret af producenten til at håndtere FTP protokollen og oversættelse af PORT og PASV kommandoer ordentligt.
yesh, det skal være en god router. jeg ved ikke om du kom om ved at læse dette Cisco dokument, men problematikken er beskrevet her:
The significance of all this to NAT is that the PORT and PASV commands carry not only the port numbers but also the IP addresses. If the messages cross a NAT, these addresses must be translated. To make matters worse, the IP address is encoded in ASCII in its dotted-decimal form. This means that the IP address in the FTP message is not of a fixed length, as it would be if it were a 32-bit binary representation. For example, the address 10.1.5.4 is eight ASCII characters (including the dots), whereas 204.192.14.237 is 14 ASCII characters. So when the address is translated, the message size can change.
If the size of the translated FTP message remains the same, the Cisco NAT recalculates only the TCP checksum (in addition to any operations performed on the IP header). If the translation results in a smaller message, the NAT pads the message with ACSII zeros to make it the same size as the original message.
The problem becomes more complicated if the translated message is larger than the original message, because the TCP sequence and acknowledgment numbers are based directly on the length of the TCP segments. Cisco's NAT keeps a table to track the changes in SEQ and ACK numbers. When an FTP message is translated, an entry is made into the table containing the source and destination IP addresses and ports, the initial sequence number, the delta for the sequence numbers, and a time stamp. This information is used to correctly adjust the SEQ and ACK numbers in the FTP messages. It can be deleted after the FTP connection is closed.
Hejsa.. Det er superlæsning det her.. Jeg har fået en masse viden, og inspiration. Hvis I alle lægger et svar, giver jeg point til jer. Jeg har henvist dem som har problemer til denne side.. Tak for hjælpen.
Og så lad mig sige til alle som måtte læse denne tråd nogensinde: Man skal bruge en ftp klient hvis man vil benytte ftp. Internet Explorer er ikke en ftp klient. =) Stærkt anbefalelsesværdig er FlashFXP fra www.flashfxp.com - ingen over, ingen på siden af.
Nå, strych.. jeg giver dig pointene, så må Polle komme på banen, hvis han også vil have..
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.