Gumagana ang username, gumagana ang password, at sinasabi ng client na nakakonekta ito. Pagkatapos ay walang hanggang naghihintay ito sa isang listahan ng folder o sa unang paglilipat ng file, at walang anuman sa mga kredensyal ang nagpapaliwanag niyon. Nagbubukas ang FTP ng pangalawang koneksyon para sa bawat listahan at bawat file, at ang pangalawang koneksyong iyon ang nabibigo. Pinatutunayan lamang ng pag-log in na gumagana ang unang usapan.

Gawin ang mga pagsusuri nang sunud-sunod. Ang bawat isa ay nag-aalis ng ibang antas, kaya huminto sa una na nagpapakita ng anomalya.

Paghiwalayin muna ang dalawang koneksyon

Ang control connection ay nagdadala ng mga utos at tugon sa port na pinakikinggan ng server. Ang data connection ay nagdadala ng listahan ng direktoryo o katawan ng file, at sa passive mode pinipili ng server ang endpoint nito at inihahayag ito sa tugon ng PASV o EPSV. Ang pagpayag sa port 21 ay walang sinasabi tungkol sa kung maaabot ang data port, at iyon mismo ang dahilan kung bakit nagtatagumpay ang pag-log in habang nag-time out ang bawat listahan. Ang gabay ng WinSCP sa mga mode ng FTP ay naglalahad ng paghahati at mga pangangailangan nito sa network.

Kung ang client ay nasa likod ng VPN, dumadaan ang data path sa parehong tunnel ngunit hindi kinakailangan sa parehong patakaran.

Basahin ang address sa tugon ng PASV

Magpatakbo ng verbose na client at basahin ang tugon sa halip na manghula. curl -v ftp://user@host/ ay nagpi-print ng PASV line kasama ang address at port na gusto ng server, at sa address na iyon kumokonekta ang client sa susunod. Kung ito ay isang pribadong address na walang kahulugan sa gilid ng client ng tunnel, walang patutunguhan ang data connection habang nananatiling malusog ang control channel.

Ihambing ang address na iyon sa address na aktwal na naabot ng client. Ang hindi pagtutugma ang sagot, at karaniwang nagmumula ito sa NAT o sa isang server na naka-configure na may panloob na address.

Suriin ang hanay ng port at ang patakaran ng tunnel

Ang mga passive server ay naglalaan ng data port mula sa naka-configure na hanay, at ang hanay na iyon ay dapat payagan sa VPN at anumang firewall sa daan. Ang patakarang nagpapahintulot sa 21 at wala nang iba ay patakaran para sa pag-log in lamang. Kumpirmahin ang hanay sa mga nagpapatakbo ng server, pagkatapos ay subukan ang isang port mula rito sa halip na ipagpalagay na ang buong hanay ay pareho ang kilos.

Pinapahirap ito ng mga naka-encrypt na control channel, dahil hindi na maisusulat muli ng isang middlebox ang inihayag na address habang lumilipad.

Alamin kung kailan nakakatulong ang EPSV o isang fallback

Nagbabalik ang EPSV ng port na walang hiwalay na address, na nag-aalis ng kabiguan sa maling address kapag parehong sinusuportahan ito ng dalawang dulo. Ang ilang client ay maaari ring sabihan na huwag pansinin ang inihayag na address at gamitin muli ang destinasyon ng control connection. Pareho silang lehitimong kasangkapan na nakatuon sa isang partikular na topolohiya, hindi isang pangkalahatang lunas.

Huwag i-disable ang TLS para lang masuri ng isang helper ang session. Ipinagpapalit niyon ang gumaganang protocol para sa sirang threat model.

Kumpirmahin sa isang listahan at isang paglilipat

Pagkatapos magbago ang patakaran sa address o port, magbukas ng bagong session sa parehong VPN path at maglista ng direktoryo. Pagkatapos ay maglipat ng maliit na file, dahil ang isang listahan at isang paglilipat ay maaaring tumahak ng magkaibang code path sa ilang server. Suriin ang log ng client para sa data connection sa inaasahang address at port, at kumpirmahin na dumating ang mga byte.

Panatilihing hiwalay sa isip mo ang FTP, FTPS at SFTP habang ginagawa ito. Ang pagbabago ng passive port ay hindi setting ng SFTP, at hindi ito nagdadala sa ibang mga protocol.

Kaugnay na mga artikulo