ͨ¹ýPHPÐÞ¸ÄLinux»òUnix¿ÚÁîµÄ·½·¨·ÖÏí

5年以前  |  阅读数:745 次  |  编程语言:PHP 

ÐeÒªµÄ¹¤¾ßºÍ°²×°:

¡¡¡¡Äa±ØÐe°²×°ÏÂÃaeµÄ¹¤¾ßºÍÈi¼þ:

¡¡¡¡¨CÐ޸ĿÚÁiµÄShell½Å±¾;

¡¡¡¡¨C Sudo*ÃÎÊȨ;

¡¡¡¡¨C Apache or Lighttpd web*þÎñÆ÷;

¡¡¡¡¨C PHP*þÎñ¶Ë³ÌÐo¡£

¡¡¡¡²½Öe1:°²×°¿ÉÒÔÐÞ¸ÄÓû§¿ÚÁiµÄshell½Å±¾

¡¡¡¡¸Ã½Å±¾¿ÉÒÔʵ¼ÊÓÃÓÚÐÞ¸ÄLinuxÓû§µÄ¿ÚÁi(ÒÑÔÚLinuxºÍFreeBSD²aÊÔ)¡£

¡¡¡¡Àý×Ó: shell½Å±¾´uÂe

¡¡¡¡#!/bin/sh # \ exec expect -f ¡°$0¡a ${1+¡±$@¡±} set password [lindex $argv 1] spawn passwd [lindex $argv 0] sleep 1 expect ¡°assword:¡± send ¡°$password\r¡± expect ¡°assword:¡± send ¡°$password\r¡± expect eofÔËÐÐshell½Å±¾(ÏÂÔØÁ´½Ó)£º

¡¡¡¡$ chpasswd username passwordÏÂÔظýű¾,È»ºo¿½±´µ½ÄaµÄweb¸uĿ¼»oÕßweb*þÎñÆ÷µÄÆaËuλÖÃ(Óû§¿É¶Á):

¡¡¡¡$ cp chpasswd /var/www/»oÕß,Èç¹uÄaʹÓÃLighttpd web*þÎñÆ÷:

¡¡¡¡$ cp chpasswd /home/lighttpd²½Öe2:ͨ¹ýsudoÒÔrootÉi*ÝÖ´ÐÐÃuÁi

¡¡¡¡Apache»oLighttpd webþÎñÆ÷½øÈeºǫÔËÐкo»aÂiÉÏʹÓÃÇrootȨÏÞ¡£ÕaÑu¿ÉÒԺܺõÄ*ÀÖ¹¿ÚÁiÐÞ¸Ä,¾ÍÏñpasswdÃuÁiÐeÒªrootȨÏÞ²ÅÄÜÐÞ¸ÄÆaËuÓû§ÕʺŵĿÚÁi¡£

¡¡¡¡Í¨³£, Apache 2ʹÓÃwww-dataÓû§, LighttpdʹÓÃlighttpdÓû§(½ÔΪÆÕͨÓû§,*ÇrootÓû§)¡£Ê¹ÓÃrootÓû§µÇ½,È»ºoÖ´ÐÐÏÂÃaeµÄÃuÁi:

¡¡¡¡# visudoÏÖÔÚÄaµÄwebþÎñÆ÷ÔÊÐiÖ´ÐпÚÁiÐ޸Ľű¾(chpasswd)¡£Èç¹uÄaʹÓÃApache webþÎñÆ÷,Ö´ÐÐÏÂÃaeµÄÃuÁi:

¡¡¡¡www-data ALL=NOPASSWD: /var/www/chpasswd»oÕß,Èç¹uÄaʹÓÃLighttpd web*þÎñÆ÷,Ö´ÐÐÏÂÃaeµÄÃuÁi:

¡¡¡¡httpd ALL=NOPASSWD: /home/lighttpd/chpasswd±£´aeºÍÍ˳oÎļþ¡£

¡¡¡¡²½Öe3.´´½¨Ò»¸o»uÓÚPHPµÄ½Ó¿Ú

¡¡¡¡ÏÖÔÚÄaÐeҪдһ¸ophp½Å±¾¡£ÕaÀiÓÐÒ»¸ophp½Å±¾ÊµÀý¡£Äa¿ÉÒÔ¸u¾ÝÄaµÄÐeÒªÀ´Ð޸ġ£ÖÁÉÙÄaÐeÒªÕýÈ*ÉeÖúõÄshell½Å±¾Î»Öᣴo¿ªphp½Å±¾ºÍÕÒµ½shellscriptÒ»ÐÐ:

¡¡¡¡$shellscript = ¡°sudo /home/lighttpd/chpasswd¡±;ÐÞ¸ÄshellscriptÖ¸Ïoµ½ÕýÈ*µÄλÖá£PHPµÄÔ´´uÂe´ÓÕaÀiÏÂÔØ:

¡¡¡¡²½Öe4:ÔËÐнű¾

¡¡¡¡ÔÚÄaµÄweba¯ÀÀÆ÷µØÖÀ¸ÊaÈeÍøµØÖ£¬Äa½«»a¿´µ½Óû§ÃuºÍ¿ÚÁiÌaʾ:

¡¡¡¡Èç¹u¿ÚÁiÐ޸ijɹ¦,Äa»aµÃµ½µÄÈ*ÈÏÌaʾ:

¡¡¡¡ÓÉÓÚÒ»Ð(C)Ô­Òo,Èç¹u¿ÚÁiÐÞ¸Äʧ°Ü,Äa¿ÉÒԲο¼ÏÂÃaeÌaʾ»ñµÃ¸u¶aÏeϸµÄ´iÎoÐÅÏ¢:

¡¡¡¡²½Öe5:°²È«

¡¡¡¡¡oÓÀÔ¶²»ÒªÍ¨¹ýhttpЭÒeÖ±½ÓÔËÐÐÉÏÃaeµÄ½Å±¾.¶øÊÇʹÓÃhttpsЭÒe¡£

¡¡¡¡¡o°Ñ½Å±¾*ÅÈeµ½ÊÜ¿ÚÁi±£»¤µÄĿ¼¡£

¡¡¡¡¡oÓÀÔ¶²»ÒªÐÅÈÎÓû§µÄÊaÈe¡£ÉÏÃaeµÄphp½Å±¾Ö»ÊÇÒ»¸oÀý×Ó¡£ÔÚÏÖʵµÄÉu²u»¾³ÖÐ,ÄaÐeÒª¿¼ÂDzÉÓøuÇ¿´oµÄÓû§ÊaÈeÈÈÏ¡£ÌÖÂÛPHP±a³ÌµÄ°²È«³¬³oÁ˱¾ÎĵÄ*¶Î§¡£Äa¿ÉÒԲο¼Ò»±¾ºÃµÄPHPÊe¼®»oÕßʹÓÃÄaϲ»¶µÄËÑË÷ÒýÇaeËÑË÷Ïa¹ØµÄÍøÕ¾¡£

 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例