Linux系统管理:创建一个简单的vsftpd服务器

作者:lgzeng

主要配置文件如下:
/etc/vsftpd/vsftpd.conf    主配置文件
/etc/vsftpd.ftpusers       阻止用户访问FTP服务器的用户名称清单
/etc/vsftpd.userlist       控制用户访问FTP服务器的用户名称清单,由/etc/vsftpd/vsftpd.conf中的
userlist_deny参数决这是允许还是拒绝

FTP 分为两类,一种为PORT FTP,也就是一般的FTP 另一类是PASVFTP,分述如下:

1.PORT FTP      这是一般形式的FTP,首先会建立控制频道,默认值是port 21,也就是跟 port 21 建立联机,并透过此联机下达指令。第二,由FTP server 端会建立数据传输频道,默认值为20,也就是跟port 20 建立联机,并透过port 20 作数据的传输。

2.PASV FTP      跟PORT FTP 类似,首先会建立控制频道,默认值是port 21,也就是跟 port 21 建立联机,并透过此联机下达指令。第二,会由client 端做出数据传输的请求,包括数据传输port 的数字。

建立一个简单的FTP服务器

1、编辑/etc/vsftpd/vsftpd.conf文件
anonymous_enable=YES
local_enable=YES      允许本地用户访问FTP
write_enable=YES      允许写入
local_umask=022       本地用户创建文件的默认权限掩码
xferlog_enable=YES   /*如果启动,上传与下载的信息将被完整纪录在底下xferlog_file 所定义的
档案中。预设为开启。*/   而默认是在/var/log/vsftpd.log中
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES   /*若是启动,则vsftpd 将会以独立运作的方式执行,若是vsftpd 独立执行,如
RedHat9 的默认值,则必须启动 若是vsftpd 包含在xinetd 之中,则必须关闭此功能,如 RedHat8。在RedHat9 的默认值为YES。 */
tcp_wrappers=YES

2、重启VSFTPD服务

只要启动了vsftpd服务,自动启用一个匿名访问的FTP,默认访问是/var/ftp目录。
直接重启动VSFTP 服务,命令如下:               
[root@relay vsftpd]# /sbin/service vsftpd  restart

3、客户端访问

方式一:ftp://username:password@ftpservername 启用用户访问
方式二:ftp://ftpservername  启用匿名访问
方式三:文本模式下访问如在windows命令提示符下进行访问。