admin 管理员组

文章数量: 887053


2024年1月14日发(作者:表单大师客服)

《Linux网络操作系统》课程设计

一、 课程设计的目的

本课程设计模拟实际企业需求,配合Linux网络操作系统课程内容,旨在通过整周实训将学生所学的Linux系统管理基本概念,网络服务器的搭建与管理技术糅合在一起,增强学生Linux服务器管理的综合能力,同时锻炼学生的思维能力和合作能力,并达到以下目的:

1. 掌握一个较完整的企业应用服务器的搭建方法;

2. 掌握企业应用服务器系统性能的调整方法;

3. 掌握企业应用服务器常见故障的排除方法;

4. 提高学生系统建设与管理能力的同时,增强学生的系统分析能力。

在实训过程中,要求学生熟悉一个企业应用服务器建设的基本流程,熟练Linux系统管理知识,能够利用所学知识完成综合系统设计和实现。

二、 项目背景

某公司包括一个园区网络和一个分支机构,网络拓扑图如下图所示。在园区网络中,大约有300名员工,分支机构大约有100名员工,此外还有一些SOHO员工及出差人员。

1

VPN服务器邮件服务器Web服务器Samba服务器分支机构 DMZ总公司防火墙/NATINTERNET出差工作人员DHCP服务器FTP服务器DNS服务器ADSL路由器家庭办公 园区网络 VPN用户

假定你是该公司的网络管理员,现在公司的网络要进行规划和实施。现有条件如下:公司已租借了一个公网的IP地址202.100.100.10,和ISP提供的一个公网DNS服务器的IP地址202.100.100.200。该公司申请的域名为。园区网络和分支机构使用192.168.0.0网络,并进行必要的子网划分。

2

三、 实训环境

网络拓扑示意图

1. 根据上面的网络拓扑示意图,采用两台Linux虚拟机充当内网服务器,Linux主机A充当主要服务器,包括WEB、DHCP、DNS、FTP、SAMBA等,Linux 主机B充当网关,实现防火墙、NAT和VPN服务器功能。Windows主机A充当外网中的VPN客户机,Windows主机B充当内网工作站。这4台主机共同组成一个模拟的完整企业局域网。

2. 在实训过程中,每4台计算机(4位同学)为一组,共同上面所示的企业网络。按照企业需求(实训需求)分别在两台Linux虚拟机上实现DHCP、DNS等各项服务功能。Windows主机上进行相应各项服务测试。

3. 网络域名为(xingming指小组某成员的姓名拼音)

4. 上述4台主机所担当的角色作用及IP地址如上面的网络拓扑示意图,其中zhuhao表示你的分组号, dhcp表示该IP地址从DHCP服务器获取。

四、 实训内容及要求

(一)实训内容:

假设某企业局域网有自己的域名(此处xingming为姓名拼音),其内网地址为.0/24(此处zuhao为分组号)。根据上面的网络拓扑结构示意图,在Linux

3

虚拟机A和Linux虚拟机B上分别实现如下功能:

1. Linux虚拟机A做网关主机,配置防火墙及NAT、VPN服务。

2. Linux虚拟机B做内网应用服务器,实现DHCP服务、Samba服务、DNSF服务、Web服务、FTP服务。

(二)实训要求:

任务1. 配置Linux虚拟机A。Linux虚拟机A上配置两块网卡,网卡eth0的IP地址为(XXX为学号+100)。网卡eth1的IP地址为.10(zuhao为组号)。

任务2. 在企业局域网中实现DHCP功能,要求:

(1) 为本网络中的主机分配IP地址,并设置子网掩码、网关地址和DNS服务器地址;

(2) 为Windows主机B动态分配IP地址;

任务3. 在局域网中实现DNS功能,要求能解析以下域名:

Web服务器(:.20,别名)

FTP服务器(:.20)

邮件服务器(:.20)

财务部(:.20)

销售部(:.20)

宣传部(:.20)。

任务4. 为企业建立FTP服务器(),要求:

(1) 创建www(网站)、xs(销售)、xc(宣传)、cw(财务)、jl(经理)、qt(其他)六个用户,不允许登录linux系统。

(2) 创建xxx组,将www、xs、xc、cw、jl五个用户的私有组设置成xxx组。

(3) www、xs、xc、cw四个用户的主目录分别为/home/html/www、/home/html/xs、/home/html/xc、/home/html/cw。

(4) www、xs、xc、cw、qt五个用户被锁定在自己的主目录中。

(5) www、xs、xc、cw、jl五个用户在自己的主目录中能上传下载及删除文件。

