linux 安装vsftpd服务器,vsftpd服务器的搭建

首先来介绍下FTP服务:

FTP使用的是TCP端口的20,21号端口

20端口:上传下载数据        数据连接

21端口:发送FTP命令信息     控制连接

FTP使用的数据连接模式:

主动模式:服务器20端口主动连接客户端

被动模式:客户端连接到服务器的??端口(未知端口)

FTP的用户类型:

匿名用户:ftp或anonymous

本地用户:Linux服务器中的系统用户账号

虚拟用户:存放在独立的账号文件中

常用的FTP服务器程序:

proftpd,pureftpd,vsftpd...

常用的客户端程序

FTP命令,filezilla,fgtp....

配置文件:

配置目录在/etc/vsftpd/

主要配置文件:vsftpd.conf

黑名单文件:ftpuser

黑白名单:user_list

[root@localhost vsftpd]# ls

ftpusers  user_list  vsftpd.conf  vsftpd_conf_migrate.sh

下面就配置文件中出现的属性权限进行说明:

常用的全局配置:

listen:是否以独立的运行的方式监听服务

listen_address:设置监听的FTP服务的ip地址

listen_port:设置监听的端口

write_enable:是否启用写入模式

download_enable:是否允许下载

userlist_enable:是否启用user_list列表文件

userlist_deny:是否禁用user_list中的用户

max_clients:最大并发的客户端个数

max_per_ip:限制每个客户机ip的并发数

常用的匿名FTP配置:

anonymous_enable:是否启用匿名访问FTP

anon_umask:匿名上传的权限掩码

anon_root:匿名用户的根目录

anon_upload_enable:是否允许匿名用户进行上传

anon_mkdir_write_enable:是否允许匿名用户创建目录

anon_other_write_enable:是否允许匿名用户其他写入控制,基本上这里的权限就是修改和删除

anon_max_rate:最大传输速率(字节/秒)

常用的本地用户FTP配置:

local_enable:是否允许本地用户使用FTP

local_umask:本地用户上传的权限掩码

local_root:本地用户FTP的根目录

local_max_rate:本地用户的最大传输速率(字节/秒)

4,下面我们就来亲手实践下,搭建可匿名上传的FTP服务

要求:启用匿名访问,允许创建目录

开放其他写入权限(改名/删除/移动等)

5,首先查看vsftp服务的软件是否安装

rpm -qa |grep vsftp

6,没有安装自行安装,这里就不再赘述

关于搭建服务器方面的内容,我个人认为首先要检查系统是否安装了我们需要服务的所需软件。然后再做进一步的搭建。

7,修改配置文件:/etc/vsftpd/vsftpd.conf

[root@localhost vsftpd]# cat /etc/vsftpd/vsftpd.conf |grep -vE "^#|^$"

anonymous_enable=YES    //是否允许匿名访问

anon_upload_enable=YES  //是否允许匿名上传

anon_umask=022    //匿名用户上传的掩码权限

anon_mkdir_write_enable=YES    //是否允许匿名用户新建目录

anon_other_write_enable=YES    //是否开放其他权限

write_enable=YES    //是否允许写入

listen=YES    //是否监听服务

pam_service_name=vsftpd

userlist_enable=YES

tcp_wrappers=YES

write_enable=YES

local_umask=022

dirmessage_enable=YES

xferlog_enable=YES

connect_from_port_20=YES

xferlog_std_format=YES

local_enable=YES

上面有注释的是我们这次配置匿名FTP服务需要设置的属性,下面的暂时不介绍,等用到的时候会介绍

默认情况下,FTP服务的默认目录在/var/ftp/pub/

8,现在我们就可以测试下

[root@localhost ~]# service vsftpd status

vsftpd is stopped

[root@localhost ~]# service vsftpd start

Starting vsftpd for vsftpd:                                [  OK  ]

[root@localhost ~]# chkconfig --list vsftpd

vsftpd          0:off   1:off   2:off   3:off   4:off   5:off   6:off

[root@localhost ~]# chkconfig vsftpd  on

[root@localhost ~]# chkconfig --list vsftpd

vsftpd          0:off   1:off   2:on    3:on    4:on    5:on    6:off

在客户机浏览器或者我的电脑地址栏中输入ftp://服务器ip地址,这时候进去之后我们会发现设置了匿名用户创建目录,但是还是提示创建不了。这是/var/ftp/pub/目录的权限我们还没有设置的原因,现在我们来看下,此目录的默认权限是什么:

[root@localhost pub]# ls -ld

drwxr-xr-x 3 root root 4096 Apr  9 20:29 .

现在知道是什么原因了吗?现在我们把此目录的权限改下再试试看

第一种方法:修改目录的属主

[root@localhost pub]# chown ftp /var/ftp/pub/

[root@localhost pub]# ls -ld

drwxr-xr-x 3 ftp root 4096 Apr  9 20:29 .

第二种方法:修改other的权限

[root@localhost pub]# chmod o=rwx /var/ftp/pub/

[root@localhost pub]# ls -ld

drwxr-xrwx 3 root root 4096 Apr  9 20:29 .

重启服务再试试。上述问题即可解决

FTP服务的本地用户访问等可以参考匿名用户的访问过程。

另外,在使用本地用户进行登录的时候最好把anonymous_enable设置为no,这样方便看效果

记住ftpuser中的用户是被禁止访问的

黑白名单:user_list

由userlist_enable决定是否启用user_list文件

当userlist_deny=YES时,user_list文件是黑名单,否则是白名单

再看一个本地用户登录的FTP服务配置:

要求:最多20个并发,每个ip地址最多2个并发

匿名用户FTP上传下载速度限速为50KB/s

本地用户FTP上传下载限速200KB/s

local_enalbe=YES

max_clients=20

max_per_ip=2

anon_max_rate=50000

local_max_rate=200000

效果各自实验下即可看到,查看下载速率的话建议使用客户端软件进行查看,或者在Linux的客户端下进行下载查看

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值