Portál AbcLinuxu, 11. května 2025 07:21
Ahoj,
mam problem s povolenim portu na D-LINK (DIR-635). Nelze zadavat rozsah portu, nebo alespon nevim jak. Povolil jsem tedy nekolik portu. Porty 21,1027,1030,1031 az 1035
VSFTPD nastaveno toto:
# nastaveni SSL pristupu
ssl_enable=YES
ssl_tlsv1=YES
rsa_cert_file=/etc/vsftpd/vsftpd.pem
force_local_logins_ssl=YES
force_local_data_ssl=YES
ftp_data_port=1027
pasv_address=domena.cz
pasv_enable=YES
pasv_min_port=1030
pasv_max_port=1035
Pri pokusu o pripojeni vzdy vyhodi hlasku:
[R] 250 Directory successfully changed.
[R] PWD
[R] 257 "/"
[R] PASV mode failed, trying PORT mode.
[R] TYPE A
[R] 200 Switching to ASCII mode.
[R] PROT P
[R] 200 PROT now Private.
[R] Listening on PORT: 3377, Waiting for connection.
[R] PORT 10,0,0,100,13,49
[R] 500 Illegal PORT command.
[R] List Error
Problem je ze nemohu nastavit rozsah, napriklad pro port 3300 az 5000, treba aby prosel port 3377
RTFM vsftpd.conf(5): pasv_address, pasv_addr_resolve
A na překladu adres si nastavte port forwarding z jednoho portu na jeden port, nikoliv rozsahy. Číslo portu na natu se musí shodovat s čísel portu na serveru.
Nerozumim jaky port mam povolit? Do konfiguracniho souboru jsem pridal pasv_addr_resolve=NO, Rozsah mi stejne na D-linku nejde nastavit. Aktualne mam nastaveny forwarding pro tyto porty: 21, 1027, 1030,1031,1032,1033,1034,1035. On nejde ani nastavit rozsah portu.
[R] TYPE A
[R] 200 Switching to ASCII mode.
[R] PROT P
[R] 200 PROT now Private.
[R] PASV
[R] 227 Entering Passive Mode (93,91,149,240,4,9)
[R] Opening data connection IP: 93.91.149.240 PORT: 1033
[R] Data Socket Error: Connection timed out
[R] List Error
[R] PASV
[R] 227 Entering Passive Mode (93,91,149,240,4,8)
[R] Opening data connection IP: 93.91.149.240 PORT: 1032
[R] Data Socket Error: Connection timed out
[R] List Error
[R] PASV mode failed, trying PORT mode.
[R] Listening on PORT: 3489, Waiting for connection.
[R] PORT 10,0,0,100,13,161
[R] 500 Illegal PORT command.
[R] List Error
Omlouvam se pasv_addr_resolve=YES nikoliv pasv_addr_resolve=NO, ale zkousel jsem oboji
Snažíte se na špatné straně. Předně to chce zkoumat nejen klienta (ze které tu ukazujete log), ale také i server. Taky by bylo se dobré podívat na síťový provoz, jestli NAT skutečně přeposílá packety pro vámi vyjmenované porty.
Pro zjednodušení bych začal tím, že necháte forwarding jen na 21 a jeden další port, totéž zohledníte v konfiguraci serveru. Pak na stroji, kde běží server, třeba tcpdumpem začnete sledovat, jaké packety přichází a odchází, a do toho pustíte klienta.
Protože podle toho, co tu popisujete, se nepodaří sestavit datové TCP spojení. Takže buďto je chyba ve forwardingu, nebo vám server neposlouchá na daném portu.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.