(6) qt用户在自己的主目录中能上传下载但不能删除文件。

(7) 匿名用户在自己的主目录上只能下载文件。

4

任务5. 为企业内部建立WEB站点(一台机器4站点),要求能通过浏览器访问(IP为.20),,,的网站。要求:

(1) ,,,站点的网页根目录分别为/home/html/www、/home/html/xs、/home/html/xc、/home/html/cw。

(2) 网站只允许企业内部网中的主机访问。

(3) 网站只允许企业内部网中的主机访问,且创建cw、jl等http账号,需要通过用户名和密码认证才能访问该网站中的网页。

任务6. 安装架设SAMBA服务器,实现linux和windows资源共享。要求:

(1) 访问linux服务器时审查用户帐号和密码。

(2) 在Linux虚拟机B上创建一个/tmp目录,为所有用户提供共享,且可以读写。

(3) 在Linux虚拟机B上创建一个私人目录/cwpri,只有cw用户有可读写的共享访问权限,其他用户不可以共享访问。

(4) 在Linux虚拟机B上创建一个/xxx目录,允许xxx组用户向目录中写入,其他用户只能访问,但不可以写入。

任务7. 在Linux虚拟机A上配置NAT。具体要求:

(1) 隐蔽内部网络结构,保证内网主机可以通过合法IP地址连接到Internet,使用包括WWW、FTP等Internet上的服务。

任务8. 搭建VPN服务器,为外网用户提供访问内网服务器及共享资源的安全途径。

五、 实训过程(含步骤)

任务1. 搭建实训环境

步骤1: 在Linux虚拟机B配置网络参数。

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

BOOTPROTO=none

ONBOOT=yes

#HWADDR=00:0C:29:B1:AC:77 (注:删除或注释掉该行)

IPADDR=.20

NETMASK=255.255.255.0

5

# vi /etc/

nameserver ?

重启网络服务:

# service named restart

步骤2: 在Linux虚拟机A未启动状态下为Linux虚拟机A增加一块网卡。

步骤3: 按网络拓扑示意图来配置Linux虚拟机A

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

# vi /etc/sysconfig/network-scripts/ifcfg-eth1

 Linux虚拟机A的IP地址:

网卡eth0的IP地址为(XXX为学号+100),网关为192.168.1.254。

网卡eth1的IP地址为.10(zuhao为组号)。

任务2. 在企业局域网中实现DHCP功能,要求:

(1) 为本网络中的主机分配IP地址,并设置子网掩码、网关地址和DNS服务器地址;

(2) 为Windows主机B动态分配IP地址;

步骤1: 在Linux虚拟机B上检查并安装dhcp包。

(2) 查看是否安装了DHCP

# rpm –qa |grep dhcp

(3) 安装DHCP

# eject

# mount /media/cdrom

# cd /media/cdrom/RedHat/RPMS

# rpm –ivh dhcp-3.0.1-12_

# cd

步骤2: 由模板文件复制生成所需的DHCP服务配置文件

# cp /usr/share/doc/dhcp-3.0.1/ /etc/

步骤3: 用vi编辑/etc/。

# vi /etc/

内容如下:

6

ddns-update-style interim;

ignore client-updates;

subnet .0 netmask 255.255.255.0 {

option routers .10;

option subnet-mask 255.255.255.0;

option domain-name-servers .10;

range .151 .200;

default-lease-time 21600;

max-lease-time 43200;

# we want the nameserver to appear at a fixed address

}

步骤4: 在DHCP服务器上,用ifconfig观察结果,是否子网卡的广播地址设置正确:

如:.255。

若不正确,请修改网络配置。

步骤5: 在DHCP服务器上,启动dhcpd服务。

# service dhcpd restart

注意:若不能启动,观察/var/log/message.

步骤6: 在DHCP客户机即主机B和Windows主机B上,修改网络参数为自动获取。在Windows中使用下面命令查看和重新获取IP地址。

C:>ipconfig 查看IP地址

C:>ipconfig /release 释放IP 地址

C:>ipconfig /renew 重新获取IP地址

步骤7: 观测Windows主机B能否获取到正确的网络参数,并记录下整个过程。

任务3. 在局域网中实现DNS功能,要求能解析以下域名:

Web服务器(:.20,别名)

FTP服务器(:.20)

邮件服务器(:.20)

销售部(:.20)

宣传部(:.20)。

财务部(:.20)

步骤1:在Linux虚拟机B上检查并安装DNS所需的必要软件包

# rpm –qa|grep bind

# rpm –qa|grep caching

7

根据结果,安装还没有安装的软件,从安装盘里找出第4张安装盘,执行下列步骤:

