实验五 搭建ftp服务器
一、实验目的
熟练掌握ftp服务器的配置方法。
二、实验条件
一台安装了windows 2000 professional的机器和一台安装了vsftpd的linux系统的机器。
三、实验内容
1、首先检查vsftpd是否安装,若安装,启动服务,验证默认配置下的vsftpd的功能有哪些;
[root@localhost root]# rpm -qa|grep vsftp
vsftpd-1.1.3-8
[root@localhost root]# service vsftpd start
为 vsftpd 启动 vsftpd: [ 确定 ]
[root@localhost root]# cd /etc/vsftpd
[root@localhost vsftpd]# grep -v "#" vsftpd.conf
anonymous_enable=YES //匿名访问
anon_upload_enable=yes //匿名上传
anon_mkdir_write_enable=yes //匿名新建
chroot_local_user=yes //本地用户不能更改目录
local_enable=YES //本地用户访问
write_enable=YES //本地用户写权限
max_clients=100 //并发连接数
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
pam_service_name=vsftpd
userlist_enable=YES
listen=YES
tcp_wrappers=YES
service vsftpd restart
2、修改默认配置,完成以下功能:
1)本地组softgrp有3个用户soft、soft1、soft2;用户目录为/var/local-ftp/softgrp;其中soft对目录有读写的权限,而soft1,soft2对目录只有读的权限;并且用户不能切换到/var/local-ftp/softgrp以外的目录下;
[root@localhost etc]# mkdir –p /var/local-ftp/softgrp //新建文件
[root@localhost etc]# groupadd softgrp //添加组softgrp
[root@localhost etc]# useradd -G softgrp -d /var/local-ftp/softgrp soft //添加组用户
[root@localhost etc]# useradd -G softgrp -d /var/local-ftp/softgrp soft1
[root@localhost etc]# useradd -G softgrp -d /var/local-ftp/softgrp soft2
[root@localhost etc]#passwd soft //passwd:1234
[root@localhost vsftpd]# chown soft.softgrp /var/local-ftp/softgrp //设置文件的属主为soft
[root@localhost vsftpd]# chmod 750 /var/local-ftp/softgrp //设置soft对目录有读写的权限,softgrp组的soft1,soft2用户对目录只有读的权限
[root@localhost vsftpd]# vi vsftpd.conf
chroot_list_enable=no
[root@localhost vsftpd]# service vsftpd restart
关闭 vsftpd: [ 确定 ]
为 vsftpd 启动 vsftpd: [ 确定 ]
2)允许匿名用户上传,上传的目录为/var/ftp/incoming,但是用户不能浏览目录内容,也不能下载;
[root@localhost vsftpd]# mkdir /var/ftp/incoming //新建上传的目录
[root@localhost vsftpd]# vi vsftpd.conf
anon_upload_enable=YES
anon_mkdir_write_enable=YES
[root@localhost vsftpd]# chmod 700 /var/ftp/incoming //上传目录权限
[root@localhost vsftpd]# chown root.ftp incoming
3)设置连接服务器的最大并发连接数为100;
[root@localhost vsftpd]# vi vsftpd.conf
max_clients=100
4)修改/etc/hosts.allow文件,限制IP地址为192.168.0.5的机器不能访问该ftp服务器;
[root@localhost etc]# vi hosts.allow
vsftpd: 192.168.0.5:DENY
5)完成如下设置后,请分别使用windows下的IE浏览器和linux下的ftp命令行工具验证(要求1、2、4)配置的正确性,注意要熟 悉ftp命令行的常用命令:open、close、get 、put、mget、mput、!等。
[root@localhost etc]# ftp
ftp> open 127.0.0.1
Connected to 127.0.0.1 (127.0.0.1).
220 (vsFTPd 1.1.3)
Name (127.0.0.1:root): anonymous
331 Please specify the password.
Password:
230 Login successful. Have fun.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> mkdir ff
257 "/incoming/ff" created
ftp> ls
227 Entering Passive Mode (127,0,0,1,255,221)
150 Here comes the directory listing.
226 Transfer done (but failed to open directory).
ftp> put host.conf
local: host.conf remote: host.conf
227 Entering Passive Mode (127,0,0,1,40,24)
150 Ok to send data.
226 File receive OK.
17 bytes sent in 5.8e-05 secs (2.9e+02 Kbytes/sec)
ftp> get host.conf
local: host.conf remote: host.conf
227 Entering Passive Mode (127,0,0,1,53,128)
550 Failed to open file.
ftp> close
221 Goodbye.
ftp> open 127.0.0.1
Connected to 127.0.0.1 (127.0.0.1).
220 (vsFTPd 1.1.3)
Name (127.0.0.1:root): soft
331 Please specify the password.
Password:
230 Login successful. Have fun.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> close
221 Goodbye.
四、实验体会
下面来自