www.ProFTPD.de

ProFTPD => ProFTPD - Deutsch => Thema gestartet von: omnibyte am 20. August 2003, 14:13:46



Titel: Proftp auf Port 21 und 8021 geht nicht!
Beitrag von: omnibyte am 20. August 2003, 14:13:46
Hallo

Ich möchte den Proftpd Server auf zwei Ports lausen lassen! 21 und 8021!!! Auf Port 21 werden normale Daten zur Verfügung gestellt und auf Port 8021 kann man die Homepages verwalten! Ich habe soweit alles konfiguriert mit SQL DB's etc... läuft auch alles wunderbar von INTERN...
Sobald ich aber von EXTERN zugreiffen möchte, bricht er mir beim listing ab:

Code:
bash-2.05a# ftp ftp.meinedomain.ch 8021
Connected to bsd-srv1.meinedomain.ch.
220 bsd-srv1.meinedomain.ch FTP server ready
Name (ftp.spychernet.ch:admin): www.meinedomain.ch
331 Password required for www.meinedomain.ch.
Password:
230-User www.meinedomain.ch logged in.
230 Willkommen www.meinedomain.ch
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
500 EPSV not understood
227 Entering Passive Mode (10,84,1,1,11,134).
500 Illegal PORT command
421 No Transfer Timeout (300 seconds): closing control connection.


Interessant ist auch, dass bei der Zeile 227 meine Lokale also nicht die öffentliche IP steht... Was hat das zu bedeuten?!
Auf der Firewall sind die Ports 20, 21, 8021 offen!
Was läuft da falsch?!?! Brauche unbedingt hilfe, bin mit meinem Latein am Ende!

Danke

PS. Das ist meine proftpd.conf Datei:
Code:

ServerName "Spychernet FTP Server"
ServerType standalone
ServerAdmin webmaster@spychernet.com
DeferWelcome off
Port 21
Umask               002
TimeoutLogin 120
TimeoutIdle 600
TimeoutNoTransfer 900
TimeoutStalled 3600
User nobody
Group nogroup
DefaultRoot /ftp
DefaultChdir /ftp
UseReverseDNS on
TransferLog /var/proftpd/xferlog.legacy
MaxInstances 3
DisplayFirstChdir readme.txt
LogFormat default "%h %l %u %t \"%r\" %s %b"
LogFormat auth "%v [%P] %h %t \"%r\" %s"
LogFormat write "%h %l %u %t \"%r\" %s %b"

#MYSQL TEIL********************************************************
SQLAuthTypes Plaintext
SQLAuthenticate users
#SQLDefaultHomedir "/tmp"
SQLHomedirOnDemand on
SQLConnectInfo spychernet@localhost root *****
SQLDefaultGID 32766
SQLDefaultUID 1101
SQLMinUserGID 1100
SQLMinUserUID                   1100
SQLUserInfo nvm_members loginname password uid gid homedir shell
SQLUserWhereClause "active=1"
SQLNamedQuery count SELECT "ftp_login_count FROM nvm_members WHERE loginname='%u'"
SQLNamedQuery last_login SELECT "ftp_login_last FROM nvm_members WHERE loginname='%u'"
SQLShowInfo PASS "230" "%u hat sich %{count} mal angemeldet, das letzte mal am %{last_login}"

# aktive SQL Kommandos, ab hier passiert etwas :-)
#
SQLLog PASS counter
SQLNamedQuery counter UPDATE "ftp_login_last=now(), ftp_login_count=ftp_login_count+1 WHERE loginname='%u'" nvm_members

# xfer Log in mysql
SQLLog RETR,STOR transfer1
SQLNamedQuery  transfer1 INSERT "'%u', '%f', '%b', '%h', '%a', '%m', '%T', now(), 'c', NULL" nvm_members_xferstate
SQLLOG ERR_RETR,ERR_STOR transfer2
SQLNamedQuery  transfer2 INSERT "'%u', '%f', '%b', '%h', '%a', '%m', '%T', now(), 'i', NULL" nvm_members_xferstate
#ENDE MYSQL TEIL***************************************************

<Directory /ftp/incoming>
AllowRetrieveRestart on
AllowStoreRestart on
DeleteAbortedStores off
DisplayFirstChdir readme.txt
HiddenStor off
Umask 022
HideNoAccess off
AllowOverwrite on
GroupOwner spychernet
</Directory>

<Directory /ftp/pub>
AllowRetrieveRestart on
AllowStoreRestart on
DeleteAbortedStores off
HiddenStor off
AllowAll
AllowOverwrite on
Umask 002
</Directory>

<Global>
DisplayLogin "hallo %u"
DisplayFirstChdir readme.txt
AllowOverwrite on
IdentLookups off
ExtendedLog /var/proftpd/access.log WRITE,READ write
ExtendedLog /var/proftpd/auth.log AUTH auth
MaxClientsPerHost 1 "Nur Eine Verbindung möglich pro Pc und User!"
DisplayConnect /etc/ftpmessages/banner.msg
DisplayGoAway /etc/ftpmessages/tomany.msg
DisplayQuit /etc/ftpmessages/bye.msg
RootLogin off
HiddenStor off
RequireValidShell off
DirFakeGroup on
DirFakeUser on
MaxLoginAttempts 3
UseFtpUsers off
DeleteAbortedStores off
ShowSymlinks on
LoginPasswordPrompt off
#AuthUserFile /etc/passwd-ftp
AllowRetrieveRestart on
AllowStoreRestart on
ServerIdent off
DirFakeMode 0777
</Global>