# eject

# mount /media/cdrom

# cd /media/cdrom/RedHat/RPMS

# rpm –ivh

# rpm –ivh

# cd

下面软件包在第1张安装光盘上。首先换光盘,接着执行下面的命令

# eject

# mount /media/cdrom

# cd /media/cdrom/RedHat/RPMS

# rpm -ivh

# cd;eject

步骤2:在DNS服务器(Linux虚拟机A)上编辑/etc/文件,添加区声明

# vi /etc/

…………

zone “” IN {

type master;

file “”;

};

步骤3:分别从复制生成文件/var/named/。

# cd /var/named

# cp

# vi

在该区文件中添加内容如下:

…………

IN NS @

IN MX 10 mail

IN A .20

IN A .20

IN A .20

IN A .20

IN A .20

IN A .20

IN CNAME www

www

ftp

mail

xs

xc

cw

web

注:在正向区文件中,将$ORIGIN所在的行删除掉。

8

步骤4:重启DNS服务:

# service named restart

步骤5:在Linux虚拟机B上测试:

# host –l

# ping

步骤6:查错:

如果不能正确解析,可以到日志/var/log/messages里查看错误提示信息。也可以执行下面的命令查看有无错误提示。

# named-checkconf

# named-checkzone /var/name/

任务4. 为企业建立FTP服务器(),要求:

(1) 创建www(网站)、xs(销售)、xc(宣传)、cw(财务)、jl(经理)、qt(其他)六个用户,不允许登录linux系统。

(2) 创建xxx组,将www、xs、xc、cw、jl五个用户的私有组设置成xxx组。

(3) www、xs、xc、cw四个用户的主目录分别为/home/html/www、/home/html/xs、/home/html/xc、/home/html/cw。

(4) www、xs、xc、cw、qt五个用户被锁定在自己的主目录中。

(5) www、xs、xc、cw、jl五个用户在自己的主目录中能上传下载及删除文件。

(6) qt用户在自己的主目录中能上传下载但不能删除文件。

(7) 匿名用户在自己的主目录上只能下载文件。

步骤1: 在Linux虚拟机B上检查并安装FTP服务所需的软件包

# rpm –qa|grep vsftpd

如果没有安装vsftpd软件包,从安装盘里找出第1张安装盘,执行下列步骤:

# eject

# mount /media/cdrom

# cd /media/cdrom/RedHat/RPMS

# rpm –ivh

# cd

步骤2:创建FTP账号

# mkdir /home/html

# groupadd xxx

# useradd www -g xxx -d ? -s ?

9

# passwd www

# useradd xs -g xxx -d ? -s ?

# passwd xs

# useradd xc -g xxx -d ? -s ?

# passwd xc

# useradd cw -g xxx -d ? -s ?

# passwd cw

# useradd jl -g xxx

# passwd jl

# useradd qt

# passwd qt

步骤3:修改用户FTP主目录权限

# chmod 755 /home/html/*

# chmod 755 /home/qt

步骤4:编辑FTP服务器配置文件

# vi /etc/vsftpd/

其内容包括如下4部分:

(1) 全局设置

write_enable=?

anonymous_enable=?

local_enable=?

pasv_enable=?

local_umask=022

(注:允许所有用户进行写操作)

(注:允许匿名用户访问FTP服务)

(注:允许本地用户访问FTP服务)

(注:启动被动工作模式)

(注:设定本地用户创建文件和目录的访问权限属性)

user_config_dir=/etc/vsftpd/userconf(注:用户自定义配置文件存放目录)

(2) 指定用户锁定在自己的FTP根目录中

chroot_local_user=? (注:是否允许本地用户离开自己的根目录)

chroot_list_enable=? (注:是否启用允许本地用户离开根目录的文件)

注意:在配置文件中进行参数设置时,“=”两边不允许有空格。

上述两者结合在一起,所有未在/etc/_list文件中列出的用户将被锁定自己的主目录中。

步骤5:在/etc/_list文件中设置允许离开用户主目录的用户,一个名字一行。

10

# vi /etc/_list

将用户jl添加到该文件中

……

jl (注:一个名字一行)

步骤6:FTP用户进行自定义设置

(1) 用户自定义配置文件存放目录

# mkdir /etc/vsftpd/userconf

# cd /etc/vsftpd/userconf

(2) 创建用户www的自定义配置文件,并编辑它

# vi www

编辑内容如下:

guest_enable=YES

guest_username=www

(注:允许虚拟用户)

(注:设置虚拟用户名称)

