免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 5213 | 回复: 13
打印 上一主题 下一主题

PHP如何实现对文件特定内容修改,并执行一些服务命令。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-07-12 15:45 |只看该作者 |倒序浏览
20可用积分
PHP如何实现对文件特定内容修改,并执行一些服务命令。

(1)FREEBSD 7.0  操作系统
(2)APACHE2.2
(3)PHP5

实现目标:对一些服务的配置文件进行修改保存,然后重新启动这个服务,使其生效。
举例: /etc/inetd.conf 就是inetd服务的配置文件,如典型的TELENET、FTP等服务。如果想找开它的FTP服务,就要把这个配置文件中的
如:有一行为:ServerName www.b2sun.com 80我可以用网页实现对这个网页及80端口的修改吗?
变成ServerName www.chinaunix.net 8280
或者是如下的行:
#FTP stream tcp nowait root  /usr/libexec/ftpd ftpd -l前面的#注释项去掉变成

FTP stream tcp nowait root  /usr/libexec/ftpd ftpd -l 然后保存这个文件
执行inetd或者是ftpd
#inetd start
#kldload ftpd 之类的就可以完成配置任务。
当然,有时也会向其中加入自己特有的内容。如:
ftp stream tcp6 nowait .....之类的。


敬请各位大侠多多指点。
下面是部分回答内容。
1。php要有权限修改inetd.conf 文件。
文件所属组和apache设置是否一样。默认都是 nobody吧
php是否安全模式运行,能否跨目录操作等。inetd.conf不会在网站目录下把
2。文件内容修改,就是读取后处理字符串,再保存。具体
$word=file('文件路径');foreach($word as $val){
//这样循环出来是文件的一行行内容,看你想怎么改一改,再组合成字符串,最后保存 file_put_contents('文件路径','文件内容');
}
3。php要能执行系统命令。exec(' 重启某服务的 freebsd命令 ');

function find ($word)
{
if (!$word)
{
return false;
}
//echo $word;
$file_handle = fopen('英文.txt', "r");
while (!feof($file_handle))
{
$line = fgets($file_handle);
if (trim($line)==$word)
{
return $line;
}

}
fclose($file_handle);
}

[ 本帖最后由 B2Sun 于 2008-7-12 15:49 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2008-07-12 16:09 |只看该作者
php运行于cgi模式吧, 然后php的文件用root属主, 并chmod 4755, 就可以直接以root身份运行, 使用system($cmd)命令可以重启那些init.d

论坛徽章:
0
3 [报告]
发表于 2008-07-12 20:49 |只看该作者
还有一种办法是用cron脚本来执行,
用php写入一个特定的文件,里面有自定义的命令格式,然后用利用计划任务的脚本来解析这个文件生成相应的系统命令来执行.

论坛徽章:
0
4 [报告]
发表于 2008-07-13 02:29 |只看该作者
大哥,可否提供一些像我推荐的那种 代码???
主要目的还是要写程序修改文件内容。OK。在此表示感谢

[ 本帖最后由 B2Sun 于 2008-7-13 02:55 编辑 ]

论坛徽章:
0
5 [报告]
发表于 2008-07-14 22:58 |只看该作者
大哥们我要的是程序改文件。OK?望我多指点。

论坛徽章:
0
6 [报告]
发表于 2008-07-15 18:27 |只看该作者
1,写一shell,执行相关操作(改配置文件,启动等),[假设用户user有执行命令的权限]
2,修改该文件的执行权限,确保user可以执行
3.visudo 加入如下内容,使nobody有执行权限
nobody localhost=(user)NOPASSWD:/path/to/myshell
4 用php来system("sudo -u user /path/to/myshell 2>&1");
第4句这样写的目的是可以打印执行结果,看是否成功或抱错

论坛徽章:
0
7 [报告]
发表于 2008-07-15 22:32 |只看该作者
还可以修改apache运行用户的权限

论坛徽章:
0
8 [报告]
发表于 2008-07-15 22:59 |只看该作者
授人以渔,不如授人以鱼

论坛徽章:
0
9 [报告]
发表于 2008-07-25 08:56 |只看该作者

论坛徽章:
0
10 [报告]
发表于 2008-07-25 09:00 |只看该作者
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP