在linux下希望让apache服务器以root用户来运行怎么做,或者想用apache的默认用户来登录linux

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在linux下希望让apache服务器以root用户来运行怎么做,或者想用apache的默认用户来登录linux相关的知识,希望对你有一定的参考价值。

在linux下希望让apache服务器以root用户来运行怎么做,我的apache的默认用户是daemon,这个用户能用来登录linux吗,想试一下这个用户是不是有权限运行一些shell脚本,内部用,不存在安全问题。

我的Ubuntu下如下配置就可以了:
sudo vi /etc/apache2/envvars
将下面2行改成普通能够登陆系统的账户就可以了,比如
export APACHE_RUN_USER=qunero #设置用户为qunero
export APACHE_RUN_GROUP=www-data #设置组为 www-data

重启服务:sudo service apache2 restart
普通账户就可以执行ssh的,没有就新建一个 用adduser,在有问题,就检查你的php脚本!
参考技术A

你有apache的安装文档吧,

    如果要用root用户运行apache,就在root下运行安装apache;

    如果你想用apache默认用户,则利用root用户创建操作系统级的默认用户;

然后在此用户下安装apache

参考技术B 1、修改apache服务下文件权限
# chown apache:apache /usr/local/apache

2、切换到apache用户下
# su - apache
3、以apache用户启动apache服务
# service httpd start
参考技术C httpd.conf里改一下user和group 参考技术D 把daemon 修改成 root就行了

vi apache2/conf/httpd.conf #修改httpd.conf文件

User daemon
Group daemon
改成
User root
Group root
保存退出

重启apache就可以了追问

这样apache服务器就启动不了了,报错

追答

你是用什么用户启动的?

追问

就是用默认的daemon用户,安装时候的默认用户

追答

你用root试试,daemon权限太低了

追问

怎样用root权限来尝试?apache用root用户无法启动啊

追答

su - root
输入密码就可以了,一般为了安全是不会用root去启动apache的,都是新建一普通用户用来启动的,建议你也不要用root来启动

追问

我现在使用的就是root权限,但是通过php来访问的话就会使用daemon这个用户来访问,root用户执行ssh是完全没问题的,但是通过php执行就没有返回任何结果了。su - daemon会提示This account is currently not available.无法使用这个用户尝试,但是在php里执行system(“whoami”)的确apache是使用daemon这个用户启动的

追答

新建一个普通用户,用普通用户执行ssh,daemon权限可能不足,把
User daemon
Group daemon
改成
User 普通用户
Group 普通用户

本回答被提问者采纳

linux下如何添加一个用户并且让用户获得root权限

转自:http://blog.sina.com.cn/s/blog_6fc583e70100n6rm.html

测试环境:CentOS 5.5

1、添加用户,首先用adduser命令添加一个普通用户,命令如下:

#adduser tommy 
//添加一个名为tommy的用户
#passwd tommy   //修改密码
Changing password for user tommy.
New UNIX password:     //在这里输入新密码
Retype new UNIX password:  //再次输入新密码
passwd: all authentication tokens updated successfully.

2、赋予root权限

方法一: 修改 /etc/sudoers 文件,找到下面一行,把前面的注释(#)去掉

## Allows people in group wheel to run all commands
%wheel    ALL=(ALL)    ALL

然后修改用户,使其属于root组(wheel),命令如下:

#usermod -g root tommy

修改完毕,现在可以用tommy帐号登录,然后用命令 su - ,即可获得root权限进行操作。

方法二: 修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行,如下所示:

## Allow root to run any commands anywhere
root    ALL=(ALL)     ALL
tommy   ALL=(ALL)     ALL

修改完毕,现在可以用tommy帐号登录,然后用命令 su - ,即可获得root权限进行操作。

方法三: 修改 /etc/passwd 文件,找到如下行,把用户ID修改为 0 ,如下所示:

tommy:x:500:500:tommy:/home/tommy:/bin/bash

修改后如下

tommy:x:0:500:tommy:/home/tommy:/bin/bash

保存,用tommy账户登录后,直接获取的就是root帐号的权限。

友情提醒:虽然方法三看上去简单方便,但一般不推荐使用,推荐使用方法二。

以上是关于在linux下希望让apache服务器以root用户来运行怎么做,或者想用apache的默认用户来登录linux的主要内容,如果未能解决你的问题,请参考以下文章

linux 如何让ssh连接的用户登录后自动转到root用户下?

dedecms在linux上安装提示没权限解决办法

linux下apache虚拟主机搭建以及优化

linux操作系统下怎么建立一个系统管理员

linux下如何安装Apache软件

linux下权限问题,如何让无root管理员权限的用户执行需root权限执行的脚本文件