anon_world_readable_only=NO (注:匿名用户访问时不需要三类人员都具有r权限

anon_upload_enable=YES (注:允许匿名用户上传文件)

(注:允许匿名用户创建目录)

(注:允许匿名用户具有删除文件权限))

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

anon_umask=022 (注:设置匿名用户上传文件的默认权限为755)

(3) 将www的自定义配置文件作为模版复制成其他用户的自定义配置文件

# cp www xs

# cp www xc

# cp www cw

# cp www jl

(4) 然后修改xs、xc、cw、jl四个用户的配置文件,将中间的guest_username设置为对应的用户名

(5) 复制生成qt用户的自定义配置文件,并编辑它

# cp www qt

# vi qt

11

其中修改

guest_username=qt

anon_other_write_enable=NO

步骤7:检验:从Windows主机中访问VSFTP服务器

在Windows主机B中打开一个资源管理器,在地址栏中输入ftp://.20。一一验证各个设置部分是否正确。

任务5. 为企业内部网建立WEB站点(一台机器4站点),要求能通过浏览器访问(IP为.20),,,的网站。要求:

(1) ,,,站点的网页根目录分别为/home/html/www、/home/html/xs、/home/html/xc、/home/html/cw。

(2) 网站只允许企业内部网中的主机访问。

(3) 网站只允许企业内部网中的主机访问,且创建cw、jl等http账号,需要通过用户名和密码认证才能访问该网站中的网页。

步骤1:安装Apache软件包。

(1) 查看系统是否已经安装Apache软件包。

# rpm -qa | grep httpd

(2) 如果没有安装则执行下面的步骤进行安装(软件包文件在第2张Linux安装光盘中):

# eject

# mount /media/cdrom/

# cd /media/cdrom/RedHat/RPMS/

# rpm –ivh

# rpm –ivh

# cd;eject

步骤2: 编辑Apache服务器的配置文件,在其中定义4个虚拟主机

# vi /etc/httpd/conf/

12

在文件末尾增加如下内容:

NameVirtualHost .20

DocumentRoot ?

ServerName

DocumentRoot ?

ServerName

DocumentRoot /home/html/xc

ServerName ?

DocumentRoot /home/html/cw

ServerName ?

order ?

deny from all

allow from .0/24

order deny,allow

deny from all

allow from ?

AuthName “Give your name and password"

AuthType Basic

Require valid-user

AuthUserFile /home/html/users

步骤3: 创建用户文件及用户名和密码

# htpasswd -c /home/html/users jl

# htpasswd /home/html/users cw

13

步骤4: 向各个站点中上传网页文件。

步骤5: 重启httpd服务

# service httpd restart

步骤6: 在Windows主机B中进行验证

在Windows主机B中的浏览器地址栏上输入,,,检查结果是否正确。

任务6. 安装架设SAMBA服务器,实现linux和windows资源共享。要求:

(1) 访问共享目录时审查用户帐号和密码。

(2) 在Linux虚拟机B上创建一个/tmp目录,为所有用户提供共享,且可以读写。

(3) 在Linux虚拟机B上创建一个私人目录/cwpri,只有cw用户有可读写的共享访问权限,其他用户不可以共享访问。

(4) 在Linux虚拟机B上创建一个/xxx目录,允许xxx组用户向目录中写入,其他用户只能访问,但不可以写入。

步骤1: 安装Samba软件包

(1) 查看Linux虚拟机B是否已经安装Samba软件包

# rpm -qa | grep samba

(2) 如果没有安装则执行下面的步骤进行安装(软件包文件在第2张Linux安装光盘中):

# eject

# mount /media/cdrom/

# cd /media/cdrom/RedHat/RPMS/

# rpm -ivh

# rpm -ivh

# rpm -ivh

# cd;eject

步骤2: 在Linux虚拟机B上创建共享目录,并设置其权限。

# mkdir /cwpri

# chown cw /cwpri

# chmod 700 /cwpri

14

# mkdir /xxx

# chown :xxx /xxx

# chmod 775

步骤3:编辑 文件

# vi /etc/samba/

内容如下

在[global]段完成:

……

workgroup = smbgrp

Security = user

(注:设置工作组名称)

(注:设置安全级别)

在文件末尾添加三个共享目录的定义段

[public]

path = /tmp/ (注:指定共享目录路径)

comment = share(777)

read only = no (注:允许有效用户可读写的访问目录)

guest ok = yes

create mode = 0664 (注:创建文件时的默认权限)

[xxx]

path = /xxx

comment = xxx group(775)

guest ok = yes

read only = no

write list = @xxx (注:指定对共享资源有读写权的组)

