Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

koschka

Community-Fossil

  • »koschka« ist der Autor dieses Themas

Beiträge: 2 862

Wohnort: Dresden

Beruf: Student

  • Private Nachricht senden

1

05.04.2004, 20:47

FTP Befehle

Hi,
ich hab zwei Befehlssätze für einen FTP-Server: einmal folgender:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
CWD
Change the current directory on the server.
PWD
Print the current directory on the server.
CDUP
Moves up to the parent directory.
LIST
List the contents of a directory.
MKD
Creates a directory on the server.
RMD
Removes a directory on the server.
DELE
Removes a file from the server.
USER
Sends the username for the login.
PASS
Sends the password for the login.
ABOR
Abort the transfer.
QUIT
Closes the connection with the server.
STAT
Gets teh current status of the server.
TYPE
Toggles the binary flag on the server (TYPE A - Ascii, TYPE I Binary).
PORT
Asks the server to connect the client.
PASV
Requests a data connection on a new port.
RETR
Requests the server to send a file.
STOR
Sends a file from the client to the server.
APPE
Same as STOR, except data is appended.
REST
Start download at a certain point.
SYST
Get the OS information of the server.
HELP
Get help on a verb.
NOOP
No operation.


und der zweite mit den standart UNIX / LINUX Befehle wie chmod, get, send, cd, mdir u.s.w.

Ich hab mir einen FTP Clienten geschrieben. Der kann den ersten Befehlssatz voll ausführen. Er ist über WinSocket realisiert. Die UNIX Befehle können aber nicht ausgeführt werden, er kennt die auch nicht. Obwohl als Sytem ein UNIX L8 installiert ist

In Deinem Beitrag befinden sich noch Fehler.
Bitte bearbeite die rot markierten Stellen und lösche diesen Text.

2

05.04.2004, 21:53

Ist der Client für Linux? Oder willst du die Befehle vom Client aus auf dem Server ausführen? Das geht nämlich nicht mit FTP. Es sei denn der FTP Server hat einen Befehlsatz dafür. Was aber nicht viel Sinn macht.

Wenn dein Client für Linux ist und dieser die Befehle auf dem selbigen Rechner ausführen soll, und das nicht kann, liegt das daran das du diese Befehle nicht Installiert hast. Was aber sehr ungewöhnlich sein dürfte.
Wichtig! Ich übernehme keinerlei Verantwortung für eventl. Datenverlust oder Schäden am Rechner ;D

koschka

Community-Fossil

  • »koschka« ist der Autor dieses Themas

Beiträge: 2 862

Wohnort: Dresden

Beruf: Student

  • Private Nachricht senden

3

06.04.2004, 07:08

Naja, ich will die Befehle auf dem Server ausführen lassen. Z.B. einen Upload mit RETRIVE (RETR). Mein Upload Programm für meine HP macht das doch auch so ?!?

Der Sinn:
Ich will eine Datei uploaden und downloaden, nicht mehr, und möglichst ohne MFC, im Moment hab ich nähmlich MFC drin, das gefällt mir aber nicht, wegen der "großen" Bibliotheken. Deshalb dachte ich an mein Uploader Programm für meine Homepage, und das macht das auch mit RETRIVE und so. Das funktionmiert auch über FTP. Ich dachte schon, das die LINUX Befehle wie get... cd u.s.w. nur unter einen HTTP Server, also Port 80 gehen. Da kommt aber immer eine Fehlermeldung wie "access verweigert". Nur weiss ich jetzt nicht, warum es zwei Befehlssätze gibt???
Und warum bei mir nur der erste funktioniert.

P.S. Welche andere Methode??? Der Server wird durch einen Internet Provider bereitgestellt, stammt also nicht von mir. Deshalb hab ich auch wenig Möglichkeiten dort reinzukommen

Das OS auf meinem Server ist in UNIX Type L8, mehr weiss ich auch nicht ;)

In Deinem Beitrag befinden sich noch Fehler.
Bitte bearbeite die rot markierten Stellen und lösche diesen Text.

4

06.04.2004, 15:28

Also die Programme chmod usw. kann man nicht über Port 80 ausführen lassen. Das wäre auch ganz schlecht, da es ein großes Sicherheitsloch darstellen würde.

Wenn du den FTP Server mit deinem Client ansprechen willst, hast du nur zwei Möglichkeiten. Entweder per Aktive FTP (Port 21 und 20) oder per Passiv FTP (Port 21 und Port > 1024). Aktive FTP ist die viel bessere Alternative, wird aber denoch meist nicht verwendet. Die Passiv Methode ist Std.

Auch wenn ich nie einen FTP Client geschrieben habe. Den Befehlssatz den du hier gepostet hast, kann dem Server auch sagen, das jetzt eine Datei kommt. Dann must du diese Datei auch dem FTP Server schicken und dann nicht auf Port 80 wechseln.
Wichtig! Ich übernehme keinerlei Verantwortung für eventl. Datenverlust oder Schäden am Rechner ;D

koschka

Community-Fossil

  • »koschka« ist der Autor dieses Themas

Beiträge: 2 862

Wohnort: Dresden

Beruf: Student

  • Private Nachricht senden

5

06.04.2004, 16:28

ja das mit dem passiven Modus kenn ich ja, Du musst die IP und den Port durch PASV herausfinden, funktioniert auch. Dann dich neu einloggen, und dann kannst du die Datei downloaden. (bwzw. uploaden). mich verwundert es nur das wenn ich google es den Unix und den oben gesposteten Befehlssatz gibt ;)

6

06.04.2004, 17:25

Kann ich nicht sagen. Ich weis das es noch einige Erweiterungen gibt. Die sind allerdings nicht Standardisiert und können von FTP Server zu FTP Server unterschiedlich sein.

Benutz einfach den Befehlsatz den du oben gepostet hast, dann kann nichts schief gehen :)
Wichtig! Ich übernehme keinerlei Verantwortung für eventl. Datenverlust oder Schäden am Rechner ;D

koschka

Community-Fossil

  • »koschka« ist der Autor dieses Themas

Beiträge: 2 862

Wohnort: Dresden

Beruf: Student

  • Private Nachricht senden

7

06.04.2004, 20:25

ok, ja ich hab mich nur gewundert weil wenn man "FTP Befehle Commands" bei google eingibt findet man die oben aufgelisteten nicht

Werbeanzeige