VPN түймесі әкімшіде жұмыс істейді, қалғандарында істемейді, сондықтан біреу sudoers-қа жол қосады. Ол жол әдетте шешуге тиіс мәселеден ұзағырақ өмір сүреді және түймеге қажеттен көп құқық береді. Саясатты өңдеуден бұрын қолдау көрсетілетін қосылым иесінің бұл жұмысты қазірдің өзінде орындай алатынын тексеріңіз. Төмендегі үш шарт sudo-ның тіпті қатысатынын анықтайды.

1-шарт: қолдау көрсетілетін ие мұны sudo-сыз істей алады

Көптеген Linux жұмыс үстелдерінде желі менеджері VPN қосылымдарының иесі болып табылады және оның авторизациясы sudo емес, polkit арқылы өтеді. Қосылымды көтеруге рұқсат етілген пайдаланушы мұны ешбір root ережесінсіз пәрмен жолынан жасай алады. Түймеге артықшылық керек деп ойламас бұрын менеджердің неге рұқсат беретінін тексеріңіз. Жауап иә болса, sudoers өзгерісі жоқ мәселені шешіп жатыр.

nmcli connection show
nmcli connection up "Work VPN"

Егер менеджер бас тартса, себебін оқыңыз: жетіспейтін polkit ережесі, басқа пайдаланушыға тиесілі қосылым немесе пайдаланушы оқи алмайтын жерде сақталған профиль. Олардың әрқайсысында sudo ережесінен тар қолдау көрсетілетін шешім бар. Артықшылықты көтеру — соңғы шара, бірінші емес.

2-шарт: ереже бір орындалатын файлды және оның аргументтерін атайды

Егер sudo шынымен қажет болса, ереже нақты пәрменді және мүмкін болса, оның пайдалана алатын аргументтерін атауы керек. Пайдаланушыға қаптама скриптін іске қосуға рұқсат беретін ереже сол скрипттің құқықтарындай ғана қауіпсіз, өйткені пайдаланушы root орындайтын нәрсені өңдей алады. Пәрменнен кейін кез келген таңба қойылған ереже — сол мәселенің қысқа түрі.

sudo -l -U alice
ls -l /usr/local/sbin/vpn-up

Пәрмен тізбегіндегі әрбір жолды тексеріңіз: бинарлық файлды, ол шақыратын скриптті, ол оқитын конфигурация файлын және олардың арасындағы кез келген қалтаны. Егер олардың кез келгеніне пайдаланушы жаза алса, шектелген ереже іс жүзінде шексіз root болып табылады. Аргументтер де маңызды, өйткені конфигурация жолын қабылдайтын пәрменді пайдаланушы басқаратын файлға бағыттауға болады. Ережені түйме үшін емес, операция үшін жазыңыз.

Егер пәрмен жұмыс істеу үшін пайдаланушы басқаратын файл қажет болса, тоқтаңыз. Онда дизайн қате, және ешбір sudoers синтаксисі оны қауіпсіз ете алмайды.

3-шарт: бүкіл саясат талданады, тек сіздің жолыңыз емес

Файлды құлыптайтын және синтаксисті тексеретін редактормен тексеріңіз және үзінді емес, жиналған саясатты тексеріңіз. Өздігінен талданатын файл да қосылу ретін бұзуы немесе ережені мінез-құлықты өзгертетіндей қайталауы мүмкін.visudo нұсқаулығы құлыптайтын редакторды да, осында қолданылатын тек-тексеру режимін де сипаттайды.

sudo visudo -c
sudo visudo -cf /etc/sudoers.d/vpn-launcher

Тексеру сәтсіз болса, файл мен жолды хабарлайды, және дәл сол есеп пайдалы бөлігі. Белгілі қатені күштеп сақтаудың орнына редактор арқылы көзделген өзгерісті түзетіңіз, өйткені бұзылған саясат барлық әкімшілерді бір уақытта құлыптауы мүмкін. Қосылу қалтасындағы файлдарға да нұсқаулық талап ететін меншік пен режим қажет, әйтпесе олар еленбейді немесе қабылданбайды. Синтаксис — тек бірінші қақпа: одан өткен соң ережені қайта оқып, оның шын мәнінде неге рұқсат беретінін сұраңыз.

Егер өзгерістің жұмыс істеуінің жалғыз жолы синтаксис тексеруін өшіру болса, тоқтаңыз. Ол саясат емес, қайта жүктеуді күтіп тұрған іркіліс.

Қалпына келтіру: әлі жұмыс істейтін сессияны сақтаңыз

Сақтамас бұрын өкілетті әкімшілік сессияның әлдеқашан ашық екеніне және машинаға кіретін екінші жолдың бар екеніне көз жеткізіңіз. sudoers қатесі оны түзету мүмкіндігіңізді алып қоюы мүмкін, ал жұмыс үстеліндегі түйме бұл тәуекелге тұрарлық емес. Егер sudo әлдеқашан бұзылса, өзіңіз ойлап тапқанның орнына жүйенің құжатталған қалпына келтіру жолын пайдаланыңыз.

sudo -n true
id

pkexec сияқты баламалар өз орнатуы мен саясатына тәуелді, сондықтан олар кепілдендірілген екінші root сұранысы емес. Жергілікті авторизацияны VPN құпиясын беруден де бөлек ұстаңыз: sudo ережесі жоқ құпия агентін аша алмайды және шлюздің MFA-сын қанағаттандырмайды. Түзетуден кейін қарапайым тіркелгіні тек көзделген операцияны орындаумен сынап көріңіз, содан кейін менеджердің қарапайым басқару элементтерін пайдаланыңыз.

Шешім қай шарттың sudo-ны ақтағанын, ереженің нені атайтынын, бүкіл саясаттың талданатынын және олай болмаса қалай қалпына келтіретініңізді айта алатын кезде аяқталады. Әкімшілік қатынасыңызды жоғалтуға әкелетін артықшылықты іске қосқыш — нашар мәміле, және одан әдетте аулақ болуға болады.

Қатысты мақалалар