版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 . . . 枣 庄 学 院信息科学与工程学院课程设计任务书题 目:Linux下基于用户的虚拟主机的设计与实现简易web服务器的搭建学 号:姓 名:专 业: 计算机网络技术 课 程: LINUX操作系统 指导教师:职称: 教 师 完成时间: 2012年 11月-2012 年 12 月枣庄学院信息科学与工程学院制一:设计目标与要求:1、 为了使每个学生有一个展示自我的平台,学校在web服务器上开通注册通道,学生可以在上注册个人账户,在注册的过程中,可以检测用户名是否已存在。如果存在,则不能注册。用户注册成功后,系统会自动为此用户创建一个系统用户账户,账户名和密码为用户注册时填写的用户名和密码2、
2、 为了使有限的资源能够充分的利用,学校规定为每个用户分配50M的空间。用户可以使用此用户名和密码通过ssh远程连接进行文件的上传和下载,将个人主页上传到用户自己的web目录,以供互联网用户访问。3、 为了将来系统管理员排错方便,每次建立新用户必须产生一个日志记录。4、 所有新用户的web空间必须单独放置在一个专用磁盘空间中(即使用Vmware新添加一块磁盘)。5、 所有新建用户的个人WEB空间每隔一周自动备份,以备不测之需。二、实现过程1、配置虚拟机的网络#ifconfig eth0 28 netmask up#vi /resolv(添加:s
3、earch localdomain,nameserver )#route add net /0 gw #ping .baidu.(可以连接)2、安装相关套件(1)安装apache如果不显示则表示没安装进行下边的动作即可安装成功:(2)安装php如果不显示则表示没安装进行下边的动作即可安装成功:(3) 安装mysql如果不显示则表示没安装进行下边的动作即可安装成功:(4)、设置磁盘配额与挂载:1、关闭虚拟机,在VMware中添加一块硬盘。点击“VM”“Settings”“Add”“Hard Disk”,根据提示向导添加硬盘2、启动虚拟
4、机,在linux系统下使用fdisk l命令查看/dev/sdb是否添加成功,如果成功,则使用fdisk /dev/sdb 命令来为sdb硬盘创建分区。(n-p-1-回车-回车-p-w)3、为/dev/sdb2分区创建文件系统:mkfs.ext3 /dev/sdb24、为了使用/dev/sdb1分区,将其挂载到/home目录下面:mount /dev/sdb2 /home5、在开机时自动挂载/dev/sdb2,将其记录假如/etc/fstab中。6、使用mount -o remount /home重新加载/home分区。7、使用mount查看分区情况。/dev/sdb1 on /home ty
5、pe ext3 (rw,usrquota,grpquota)8、重新启动电脑9、创建磁盘配额quotacheck -avug10、开启quota11、设置模版配额用户(用于新加用户的配额限制) (5)、个人空间页面的设计和注册页面的设置!首先设置虚拟主机:做如下几行的设置:打开虚拟主机创建虚拟主机对应ip以与域名,其中 shenqing. 为域名申请页面.wethnicity 为一个个人域名First:设置注册页面创建文件夹进入到该目录先编辑注册页面代码如下:<!DOCTYPE html PUBLIC "-/W3C/DTD XHTML 1.0 Transitional/EN&q
6、uot; "./TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="./1999/xhtml"><head><meta -equiv="Content-Type" content="text/html; charset=utf-8" /><title>User Register</title></head><body style="font-siz
7、e:28px;"><form action="./index.php" method="post" name="info"><table width="640" border="15" align="center" bgcolor="#3399FF"><tr> <td colspan="2" align="center"> New User </t
8、d> </tr> <tr> <td>Name:</td> <td><input type="txt" name="user_name" /></td> </tr> <tr> <td>Password:</td> <td><input type="password" name="user_pwd" /></td> </tr> <
9、tr> <td colspan="2" align="center"> <input name="submit" type="submit" value="Submit" /> <input name="reset" type="reset" value="Reset" /></td> </tr></table></form><?php$us
10、er=$_POST"user_name"$password=$_POST"user_pwd"if($_POST'submit')/检验用户名密码是否为空,若存在空值,弹出警告if(strlen($user)=0 | strlen($password)=0)echo("<script type='text/javascript'> alert('UserName or password can not be null!');</script>");/如果用户名密码不
11、为空,继续执行,判断/etc/passwd与newUserList文件中是否存在此用户名else/执行脚本check.sh,并把用户名传值过去$userCheck = "bash ./check.sh $user"$result = exec($userCheck);if($result="000")/返回值为000,表示用户已经存在,弹出警告用户已存在echo("<script type='text/javascript'> alert('UserName is exist!Please another o
12、ne');</script>");else/没有返回值,说明没有重复的用户名,可以注册$file=fopen("./newUserList",'a+');/打开newUserList,并把用户名与密码写入中间以“:”隔开fwrite($file,$user.":".$password."n");fclose($file);/写入成功后,提示用户名与密码echo "User register success!Please remeber your username:".$
13、user;echo "<br />"echo "and password:".$password.".You can use it in 3 minutes."echo "<br />"echo "<a href='index.php'>Back</a>"?></body></html>编辑控制的shell文件:User_add.sh控制用户的建立代码如下:#!/bin/bash#filename:ch
14、eck#获取/etc/passwd文件中的用户名,赋予变量user_existfor user_exist in cut -f 1 -d : /etc/passwddo#将index.php文件中传过来的用户名与系统存在的用户名对比,若存在同名,打印出000#并退出对比,若没有配的则继续循环user="$1"if "$user" = "$user_exist" ;thenecho "000"exitfidone#若index.Php文件中传过来的用户名与系统用户名没有匹配的,则通过一样的方式与#当前目录下的newU
15、serList文件中的用户名相匹配for user_exist1 in cut -f 1 -d : ./newUserListdo#echo $user_exist1user="$1"if "$user" = "$user_exist1" ;thenecho "000"exitfidonecheck.sh:检验用户存在与否代码如下:#!/bin/bash#name:user_add.sh#获取/etc/passwd文件中的用户名,赋予变量newuserfor newuser in cut -f 1 -d : /va
16、r/html/useradd/newUserListdo#通过循环的方式添加用户名,使其属于组netusers,并在其用户目录下创建#文件夹public_html,为用户分配空间,并修改用户目录的权限useradd -g netusers $newuseredquota p test u $newuser /进行磁盘配额mkdir /home/$newuser/public_htmlquota uvs $newuser /显示用户的空间配额chmod 755 /home/$newuserdone#使用chpasswd命令,批量为新添加的用户创建密码chpasswd < /var/html
17、/useradd/newUserList#清空newUserList文件> /var/html/useradd/newUserList为shell文件添加执行权限:(5)、设置cron(6)、测试注册首先设置测试主机ip与域名的对应注册:在浏览器中输入地址28/useradd,在用户注册页面输入用户名与密码,若用户名与密码有一项为空,则弹出窗口提示输入的信息不全;若输入root或ethnicity等系统中已存在的用户,会弹出窗口显示用户名不可用;输入系统不存在的用户名wanyan,系统提示用户可以使用,提示3分钟后可用。Second :ssh的操作(1)、开启ss
18、hd服务(port:22)并且查看(2)、用户wanyan登录测试(3)、实现文件上传(上传至/home/newuser/public_html:个人空间部分)直接上传即可这时public_html下有主页index.html打开为:三:备份策略1、 个人空间的备份(1)、编辑shell(2)、修改权限(3)、实现每十分钟备份一次添加多人空间备份只需修改bf.sh即可2、 建立新用户产生一个日志记录(在用户目录下生成):每次添加一个用户即在用户的主目录下产生一个名为:newUserList的文件来记录此用户的用户名和密码,只有本用户和管理员可以查看,做到备份的效果(1)、编辑/var/html/usera
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 借款合同纠纷上诉状要点
- 推广项目协调合同
- 专利申请与答辩代理服务合同
- 二零二四年度金融服务保密协议
- 芒果购销合同范例格式
- 空心砖制造商采购协议
- 品牌广告合作协议
- 电线电缆采购招标资讯
- 活动摄影摄像后期制作服务合同
- 股东之间的借款合同模板
- 2024贵州茅台酒厂(集团)保健酒业销售有限公司招聘20人笔试备考题库及答案解析
- 电机制造中的电机加工与装配技术考核试卷
- (统编2024版)道德与法治七上10.2滋养心灵 课件
- 人教版(2024新版)七年级上册英语期中测试卷(含答案)
- DB11∕T 1902-2021 政务服务中心服务与管理规范
- 雅马哈便携式扩声系统STAGEPAS 600i使用说明书
- 2024新版(北京版)三年级英语上册单词带音标
- 内蒙古能源集团限公司2024年公开招聘113人高频难、易错点500题模拟试题附带答案详解
- 地表水水质自动监测站(重金属)验收技术规范编制说明
- 2024年江苏先行控股集团限公司招11人高频难、易错点500题模拟试题附带答案详解
- 《中国民间故事》整本书阅读 课件 五年级上册语文(统编版) 五年级上册语文整本书阅读 导读课件+讲义+阅读检测(统编版)
评论
0/150
提交评论