Հոդվածների տեղեկատու
Օգտագործման մեջHestiaCPՁեր սերվերը կառավարելիս երբեմն ձեզ հարկավոր է միացնել որոշ PHP գործառույթներ, որոնք անջատված են լռելյայնորեն, ինչպիսիք են shell_exec, passthru, system և exec:
Այս գործառույթները շատ հզոր են, բայց դրանք նաև որոշակի անվտանգության ռիսկեր են պարունակում, ուստի դրանք միացնելուց առաջ համոզվեք, որ ձեր սերվերի միջավայրն ապահով է և թույլ է տալիս մուտք գործել միայն վստահելի օգտատերերին:
Ինչու՞ պետք է միացնեմ այս PHP գործառույթները:
Այս գործառույթները շատ օգտակար են որոշակի իրավիճակներում:
Օրինակ, երբ միացնում եք որոշակիWordPress pluginԱյս գործառույթները կարևոր են, երբ դա պահանջում են որոշակի պայմաններ, կամ երբ դուք պետք է կատարեք որոշ համակարգի հրամաններ սերվերի վրա:
Այնուամենայնիվ, այս գործառույթները նաև պոտենցիալ անվտանգության ռիսկեր են պարունակում:
Սխալ օգտագործումը կարող է հանգեցնել սերվերի հարձակումների, ուստի խնդրում ենք զգույշ լինել:
Խմբագրել php.ini ֆայլը
Այս գործառույթները միացնելու համար նախ պետք է խմբագրել php.ini ֆայլը:
Սա PHP-ի կազմաձևման ֆայլն է, որը վերահսկում է PHP-ի տարբեր կարգավորումները:

Քայլ 1. Գտեք php.ini ֆայլը
HestiaCP-ում կարող եք գտնել և խմբագրել php.ini ֆայլը հետևյալ ճանապարհով.
- Մուտքագրեք HestiaCP կառավարման վահանակ:
- Նավարկեք դեպի սերվերի կարգավորումներ:
- Սեղմեք Խմբագրել PHP ծառայությունը (մատիտի պատկերակը հայտնվում է, երբ սավառնում եք ծառայության անվան վրա):
- Ընտրեք առաջադեմ ընտրանքներ:
Այստեղ դուք կարող եք փոփոխել php.ini ֆայլը:
Քայլ 2. Փոփոխել disable_functions կարգավորումները
php.ini ֆայլում կա մի պարամետր, որը կոչվում է disable_functions:
Այս պարամետրը սահմանում է, թե որ PHP գործառույթներն են անջատված:
shell_exec, passthru, system և exec ֆունկցիաները միացնելու համար անհրաժեշտ է դրանք հեռացնել disable_functions ցանկից։
Disable_functions կարգավորումները նախքան փոփոխությունը՝
disable_functions = pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,exec,system,passthru,shell_exec,proc_open,popen
Այս կոնֆիգուրացիայում shell_exec, passthru, system և exec ֆունկցիաները անջատված են։
Փոփոխված disable_functions կարգավորումները՝
disable_functions = pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,proc_open,popen
Այս կոնֆիգուրացիայում shell_exec, passthru, system և exec ֆունկցիաները հեռացվել են, այդպիսով ակտիվացնելով այս ֆունկցիաները։
Քայլ 3. Պահպանեք փոփոխությունները
Փոփոխություններն ավարտելուց հետո պահպանեք php.ini ֆայլը։
Համոզվեք, որ բոլոր փոփոխությունները ճիշտ են պահպանվել, որպեսզի նոր կազմաձևումը հնարավոր լինի կիրառել:
Վերագործարկեք PHP ծառայությունը
php.ini ֆայլը փոփոխելուց և պահպանելուց հետո անհրաժեշտ է վերագործարկել PHP ծառայությունը, որպեսզի փոփոխություններն ուժի մեջ մտնեն:
Դուք կարող եք վերագործարկել PHP ծառայությունը՝ հետևելով հետևյալ քայլերին.
- Վերադարձ դեպի HestiaCP կառավարման վահանակ։
- Նավարկեք դեպի սերվերի կարգավորումներ:
- Ընտրեք PHP ծառայությունը և սեղմեք Վերագործարկեք:
Ստուգեք կազմաձևը
PHP ծառայությունը վերագործարկելուց հետո կարող եք ստուգել, որ այս գործառույթները միացված են՝ գործարկելով պարզ PHP սկրիպտը:
Օրինակ, կարող եք ստեղծել PHP ֆայլ հետևյալ բովանդակությամբ.
<?php
echo shell_exec('echo Hello World');
Այնուհետև մուտք գործեք ֆայլ բրաուզերի միջոցով, եթե ելքը «Hello World» է, դա նշանակում է, որ shell_exec ֆունկցիան միացված է:
Անվտանգության խորհրդատվություն
Չնայած այս գործառույթները միացված են, զգույշ եղեք:
Համոզվեք, որ ձեր սերվերը ապահով է, և միայն վստահելի օգտվողներն ունեն մուտք դեպի այս գործառույթները:
Պարբերաբար թարմացրեք սերվերըԾրագրակազմև օգտագործեք ուժեղ գաղտնաբառեր և անվտանգության այլ միջոցներ՝ ձեր սերվերը պաշտպանելու համար:
ամփոփում
Այս հոդվածը բացատրում է, թե ինչպես միացնել shell_exec, passthru, system և exec PHP ֆունկցիաները HestiaCP-ում։
Թեև այս գործառույթները շատ հզոր են, դրանք նաև անվտանգության ռիսկեր են պարունակում:
Հետևաբար, այս գործառույթները միացնելիս համոզվեք, որ ձեր սերվերն ապահով է և թույլ է տալիս մուտք գործել միայն վստահելի օգտվողներին:
Հուսով եմ, որ այս հոդվածը կարող է օգտակար լինել ձեզ համար, եթե հարցեր ունեք, խնդրում ենք ազատ զգալ կապվել ինձ հետ:
Հույս Chen Weiliang բլոգ ( https://www.chenweiliang.com/ HestiaCP-ի կողմից հրապարակված «Ինչպե՞ս միացնել PHP shell_exec, passthru, system, exec ֆունկցիաները» հոդվածը կարող է օգտակար լինել ձեզ համար։
Բարի գալուստ՝ կիսելու այս հոդվածի հղումը.https://www.chenweiliang.com/cwl-31853.html