[cwpri]

path = /cwpri

comment = cw’s directory(700)

public = no

read only = no

valid users = cw (注:指定可以访问的有效用户ua)

步骤4:添加Samba账号,Samba服务器要求合法的Samba用户必须先是一个Linux用户

# smbpasswd -a www

# smbpasswd -a xs

# smbpasswd -a xc

# smbpasswd -a cw

# smbpasswd -a jl

# smbpasswd -a qt

步骤5:测试samba配置文件的设置

15

# testparm

步骤6:重新启动samba服务器

# service smb restart

步骤7:在Windows的网上邻居中以不同的Samba账号访问上述共享资源,看是否和要求相符合

任务7. 在Linux虚拟机A上配置NAT。具体要求:

(1) 隐蔽内部网络结构,保证内网主机可以通过合法IP地址连接到Internet,使用包括WWW、FTP等Internet上的服务。

步骤1: 修改内核参数

# echo 1 > /proc/sys/net/ipv4/ip_forward

或者

编辑/etc/文件

# vi /etc/

修改如下参数值

_forward = 1

修改完成后重启网络服务,使内核参数变化

# service network restart

步骤2: 设置SNAT策略,使得内网中的主机可以访问外网主机的WWW和FTP服务。

# iptables -t nat -A POSTROUTING -s .0/24 -j SNAT

--to

步骤3: 保存iptables设置

# service iptables save

任务8. 搭建VPN服务器,为外网用户提供访问内网服务器及共享资源的安全途径。

步骤1:编辑/etc/文件,设置虚拟专用连接的地址池。

步骤2:编辑/etc/pptpd/chap-secrets文件,设置远程登陆VPN客户端拨入时所使用的用户名、密码和分配给该用户的IP地址。

16

步骤3:设置/etc/ppp/options-pptpd文件。

[root@RHEL4 ~]# grep -v "#" /etc/ppp/

name pptpd //相当于身份验证时的域,一定要和/etc/ppp/chap-secrets中的内容对应

refuse-pap //拒绝pap身份验证

refuse-chap //拒绝chap身份验证

refuse-mschap //拒绝mschap身份验证

require-mschap-v2 //采用mschap-v2身份验证方式

require-mppe-128 //在采用mschap-v2身份验证方式时要使用MPPE进行加密

ms-dns 192.168.0.9 //给客户端分配DNS服务器地址

ms-wins 192.168.1.1 //给客户端分配WINS服务器地址

proxyarp //启动ARP代理

步骤4:启动Linux的路由转发功能。

步骤5:启动VPN服务器。

步骤6:设置VPN服务器穿透防火墙。

步骤7:VPN客户端的设置。

(1)在桌面上右击【网上邻居】并从弹出的快捷菜单中点击【属性】,接着在弹出的窗口中点击【新建连接】,打开【网络连接向导】对话框,如图所示。

17

(2)单击“下一步”,在该对话框中选择网络的连接类型为“通过Internet连接到专用网络”,如图所示。

(3)单击“下一步”,选择VPN客户端接入Internet网络的连接方式。在此选择“不拨初始连接”,如图所示。

(4)单击“下一步”,设置VPN服务器的地址,在此输入VPN服务器的IP地址或主机名,然后单击“下一步”,如图所示。

18

(5)单击“下一步”,设置是否允许所有用户使用此连接,在此我们选择“所有用户使用此连接”,如图所示。

(6)单击“下一步”,打开“完成网络连接向导”在此设置此虚拟连接的名称,在此输入“jnrp-vpn”,如图所示。单击完成按钮,即可完成该向导。

(7)在下图所示的对话框中输入登录VPN服务器的用户名和密码,单击“连接按钮”,这时客户端就开始与VPN服务器建立连接,完成用户名和密码的核对,网络注册等工作。分别如图16-9和16-10所示。

(8)在连接成功之后在VPN客户端利用ipconfig命令可以看到多了一个ppp连接,如图所示。

19

六、 实训报告的编写

实训结束时,学生需要提供以下资料:

1、各子任务完成情况。

2、实训报告。按学院实训报告标准格式,完成实训报告,要求给出各步骤的具体结果,并对结果作出分析解释。

七、 课程设计考核

1. 作为一门课程单独考核。

2. 实训成绩由三部分组成:

(1) 实训表现及考勤(占20%)

(2) 各任务完成情况(占40%)

(3) 总项目集成完成情况及实习报告撰写情况(占40%)。

3. 任务及总项目完成情况当场验收考核。实训报告在整周实训结束后立即上交。

20


本文标签: 用户 服务器 文件 设置 企业