<VirtualHost bsd-srv1.spychernet.ch>
Port 8021
ServerAdmin webmaster@spychernet.com
ServerName "Webserver"
DefaultRoot ~
AllowOverwrite yes
DefaultChdir ~
Umask 002
DisplayConnect "Willkommen auf dem Webserver"
DirFakeGroup off
DirFakeUser off

#MYSQL TEIL********************************************************
SQLAuthTypes Plaintext
SQLAuthenticate users*
#SQLDefaultHomedir "/tmp"
SQLHomedirOnDemand off
SQLConnectInfo System@localhost root *****
SQLDefaultGID 32766
SQLDefaultUID 1101
SQLMinUserGID 1100
SQLMinUserUID                   1100
SQLUserInfo webserver loginname password uid gid homedir shell
#SQLUserWhereClause "active=1"
SQLShowInfo PASS "230" "Willkommen %u"
DefaultTransferMode ascii

# aktive SQL Kommandos, ab hier passiert etwas :-)
#
#ENDE MYSQL TEIL***************************************************
</VirtualHost>

 [/code]


Titel: nachtrag
Beitrag von: omnibyte am 20. August 2003, 14:15:48
Ich habe vergessen zu erwähnen, dass die Verbindung auf Port 21 wunderbar funktioniert!

omnibyte


Titel: Re: Proftp auf Port 21 und 8021 geht nicht!
Beitrag von: stonki am 20. August 2003, 14:21:33
Zitat von: "omnibyte"
Hallo

Interessant ist auch, dass bei der Zeile 227 meine Lokale also nicht die öffentliche IP steht... Was hat das zu bedeuten?!
Auf der Firewall sind die Ports 20, 21, 8021 offen!

8020 auch ?

Code:

# aktive SQL Kommandos, ab hier passiert etwas :-)
#
SQLLog PASS counter
SQLNamedQuery counter UPDATE "ftp_login_last=now(), ftp_login_count=ftp_login_count+1 WHERE loginname='%u'" nvm_members


schön zu sehen, das mein Code eine solche Verbreitung hat :)

Code:


<VirtualHost bsd-srv1.spychernet.ch>
Port 8021
ServerAdmin webmaster@spychernet.com
ServerName "Webserver"
DefaultRoot ~
AllowOverwrite yes
DefaultChdir ~
Umask 002
DisplayConnect "Willkommen auf dem Webserver"
DirFakeGroup off
DirFakeUser off


also schuss in blaue:

1) Dein Rechner sitzt hinter einem Router, ist also NICHT direkt mit dem Internet verbunden. In diesem Fall musst (!!) Du "MasqueradAddress" und "PassivePorts" ausprobieren
2) Dein Port 8020 ist gesperrt, daher geht aktiver Transfer nicht.

cu
stonki


Titel: Hat geklappt
Beitrag von: omnibyte am 20. August 2003, 14:56:07
Vielen Dank für deine Hilfe! Habs soeben zum Laufen gebracht :)
Und auch danke für den MySQL Konfiguration's code ;-)

ich habe meine proftpd.conf wie folgt ergänzt:

Code:
<VirtualHost www.spychernet.ch>
        Port 8021
        [b]MasqueradeAddress       212.101.16.195
        PassivePorts            8020 8020[/b]
        ServerAdmin             webmaster@spychernet.com
        ServerName              "Webserver"
        DefaultRoot             ~
        AllowOverwrite          yes
        DefaultChdir            ~


Gibt's dafür eine simple erklärung, was ich falsch gemacht habe?! Dass ich es nachvolziehen kann...

Vielen herzlichen Dank

omniByte


Titel: Re: Hat geklappt
Beitrag von: stonki am 20. August 2003, 15:49:14
Zitat von: "omnibyte"
Vielen Dank für deine Hilfe! Habs soeben zum Laufen gebracht :)
Und auch danke für den MySQL Konfiguration's code ;-)

ich habe meine proftpd.conf wie folgt ergänzt:

Code:
<VirtualHost www.spychernet.ch>
        Port 8021
        [b]MasqueradeAddress       212.101.16.195
        PassivePorts            8020 8020[/b]
        ServerAdmin             webmaster@spychernet.com
        ServerName              "Webserver"
        DefaultRoot             ~
        AllowOverwrite          yes
        DefaultChdir            ~


Gibt's dafür eine simple erklärung, was ich falsch gemacht habe?! Dass ich es nachvolziehen kann...

Vielen herzlichen Dank

omniByte


NEIN ! Das ist FALSCH !
Lies bitte http://www.proftpd.de/7.0.html
Das ist SO wichtig, das muss ich mal in Deutsche übersetzen, ich bin nächste Woche wieder in london, dann kann ich meine einsamen Nächte dort mal sinnvoll nutzen.

Kurzfassung:

Du hast einen Kontrollkanal, das normal 21

Du hast einen Datenkanal. Dieser ist bei aktiven FTP der Kontrollkanal MINUS 1 = 20
ODER
bei passiven FTP ein Kanal oberhalb 1024.

NUR (!) Bei passiven FTP brauchst Du eine releativ grosse Anzahl von Ports, da für jede NEUE Verbindung ein anderer Port genommen wird. Richtig wäre nun
PassivePorts            8030 8999[/b]

DAS GLEICHE gilt auch für Deinen normalen (Port 21) FTP Zugang. Es klappt bei Dir im Moment NUR, weil Du im aktiven FTP unterwegs bist. Verbinde Dich mal von aussen und probiere dass im passiven Modus. (geht bei Linux Consolen FTP durch den Befehl "pass" nach dem einloggen).

230 User stuff logged in.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> pass
Passive mode: off; fallback to active mode: off.
ftp> pass
Passive mode: on; fallback to active mode: on.
ftp> pass
Passive mode: off; fallback to active mode: off.
ftp>

cu
stonki