概述:每台vps主机都有一个首页,但是如果我们想给其他的用户也拥有可以完全控管的首页时,那该如何设计呢,Apache早 就帮我们想好了,不过在配置文件内默认将这个功能取消,本来将详细介绍如何启动用户个人网站
目的:构建一用户名为vsftptest,可以通过http://你的主机名称/~vsftptest/访问,使用ftp工具更新内容,同时限制用户不能通过ssh登录主机,已经可用磁盘空间为50M。
步骤:
1)新建用户名vsftptest
[root@www ~]# mkdir /etc/skel/public_html
[root@www ~]# useradd vsftptest
[root@www ~]# pwsswd vsftptest
2)编辑httpd配置文件
[root@www ~]#vi /etc/httpd/conf/httpd.conf
#找到如下的设置项目,大约在340行左右
UserDir disable
#UserDir public_html
#将它改成如下的情况
#UserDir disable
UserDir public_html
重启httpd服务
[root@www ~]# apachectl restart
上面的UserDir public_html的含义是指定个人首页默认在默认目录的public_html目录中,假如用户为vsftptest,那么vsftptest默认目录为 /home/vsftptest,那么它的个人首页目录为:/home/vsftptest/public_html。当然也可以修改这个目录的名称,只要修改上述代码中的UserDir内容即可。
3)设置用户家目录权限
使用vsftptest登录系统
[root@www ~]# su - vsftptest
[vsftptest@www ~]$ chmod 755 ~
[vsftptest@www ~]$ chmod 755 public_html
[vsftptest@www ~]$ echo "test you home">public_html/index.html
由于CentOS默认用户的默认目录权限是“drwx——”,这个权限无法让apache的程序浏览。所以至少要让你的默认目录与public_html目录权限成为“drwxr-xr-x”才行,这个很重要。
4)测试,在游览器地址栏输入:“http://您的主机名称/~vsftptest/”就可以看到你的主页了
如果您想是否可以使用“http://您的主机名称/vsftptest/”访问我的个人网站呢,最简单的方法如下:
第一种方法:
[root@www ~]# cd /var/www/html/
[root@www html]# ln -s /home/vsftptest/public_html vsftptest
使用此方法,记得首页的Options内有 FollowSymLinks参数,要不不可以直接使用连接文件
第二种方法:
[root@www ~]# vi /etc/httpd/conf/httpd.conf
#找个不与别的设置值有干扰的地方加入这个设置项目,一般可以在文件末尾添加如下内容
Alias /vsftptest/ "/home/vsftptest/public_html/"
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
保存设置后,重新启动apache服务
[root@www ~]#apachectl restart
上面两种方法任选择一种,不要两种方法都配置
5)配置帐号使用ftp登录更新网页
具体配置请查看:在vps主机安装vsFTPd文件服务器
6)限制帐号空间大小
关于如何限制ftp空间的大小,具体配置请查看:在vps主机上使用磁盘配额限制vsFTPd用户的空间大小
7)禁止vsftptest帐号使用ssh登录系统
[root@www ~]# cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
[root@www ~]# vi /etc/ssh/sshd_config
#在此文件末尾添加
AllowUsers root
#若要设定多人可以通过ssh登录,就用空格隔开:AllowUsers root testroot
没有评论:
发表评论