Домаќин извезува директориум на VPN адреса, монтирањето успева и проектот се запишува како автентификуван. Она што тоа правило навистина го ограничува е од каде изгледа дека доаѓаат пакетите. Дали лицето што ја води датотечната операција е тоа што тврди дека е зависи од безбедносниот профил на NFS, а кај повеќето вакви извози никој не го сменил од стандардниот.

Три идентитети можат да се појават во едно барање

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

IdentityWhat it provesWhat it does not
VPN peerWhich peer was accepted by the tunnelWhich user runs on that machine
Inner source addressWhere the packet appears to originateThat only the intended client can use it
NFS credentialWhat the file service believes about the callerAnything, if the flavour only asserts local IDs

Запишувањето на тие три реда е целата вежба. Најголемиот дел од расправата дали извозот е безбеден се урива кога ќе стане јасно во кој ред живее која контрола.

Сопственоста на адресата е детаљ од имплементацијата

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

Кодот на серверот во кориснички простор на традиционалниот Community OpenVPN може, на пример, да одбие извор поврзан со друг клиент пред пакетот да се достави преку уредот TUN. Тоа е проверка на сопственост на адреса со вистинска вредност, и сѐ уште не е автентификација на NFS корисник, бидејќи не кажува ништо за тоа која сметка ја врши операцијата.

Преводот на изворот ја нагризува дури и таа. NAT порта може секој клиент да го претстави како една адреса, и тогаш правилото за извоз не може да ги разликува луѓето зад неа. Привидната прецизност на правилото тогаш станува фикција што ја одржува дијаграмот. Ако извозот е важен, држете го адресирањето експлицитно наместо да дозволите преведувач да одлучи кој се смета за кого.

Прочитајте го безбедносниот профил пред да му верувате на извозот

Упатството на Red Hat за NFS го одделува sec=sys, кој користи локални UNIX UID и GID преку AUTH_SYS, од Kerberos режимите. krb5 додава автентификација на корисник, krb5i додава заштита на интегритетот, а krb5p додава заштита на приватноста на сообраќајот.

Акредитивите на AUTH_SYS содржат полиња како UID на повикувачот и идентификатори на групи, и RFC 5531 јасно предупредува дека овој профил сам по себе не дава безбедност и зависи од надворешна заштита. Неговото извршување внатре во VPN дава заштита за транспортот и не менува ништо во тврдењето внатре во пакетот.

exportfs -v
showmount -e nfs.example.internal

Прочитајте го профилот во тој излез пред да ја прочитате списокот со клиенти. Извоз што изгледа ограничен може да биде ограничен само по адреса, додека секој повикувач сѐ уште тврди кој и да е UID.

Изберете модел, потоа задржете ги дозволите

Изберете модел на автентификација на датотечната служба што одговара на клиентите што навистина ги администрирате. Kerberos бара идентитет и распоредување на служба зад него, така што менувањето на една опција за монтирање не е миграција и едноставно ќе пропадне додека не постојат Kerberos доменот, главните субјекти и keytab датотеките.

Во двата модели, задржете ги дозволите за извоз и авторизацијата на датотечниот систем што ограничуваат што смее да прави автентификуваниот главен субјект. Автентикацијата ви кажува кој прашува; авторизацијата одлучува дали одговорот треба да биде да. Спојувањето на двете во една поставка е начинот на кој миграцијата на крајот дава повеќе отколку што даваше старата конфигурација.

Користете го правилото за адреса за неговата вистинска цел

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

Проверете дали друг интерфејс или порта со превод на извор не може неочекувано да го задоволи правилото, и третирајте го тоа како причина да се утврди потеклото, а не како тврдење дека фалсификувањето адреса гарантира работно монтирање.

Спроведете три случаи на прифаќање наместо еден. Започнете со одобрен клиент што дејствува како одобрен корисник, потоа повторете од партнер што никогаш не бил одобрен, и потоа обидете се со нешто што одобрениот корисник сѐ уште не смее да го прави. Потоа прашајте што се менува ако авторизиран клиент биде компромитиран, бидејќи автентикацијата на транспортот не ја прави секоја процес на таа машина доверлива. Украден сертификат и љубопитна локална сметка се различни проблеми со различни контроли.

Поврзани статии