Jak sprawdzić pasywny i aktywny FTP


14

Jak sprawdzić, który serwer FTP (pasywny lub aktywny) jest uruchomiony?

Domyślnie pasywny FTP działa w systemie Linux, ale jak to sprawdzić?


2
Twoje pytanie jest bardzo niejasne. Czy pobierasz przez FTP, czy prowadzisz serwer FTP?
jofel,

@Rahul Patil Czy moja odpowiedź pasuje do twojego pytania? Jeśli tak, prosimy o zaakceptowanie mojej odpowiedzi.
John Siu,

po ponownym wejściu passivenapisane jest pasywne wyłączenie.
Rahul Patil,

Odpowiedzi:


11

Znalazłem odpowiedź jak poniżej.

w trybie pasywnym możemy uruchomić lspolecenie, ale w trybie aktywnym musimy ręcznie wyłączyć tryb pasywny, wpisując passivepolecenie, a następnie przyjmie lspolecenie, w przeciwnym razie daje błąd 550 odmowy uprawnień. patrz poniżej (pasv_enable = NO w vsftpd.conf)

ftp> passive
Passive mode on.
ftp> ls
550 Permission denied.
Passive mode refused.
ftp> passive
Passive mode off.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
-rw-rw-r--    1 503      503             0 Jan 11  2013 files1
-rw-rw-r--    1 503      503             0 Jan 11  2013 files10
-rw-rw-r--    1 503      503             0 Jan 11  2013 files2
-rw-rw-r--    1 503      503             0 Jan 11  2013 files3
-rw-rw-r--    1 503      503             0 Jan 11  2013 files4
-rw-rw-r--    1 503      503             0 Jan 11  2013 files5
-rw-rw-r--    1 503      503             0 Jan 11  2013 files6
-rw-rw-r--    1 503      503             0 Jan 11  2013 files7
-rw-rw-r--    1 503      503             0 Jan 11  2013 files8
-rw-rw-r--    1 503      503             0 Jan 11  2013 files9
-rw-r--r--    1 0        0           10240 Jan 11  2013 test.tar
226 Directory send OK.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
-rw-rw-r--    1 503      503             0 Jan 11  2013 files1
-rw-rw-r--    1 503      503             0 Jan 11  2013 files10
-rw-rw-r--    1 503      503             0 Jan 11  2013 files2
-rw-rw-r--    1 503      503             0 Jan 11  2013 files3
-rw-rw-r--    1 503      503             0 Jan 11  2013 files4
-rw-rw-r--    1 503      503             0 Jan 11  2013 files5
-rw-rw-r--    1 503      503             0 Jan 11  2013 files6
-rw-rw-r--    1 503      503             0 Jan 11  2013 files7
-rw-rw-r--    1 503      503             0 Jan 11  2013 files8
-rw-rw-r--    1 503      503             0 Jan 11  2013 files9
-rw-r--r--    1 0        0           10240 Jan 11  2013 test.tar
226 Directory send OK.

lslista, o którą prosiliśmy na serwerze, wraca przez port 20 na serwerze do połączenia z wysokim portem na kliencie. Port 21 na serwerze nie jest wykorzystywany do odesłania wyników polecenia ls na serwerze.

powyżej zostało wyodrębnione z „http://www.markus-gattol.name/ws/vsftpd.html”


Zgadzam się, passivez lsklientem to łatwy sposób na sprawdzenie. Właściwie, jeśli możemy wysłać „PASV” na serwer, serwer odpowie na odpowiedź. Ale nie mogę znaleźć polecenia w kliencie ftp, aby to zrobić.
John Siu,

8

Z klienta ftp, aby sprawdzić, czy zdalny serwer ftp obsługuje tryb pasywny, po zalogowaniu wpisz quote PASV.

Poniżej przedstawiono przykłady połączeń z serwerem vsftpd z włączonym i wyłączonym trybem pasywnym

vsftpd z pasv_enable=NO

# ftp localhost
Connected to localhost.localdomain.
220 (vsFTPd 2.3.5)
Name (localhost:john): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> quote PASV
550 Permission denied.
ftp> 

vsftpd z pasv_enable=YES

# ftp localhost
Connected to localhost.localdomain.
220 (vsFTPd 2.3.5)
Name (localhost:john): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> quote PASV
227 Entering Passive Mode (127,0,0,1,173,104).
ftp> 

Polecenie ftp quotewysyła wszystkie argumenty po nim do zdalnego serwera. Serwer zdalny przetworzy je jako polecenie / żądanie, jeśli dotyczy. PASVjest żądaniem, aby serwer użył trybu pasywnego.


nawet „pasv_enable = NO” w vsftpd.conf, polecenie pasywne mówi, że tryb pasywny jest włączony.
Rahul Patil,

Czy przetestowałeś to za routerem nat? Jeśli możesz pobrać plik, to tak naprawdę jest włączony. Innym sposobem jest zmuszenie klienta ftp do korzystania wyłącznie z trybu pasywnego i przetestowanie go.
John Siu,

Cześć John, Proszę sprawdzić powyższy post i daj mi znać, jeśli się mylę
Rahul Patil

@RahulPatil tak, masz rację. Moja oryginalna odpowiedź ustawia tryb pasywny tylko po stronie klienta . Poprawiłem swoją odpowiedź we właściwy sposób. Twoje informacje / metoda są również poprawne.
John Siu,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.