Кліент FTP можа прыняць каманду put задоўга да таго, як сервер атрымае файл, і менавіта ў прамежку паміж гэтымі дзвюма падзеямі хаваецца большасць загадак выгрузкі. Павінны завяршыцца чатыры этапы: лакальны файл чытаецца, сервер прымае запыт на захоўванне, злучэнне даных пераносіць байты, а перадача дасягае канчатковага станоўчага адказу. Параўноўваць этапы карысней, чым параўноўваць кліенты, бо працоўны ўваход і паявіўшаеся імя файла абодва спыняюцца да фінішу.

Папярэдні адказ супраць канчатковага

Для STOR адказ 125 або 150 з'яўляецца папярэднім. Ён кажа, што сервер гатовы паспрабаваць і што злучэнне даных адкрываецца, а не што аб'ект існуе ў канчатковай форме. Аперацыя завершана толькі тады, калі перадача дасягае станоўчага адказу аб завяршэнні, звычайна 226 або 250, у кантэксце гэтай аперацыі.

426 азначае, што перадача была перапынена, і нумар, надрукаваны іншай камандай, не з'яўляецца вынікам гэтай выгрузкі. Чытайце адказ, які належыць STOR, а не апошні нумар на экране. Калі кліент выходзіць да прыходу гэтага адказу, у вас зусім няма доказаў завяршэння.

Кіравальнае злучэнне супраць злучэння даных

Аўтэнтыфікацыя і спіс каталога выкарыстоўваюць кіравальнае злучэнне. Байты выкарыстоўваюць асобнае злучэнне даных, і яго канцавы пункт узгадняецца для кожнай перадачы. Паспяховы ўваход даказвае кіравальны шлях і нічога не кажа пра тое, ці дасягальны адрас даных з кліента.

Калі сервер не можа адкрыць злучэнне даных, даследуйце узгоднены канцавы пункт і дазволены шлях. Пасіўны рэжым па-ранейшаму патрабуе прыдатнага адраса даных і порта, а міжсеткавы экран або прылада NAT паміж кліентам і серверам могуць дазволіць кіравальны сеанс, блокуючы дыяпазон даных. Калі ж сервер адхіляе запыт на захоўванне, глядзіце на аддаленае імя шляху, правы або абмежаванні сховішча. Ні адна з галін не тлумачыцца тым, што кіравальнае злучэнне прайшло аўтэнтыфікацыю.

FTP праз TLS супраць SFTP

FTP праз TLS — гэта ўсё яшчэ FTP: два злучэнні, адказы FTP і абнаўленне TLS на кожным. SFTP — гэта падсістэма SSH з адным злучэннем і цалкам іншым наборам каманд. Яны маюць агульную мэту і амаль больш нічога, таму дыягностыка, якая пераходзіць паміж імі, звычайна пачынаецца з параўнання не тых журналаў.

Не адключайце TLS, каб прамежкавы памочнік мог агледзець сеанс, і не стаўцеся да збою SFTP як да праблемы з адказамі FTP. Дапаможнік curl апісвае яўны TLS, пасіўны рэжым і параметры выгрузкі, калі вам патрэбны сцэнарны тэст, і ён з'яўляецца даведнікам па тым, што насамрэч змяняе кожны сцяг.

Выберыце пратакол, які паслуга фактычна прапануе, перш чым адладжваць яго. Сервер, які размаўляе толькі па SFTP, ніколі не выдасць адказ 226, як бы ні быў наладжаны кліент.

Бачнае імя файла супраць захаванага аб'екта

Бачнае імя файла можа прадстаўляць няпоўны аб'ект, асабліва пасля перапыненай перадачы або кліента, які выйшаў занадта рана. Папрасіце ўладальніка паслугі параўнаць памер меркаванага тэставага файла і давераны хэш змесціва з захаваным аб'ектам, калі чакаецца захаванне байтаў.

Бінарны і ASCII рэжымы — яшчэ адно параўнанне, якое змяняе вынік. Рэжым ASCII можа пераўтвараць канцы радкоў, таму захаваныя байты адрозніваюцца ад лакальнага файла, хоць перадача і ўдалася. Пакіньце бінарны рэжым для пабайтавай праверкі і не дадавайце параметры пераўтварэння, каб няўдалая перадача выглядала інакш.

Звычайны STOR можа замяніць існуючы файл, а дазвол на ўваход або прагляд каталога не дае права ствараць або замяняць аб'ект у ім. Для тэсту выкарыстоўвайце раней не выкарыстанае аддаленае імя.

Што параўнаць перад паўторнай спробай

Не дапісвайце, не аднаўляйце і не паўтарайце выгрузку наўздагад па няпэўным частковым файле. Дагаварыцеся з уладальнікам, ці перазапускаць пад новым імем, ці выкарыстоўваць падтрымліваемую паслугай працэдуру аднаўлення, ці выдаліць няўдалы тэставы аб'ект.

Запішыце вынік як адзін з чатырох сцверджанняў: лакальнае чытанне не ўдалося, у захоўванні адмоўлена, перадача даных перапынена або перадача завершана і захаваныя байты супалі. Гэты запіс — мацнейшы вынік, чым мяняць абалонку, VPN і налады FTP разам, пакуль не паявіцца імя файла, і ён падказвае наступнаму чалавеку, які этап правяраць. Захавайце ачышчаны тэкст адказу разам з гэтым сцверджаннем. Тады паўторная спроба — рашэнне, а не рэфлекс.

Падобныя артыкулы