FTP简介:

FTP是一个8位的客户端-服务器协议,能操作任何类型的文件而不需要进一步处理。但是ftp有着极高的延时,这就意味着从开始请求到第一次接收需求数据之间的时间会很长,并且不时的必须执行一些冗长的登陆进程。ftp服务一般运行在20和21两个端口。端口20用于在客户端和服务器之间传输数据流,而端口21用于传输控制流。

一:就ftp我们来给出一个小的案例:

由于企业资料比较多,所以对磁盘的空间要求比较大,所以增加另外一个磁盘,如果在虚拟机上做,那么可以随意增加虚拟硬盘的大小。对ftp服务器的要求:
(1)每个用户的空间都是10M。
(2)在速度上的限制:对于匿名账号,速度是100K/S,本地账号速度为1M/s.
(3) 由于服务器一般同时在线的用户比较多,所以限制同时在线用户数量,根据自己需要来设置这个值, 由于设备数量限制,我在这里设置为3.
(4)每个用户开启的连接数限制为2.

三:实验步骤:

(1)我是在linux虚拟机上做的,所以我要增加一块新的虚拟硬盘,然后进行磁盘分区:

[root@localhost ~]# fdisk –l

[root@localhost ~]# fdisk /dev/sdb #磁盘分区

FTP服务器站点的创建_休闲

[root@localhost ~]# partprobe /dev/sdb #内核重新读取磁盘分区表

[root@localhost ~]# mkfs -t ext3 /dev/sdb1 #格式化磁盘

[root@localhost ~]# mkdir /mnt/ftppart #建立一个挂载点

[root@localhost ~]# mount /dev/sdb1 /mnt/ftppart/

[root@localhost ~]# df –h #查看分区情况.......

FTP服务器站点的创建_休闲_02

安装ftp包:

[root@localhost ~]# cd /mnt/cdrom/Server/
[root@localhost Server]# rpm -ivh vsftpd-2.0.5-16.el5.i386.rpm

(2)建立用户和修改用户家目录:

[root@localhost Server]# cd /mnt/ftppart/

[root@localhost ftppart]# mkdir public #建立公共目录,只允许他人读取,下载,不允许上传

[root@localhost public]# touch f1 f2 #为了测试,放两个小文件

[root@localhost public]# useradd user1
[root@localhost public]# useradd user2 #创建两个用户

[root@localhost home]# echo "123" |passwd --stdin user1
Changing password for user user1.
passwd: all authentication tokens updated successfully.
[root@localhost home]# echo "123" |passwd --stdin user2
Changing password for user user2.
passwd: all authentication tokens updated successfully.

由于/etc/passwd包含了用户的家目录,所以编辑这个文件,将家目录修改成

/mnt/ftppart/home/user1
/mnt/ftppart/home/user2

[root@localhost home]# vim /etc/passwd

FTP服务器站点的创建_FTP服务器_03

[root@localhost home]# cd /mnt/ftppart/

[root@localhost ftppart]# mkdir home #为用户建立一个新的家目录

[root@localhost ftppart]# cd /home/ #切换到老的家目录下

[root@localhost home]# mv * /mnt/ftppart/home/ #将老的家目录找好移动到新的家目录下

为了验证用户是否被移动到新的家目录下,进行以下操作:

FTP服务器站点的创建_休闲_04

但是如果我们在重新建一个账号,会遇到一个问题,就是该新建的账号家目录仍然在/home/下,不会自动移动到新家目录下,对此,我们采取以下做法:

[root@localhost ftppart]# useradd -D -b /mnt/ftppart/home/

FTP服务器站点的创建_FTP服务器_05

(3)磁盘配额:

编辑 /etc/fstab,将新的硬盘分区放进去。

vim /etc/fstab

FTP服务器站点的创建_FTP服务器_06

[root@localhost ~]# mount -o remount /dev/sdb1 #重新挂载

FTP服务器站点的创建_FTP服务器_07

[root@localhost ~]# cd /mnt/ftppart/

[root@localhost ftppart]# quotacheck -augv –c

FTP服务器站点的创建_职场_08

[root@localhost ftppart]# edquota -u user1 #针对每个用户进行编辑

FTP服务器站点的创建_职场_09

[root@localhost ftppart]# edquota -p user1 user2

[root@localhost ftppart]# echo "quotaon /dev/sdb1" >>/etc/rc.d/rc.local #重定向到开机脚本

由于匿名账号的默认家目录在/var/ftp,所以在ftp上进行修改:

[root@localhost ftppart]# vim /etc/vsftpd/vsftpd.conf

FTP服务器站点的创建_职场_10

启动ftp服务:

service vsftpd restart

4.测试:ftp://192.168.5.100

(1)匿名用户登陆:

FTP服务器站点的创建_休闲_11

本地用户登录:

FTP服务器站点的创建_职场_12

FTP服务器站点的创建_职场_13

本地用户可以再ftp服务器上传和下载东西。

(2)测试每个用户登陆的最大数量:

FTP服务器站点的创建_FTP服务器_14

(3)测试同时访问ftp服务器的最大人数,这是我开的第四台机子:

FTP服务器站点的创建_休闲_15

(4)本地用户的速度测试:

FTP服务器站点的创建_职场_16

测试完毕。