配置linux下FTP服务器Word文档格式.docx
《配置linux下FTP服务器Word文档格式.docx》由会员分享,可在线阅读,更多相关《配置linux下FTP服务器Word文档格式.docx(11页珍藏版)》请在冰豆网上搜索。
200907062128
姓名:
李正东
实验时间:
2010-12-17
实验报告提交时间:
2010/12/20
配置Linux下的FTP服务器
1.实验目的
FTP(文件传输协议)是Internet上最常用的服务之一。
可以实现网络上稳定高速的文件传输。
本次实验的目的是通过安装和配置vsftpd,在Linux下架设FTP服务器的方法,了解vsftpd的工作原理,从而对FTP服务器有一个更加深刻的认识。
2.实验网络环境
两台PC机,一台做客户机,另一台做主机。
两台PC机的IP地址的设置如下图所示:
图一为主机的IP地址设定,图二为客户机的IP地址设定。
图1.0主机的IP地址设定
图1.1客户机的IP地址设定
实验室的网络拓扑如下图所示:
图1.2实验室拓扑
3.实验软件环境
安装了redhatlinux9的操作系统,安装服务器程序文件vsftpd-2.0.5-16.el5_5.1.i386.rpm
4.实验步骤
(1)安装vsftpd
①安装之前的准备:
安装之前我们应该看看用户“nobody”和目录“/usr/share/empty”是否存在,如果不存在需要新建这个用户和目录。
[root@localhostroot]#useraddnobody
[root@localhostroot]#mkdir/usr/share/empty
如果要允许匿名访问,还需要创建ftp用户,并将其主目录设置为/var/ftp。
在RedHatLinux9.0中这些都已默认设置好了,只需要创建一个/var/ftp目录就可以了。
[root@localhostroot]#mkdir/var/ftp
为了安全起见,目录“/var/ftp”不应该属于用户“ftp”,也不应该有写权限。
在此,我们可以做如下设置:
[root@localhostroot]#chownroot.root/var/ftp
[root@localhostroot]#chmod755/var/ftp
以管理员身份(root)登录Linux系统,将vsftpd-2.0.5-16.el5_5.1.i386.rpm复制到/root目录下。
②安装vsftpd软件包
以root身份登录系统后,在shell提示符下输入【rpm–qvsftpd】命令回车,查看是否安装了vsftpd软件包,如下图所示。
从图中可以看到vsftpd软件包已经被安装了,这里就不需要安装了。
图1.3查看是否安装了vsftpd软件包
③在shell提示符下输入【rpm–ivhvsftpd-2.0.5-16el5_5.1.i386.rpm】命令回车,安装vsftpd软件包,如下图所示。
图1.4安装vsftpd软件包
(2)安装后续工作
由于采用源代码方式安装,很多必要的配置文件没有复制到系统中,需要手动复制。
复制配置文件:
[root@localhostvsftpd-2.0.5]#cpvsftpd.conf/etc
复制pam验证文件:
[root@localhostvsftpd-2.0.5]#cpRedHat/vsftpd.pam/etc/pam.d/ftp
然后在目录“/etc/vsftpd/vsftpd.conf”
打开vsftp的配置文件,如下图所示
图1.5vsftpd的配置文件
在配置文件中可以设置访问权限等
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
(3)启动vsftpd服务
在shell提示符下输入以下命令回车,启动vsftpd服务
#servicevsftpdstart
结果如下图所示,由下图可以看出vsftpd服务已经被成功启动。
图1.6启动vsftpd服务器
这样简单的ftp服务就搭建起来了,然后就可以到“/var/ftp/pub”目录中上传文件了。
⑷通过修改配置文件定制自己的ftp
可以直接在配置文件vsftpd.conf中修改如下
anonymous_enable=YES//yes表示允许匿名访问
local_enable=no//no表示本地用户不能访问
write_enable=YES//匿名用户有写的权限
anon_upload_enable=yes//匿名用户有上传和下载的权限
anon_mkdir_write_enable=no//匿名用户没有创建目录的权限
local_mkdir_write_enable=yes//本地用户有创建目录的权限
或者在命令行中输入:
vi/etc/vsftp/vsftpd.conf然后进行修改
图1.7修改vsftpd的配置文件
保存修改后在命令行中输入:
ls-l/var查看ftp权限
修改权限使匿名用户对目录具有读写的权限:
在命令行中输入如下命令:
chmodo+w/var/ftp
然后输入:
servicevsftpdrestart重启ftp服务
创建用户和密码:
[root@localhost~]#useraddlizhengdong
[root@localhost~]#passwdlizhengdong
Changingpasswordforuserlizhengdong
NewUNIXpassword:
00000
BADPASSWORD:
itistoosimplistic/systematic
RetypenewUNIXpassword:
325601
passwd:
allauthenticationtokensupdatedsuccessfully.
修改Vsftpd.conf文件将其中的
anonymous_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
chown_username=lizhengdong
然后重启ftp服务
servicevsftpdrestart
然后登录ftp服务器即可
(4)Xinetd的配置
在redhatlinu9.0中,要想使用Xinetd启动VSFTPD的运行方式,那么首先要将vsftpd.conf配置文件中的listen参数值改为NO。
其次,生成一个/etc/xinetd.d/vsftpd文件,内容如下:
servicevsftpd
{
disable=no
socket_type=stream
wait=no
user=root
server=/usr/sbin/vsftpd
port=21
log_on_success+=PIDHOSTDURATION
log_on_failure+=HOST
}
通过修改disable的值为no或yes,并重新启动xinetd,从而启动或停止VSFTPD
5.实验结果
实验测试
在客户机上打开浏览器,在地址栏中输入ftp:
//172.168.1.3/pub回车,即可登录到FTP服务器,如图所示:
图1.8访问FTP服务器
访问别人同组的FTP服务器
图1.9访问同组的FTP
实验测试中遇到的问题
1在实验测试的过程中遇到了这样的问题:
匿名用户可以登录FTP服务器,而本地用户无论怎样设置都无法登录,最后发现原因是vsftpd采用了PAM验证的方式,需要复制一个验证文件本地用户才能访问。
而vsftpd由于采用的是源代码方式安装,很多必要的配置文件没有复制到系统中,需要手动复制。
在shell提示符下输入如下即可---[root@localhostvsftpd-2.0.5]#cpRedHat/vsftpd.pam/etc/pam.d/ftp,最终解决了问题,感觉自己的印象更加深刻了。
2在ftp中上传的文件通过火狐浏览器访问时打不开,最后询问老师后,知道是由于在var/ftp文件夹中创建的文件权限问题,将该文件的权限改为ftp后就可以了。
6.实验总结
作为一个完全免费的、开发源代码的ftp服务器软件,vsftpd有很多其他的FTP服务器所不支持的特征。
比如:
非常高的安全性需求、带宽限制、良好的可伸缩性、可创建虚拟用户、支持IPV6、速率高等特点。
这些在实验中都有所体现。
在做这次实验的过程中也遇到了很多问题,但是经过上网查找资料、询问老师,最终都解决了问题,在这个过程中我也学到了不少知识。
这次实验使我更加深刻的理解了FTP服务器的工作原理。
任课教师批阅意见:
成绩评定:
备注: