Примаоци који не могу да отворе преузету датотеку често чују да ју је VPN оштетио. То је хипотеза, а не запажање, и она је проверљива. Пре него што дотакнете тунел, утврдите да ли се објекат који је сада сачуван на одредишту разликује од објекта који је требало послати. Све остало следи из тог одговора.

Почните од предвиђених бајтова, а не од притужбе

Изаберите безопасну датотеку која репродукује проблем, или праву датотеку ако политика дозвољава да напусти изворно окружење. Забележите две ствари пре преноса: тачну величину у бајтовима и модеран хеш садржаја. Називи датотека, временске ознаке и прегледи су метаподаци, и ниједан од њих не идентификује садржај.

Израчунајте хеш алгоритмом који обе стране могу да покрену и запишите који сте користили. Поређење између SHA-256 и MD5 није поређење, а ни поређење између две различите датотеке које случајно деле назив.

PS> Get-FileHash -LiteralPath "C:\uploads\report.csv" -Algorithm SHA256
Hash                                                        Path
----                                                        ----
9F2C...                                                      C:\uploads\report.csv

Microsoft-ова референца за Get-FileHash документује команду и њен параметар алгоритма, управо део који људи прескоче када поређење произведе бесмислено неслагање.

Један хеш по фази, исти алгоритам

Сада израчунајте исти алгоритам на сачуваном објекту тамо где он коначно живи, овлашћеном методом, а не на копији која је прошла кроз други алат. Чување примљене датотеке локално и хеширање те копије додаје корак који нисте тестирали.

Ако услуга излаже сопствену вредност интегритета, третирајте је као одвојено запажање. Контролна сума коју пријављује пружалац може вам рећи шта пружалац мисли да је сачувао, и то није иста тврдња као оно што је послао ваш клијент.

Могућа су три исхода и она показују у различитим смеровима. Једнаки хешеви значе да су бајтови стигли непромењени. Различити хешеви са познатом конверзијом значе да је услуга намерно произвела нови објекат. Различити хешеви без конверзије значе да је нешто између две тачке променило садржај, а следећи корак је пронаћи најранију границу на којој се то догодило.

Одвојите неуспех преноса од трансформације

Делимичан пренос и оштећен пренос изгледају идентично у прегледачу датотека и различите су грешке. Проверите да ли је пренос завршен: записник апликације који показује прекинут захтев, сачувана датотека чија је величина префикс извора, или објекат који је заправо страница грешке сачувана под очекиваним наставком, све то указује на непотпун пренос, а не на измењене бајтове.

Трансформација је друго уобичајено објашњење. Услуга која поново компресује слике, преписује завршетке редова CSV-а или конвертује документ законито ће произвести хеш који се разликује од извора, и то није оштећење. Упоредите фазу која тврди да је верна копија, а не коначни формат презентације.

Кашњење и губитак припадају трећој категорији. Они могу натерати клијента да истекне, покуша поново или одустане, и ништа од тога не имплицира да су бајтови које је сервер прихватио тихо промењени. Погледајте резултат преноса пре него што било шта припишете тунелу.

Испробајте други пут без мењања свега

Ако се хешеви заиста разликују и нема конверзије, поновите исту датотеку, клијента, протокол и одредиште преко другог подржаног пута, попут локалне мреже уместо VPN-а. Промените једну променљиву. Мењање клијента, крајње тачке и алата одједном даје вам резултат који не можете приписати.

Нека поређење остане поштено у оба смера. Хеш вам каже да се две тачке разилазе или слажу око садржаја; не каже вам која је страна поуздана, зато чувајте очекивану вредност и верификацију унутар модела поверења на који се заиста ослањате.

Завршите конкретном реченицом у тикету: пренос је стао рано, апликација је трансформисала објекат, складиште га је променило, или се бајтови слажу и читање их је квар. Сваки од тих има другог власника, и ниједан од њих није VPN по подразумеваном.

Повезани чланци