Рутерът като SMB клиент срещу препращач на пакети: кой вариант е подходящ
Препращането на SMB трафик и монтирането му са различни роли. Проверете идентификационните данни, поддръжката на ядрото и обработката на откази, преди рутерът да стане клиент.
Препращането на SMB трафик не е същата задача като прекратяването му и рутер, който прави едното, може да не се справя с другото. Препращането означава, че рутерът мести пакети, чието съдържание никога не разчита. Монтирането означава, че рутерът става файлов клиент, със софтуер, който може да не носи, идентификационни данни, които трябва да пази, и режими на отказ, които вече притежава. Изборът между двете е въпрос за това къде са необходими файловете, а не за това какво може да бъде убедена да инсталира платформата за маршрутизация.
Препращането и прекратяването са различни задачи
В ролята на препращане рутерът има едно задължение: да доставя пакети между клиента и сървъра, като прилага каквато политика изисква пътят. Той не се удостоверява пред споделения ресурс, не кешира файлови данни и не го интересува дали сървърът говори SMB2 или SMB3, защото никога не чете толкова навътре в потока. Ако ресурсът стане недостъпен, потребителят вижда грешка и рутерът продължава да маршрутизира.
В ролята на клиент рутерът се включва в разговора по протокола. Той договаря диалект, удостоверява се, разрешава имена, държи точка на монтиране и представя локален изглед на файлова система на всичко, което работи над него. Това е реална услуга с жизнен цикъл и тя превръща шлюза в зависимост на файловия работен процес. Той наследява и всеки режим на отказ на тази зависимост, включително изчаквания при зареждане и остарели идентификационни данни.
Сравнението не е само за възможности. Платформа, която може да монтира ресурс, не е автоматично платформа, която трябва да го прави, а платформа, която не може да го монтира, може да е точното място за маршрутизиране на трафика.
Какво всъщност е нужно за монтиране на CIFS в ядрото
На устройство с Linux CIFS клиентът в ядрото и клиентът в потребителското пространство са отделни възможности и малките образи често не включват нито една. Поддръжката на ядрото трябва да присъства в работещия образ, помощникът за монтиране трябва да съществува, а SMB диалектът, договорен със сървъра, трябва да е такъв, какъвто приемат и двете страни. Правилната справка е ръководството за CIFS клиент в Linux, което описва устройството на ядрото и неговите опции за монтиране, преди да приемете, че доставчикът я включва.
Проверете за възможността, преди да проектирате около нея, и проверете версията, а не наличието на име на команда. Име на модул в списък с пакети не е същото като работещ клиент.
lsmod | grep -w cifs
modinfo cifs | head -5
mount.cifs --version
smbclient -L //fs02.corp.internal -U svc-router -m SMB3Модул в ядрото, който се зарежда, и инструмент в потребителското пространство, който отчита версия, все още не гарантират, че монтирането ще преживее подмяна на ключове на VPN, затова третирайте проверката като начално условие, а не като доказателство. Ако образът доставя само поддръжка на SMB1, това е причина да спрете, а не причина да го включите на сървъра.
Идентификационните данни и идентичността на източника се различават от тези на лаптоп
Препредадената заявка носи идентичността на лаптопа през тунела, докато заявка, създадена на рутера, носи собствения адрес на източника на рутера, пътя на резолвера и филтрирането на изхода. Те могат да попаднат в друго правило на защитна стена, друг изглед на DNS и друг списък с разрешения от страна на сървъра. Затова копие, което работи от работна станция, не доказва нищо за собственото монтиране на рутера. Тествайте монтирането от собствената обвивка на рутера, а не от работна станция зад него.
Дайте на рутера тясно овластена идентичност на услуга, ако ролята въобще е одобрена. Никога не поставяйте парола директно в командния ред за монтиране, защото тя остава в историята на обвивката и се появява в таблицата на процесите, докато монтирането работи.
Съхранявайте идентификационните данни чрез защитения механизъм на платформата и ги четете от файл с ограничени права. Този файл трябва да е нечетим за всеки акаунт освен този, който изпълнява монтирането.
install -m 600 /dev/null /etc/cifs-reports.creds
printf 'username=svc-router\npassword=REPLACE_ME\ndomain=CORP\n' > /etc/cifs-reports.creds
mount -t cifs //fs02.corp.internal/reports /mnt/reports -o credentials=/etc/cifs-reports.creds,vers=3.1.1,roКой притежава отказа, когато ресурсът изчезне
Липсващата отдалечена файлова система се държи различно от липсващ маршрут. Монтирането може да блокира процеси, които го докосват, може да се провали при зареждане преди тунелът да съществува, а запис, предназначен за сървъра, може да попадне на грешно място, ако под точката на монтиране има локална директория. Това са откази на съхранението, които сега се притежават от мрежовия екип, независимо дали екипът ги е искал. Никой не се е съгласил с това притежание, но то идва заедно с монтирането.
Проектирайте реда на зареждане и опциите за монтиране около тази реалност. Монтиране само за четене с кратък таймаут и документирана стъпка за възстановяване е по-лесно за защита от монтиране за запис, от което зависи всичко останало. Потвърдете, че тунелът се вдига, преди нещо да се опита да монтира, иначе първото зареждане след спиране на тока ще зацикли.
За сериозна обработка на файлове или за всичко, което преизнася данните нататък, отделен хост обикновено дава по-ясна граница на собственост. Рутерът продължава да маршрутизира, а файловият работен процес получава машина, която може да бъде рестартирана, без да отнесе мрежата със себе си.
Проверете решението срещу действителната задача
Запишете коя задача се нуждае от файловете и къде работи тази задача. Ако отговорът е работна станция, маршрутизирайте ресурса и спрете дотам. Ако отговорът е услуга на устройството, потвърдете възможността на клиента, поддържания диалект и пътя на идентификационните данни преди първото монтиране, после решете дали устройството наистина е правилният хост.
Проверете монтирания изглед и свободното място от самия рутер, защото там работното натоварване ще ги види. Повторете проверката след повторно свързване, а не само след чисто зареждане.
findmnt -t cifs -o TARGET,SOURCE,OPTIONS
df -h /mnt/reports
ls -l /mnt/reports | headМонтиране, което изброява файлове, но отчита пълна или само за четене файлова система, вече ви е казало с какъв отказ ще се срещнете в 2 часа през нощта. Потвърдете и пътя за възстановяване: демонтирайте чисто, спуснете тунела, върнете го и монтирайте отново, без да рестартирате устройството. Ако тази последователност изисква случай в поддръжката всеки път, рутерът е грешното място за ролята на клиент.