centos下配置apache用户及用户组权限

首先,在CentOS中建立用户www。

 代码如下 复制代码

groupadd www
useradd --shell /sbin/nologin -g www www

其次,在Apache配置文件httpd.conf中设置User,Group。

 代码如下 复制代码

#
# If you wish httpd to run as a different user or group, you must run
# httpd as root initially and it will switch.
#
# User/Group: The name (or #number) of the user/group to run httpd as.
# It is usually good practice to create a dedicated user and group for
# running httpd, as with most system services.
#
User www
Group www

最后,设置网站文件的用户和用户组为www。

 代码如下 复制代码

#假设网站部署在/home/www下
cd /home/www/
chown -R www:www .        //前者为群组名称,后者为用户名, *表示全部文件


网站目录文件权限的设置对网站的安全至关重要,下面简单介绍网站目录文件权限的基本设定。
我们假设http服务器运行的用户和用户组是www,网站用户为centos,网站根目录是/home/centos/web。
1、我们首先设定网站目录和文件的所有者和所有组为centos,www,如下命令:

  1. chown -R centos:www /home/centos/web

2、设置网站目录权限为750,750是centos用户对目录拥有读写执行的权限,这样centos用户可以在任何目录下创建文件,用户组有有读执行权限,这样才能进入目录,其它用户没有任何权限。

  1. find -type d -exec chmod 750 {} \;

3、设置网站文件权限为640,640指只有centos用户对网站文件有更改的权限,http服务器只有读取文件的权限,无法更改文件,其它用户无任何权限。

  1. find -not -type d -exec chmod 640 {} \;

4、针对个别目录设置可写权限。比如网站的一些缓存目录就需要给http服务有写入权限。例如discuz x2的/data/目录就必须要写入权限。

  1. find data -type d -exec chmod 770 {} \;
  • 2
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Apache配置组认证的步骤如下: 1. 安装Apache和mod_authnz_external模块 使用以下命令安装Apache和mod_authnz_external模块: ``` sudo yum install httpd mod_authnz_external ``` 2. 配置Apache 打开Apache的主配置文件 /etc/httpd/conf/httpd.conf,找到以下行并取消注释: ``` LoadModule authnz_external_module modules/mod_authnz_external.so ``` 添加以下配置: ``` <Directory "/var/www/html"> AuthType Basic AuthName "Group Authentication" AuthBasicProvider external AuthExternal group_auth Require valid-user </Directory> ``` 其中,AuthType设置为Basic,表示使用基本认证方式;AuthName设置为"Group Authentication",是认证提示信息;AuthBasicProvider设置为external,表示使用mod_authnz_external模块进行认证;AuthExternal设置为group_auth,表示使用名为group_auth的认证程序;Require设置为valid-user,表示只有经过认证的用户才能访问。 3. 创建认证程序 在/etc/httpd/conf.d/目录下创建group_auth文件,输入以下内容: ``` #!/bin/sh # group_auth - Apache external authentication program for group file # usage: group_auth username password # Path to the group file GROUPFILE="/etc/httpd/conf.d/groupfile" # Check if user and password are valid if [ -r $GROUPFILE ] && grep -q "^$1:" $GROUPFILE && grep -q "^$1:[^:]*:$2" $GROUPFILE; then exit 0 else exit 1 fi ``` 其中,GROUPFILE设置为存储用户和组信息的文件路径。 设置文件权限: ``` sudo chmod 755 /etc/httpd/conf.d/group_auth ``` 4. 创建用户和组 在/etc/httpd/conf.d/目录下创建groupfile文件,输入以下内容: ``` user1:group1:password1 user2:group2:password2 ``` 其中,每行格式为"用户名:组名:密码"。 设置文件权限: ``` sudo chmod 644 /etc/httpd/conf.d/groupfile ``` 5. 重启Apache 使用以下命令重启Apache: ``` sudo systemctl restart httpd ``` 现在,用户需要输入用户名和密码才能访问指定目录,而且只有属于指定组的用户才能成功认证。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值