首页 > 代码库 > vsftp服务

vsftp服务

FTP服务概述:
FTP服务器(File Transfer Protocol Server)是在互联网上提供文件存储和访问服务的计算机,它们依照FTP协议提供服务。
FTP(File Transfer Protocol: 文件传输协议)作用: Internet 上用来传送文件的协议
常见FTP服务器:
windows:Serv-U FTP Server
Linux:ProFTPD:(Professional FTP daemon)一个Unix平台上或是类Unix平台上(如Linux, FreeBSD等)的FTP服务器程序。

今天的主角:vsftp
VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP 从此名称可以看出来,编制者的初衷是代码的安全。
特点:
它是一个安全、高速、稳定的FTP服务器;

模式: C/S 模式

20 (传数据) 21 (传指令)
fsp(File Service Protocol): 文件服务协议。

 

lftp
注:从RHEL6开始,系统镜像中默认没有ftp客户端命令。取而代之的是lftp命令
Linux客户端:
lftp 是一个功能强大的下载工具,它支持访问文件的协议: ftp, ftps, http, https, hftp, fish.(其中ftps和https需要在编译的时候包含openssl库)。llftp的界面非常好一个shell: 有命令补全,历史记录,允许多个后台任务执行等功能,使用起来非常方便。它还有书签、排队、镜像、断点续传、多进程下载等功能。

 

安装

[root@ygy130 ~]# yum install vsftpd lftp -y

[root@yu131 ~]# yum install lftp -y

相关文件说明

/etc/vsftpd/vsftpd.conf:vsftpd 的核心配置文件

/etc/vsftpd/ftpusers:用于指定哪些用户不能访问FTP 服务器。  黑名单

/etc/vsftpd/user_list:指定允许使用vsftpd 的用户列表文件。  白名单

vim  /etc/vsftpd/user_list

# 如果userlist_deny= YES(默认),绝不允许在这个文件中的用户登录ftp,甚至不提示输入密码

#prompt 提示

/etc/vsftpd/vsftpd_conf_migrate.sh:是vsftpd 操作的一些变量和设置脚本

/var/ftp/:默认情况下匿名用户的根目录

开机自启动

[root@ygy130 ~]# chkconfig vsftpd on

启动

[root@ygy130 ~]# /etc/init.d/vsftpd start

windows匿名用户就可以访问linux了。   但是没有权限。

这个路径对应linux  /var/ftp/pub/

技术分享

[root@ygy130 ~]# cp /etc/passwd /var/ftp/pub/

技术分享

 

修改配置文件,赋予权限。

[root@ygy130 ftp]# mkdir /var/ftp/data

[root@ygy130 ftp]# chown ftp:ftp /var/ftp/data 改变属组属主。

 [root@ygy130 vsftpd]# vim /etc/vsftpd/vsftpd.conf

这样匿名用户就能上传到data目录了,不能改名字,不能删除。

技术分享

anon_other_write_enable=YES  ##默认没有,需要手动添加下这行

这样匿名用户就有删除和改名字权限了。 比较危险,慎用。data目录

 

使用用户名登陆ftp服务器。

[root@ygy130 ~]# useradd -s /sbin/nologin team1
[root@ygy130 ~]# useradd -s /sbin/nologin team2
[root@ygy130 ~]# echo "123456" | passwd --stdin team1

[root@ygy130 ~]# echo "123456" | passwd --stdin team2

 

ftp 和www web服务器相结合。

www web服务器根目录:  /var/www/html

只允许:team1和team2两用户 可以上传。 vsftp禁止匿名。

 [root@ygy130 ~]# vim /etc/vsftpd/vsftpd.conf

anonymous_enable=NO
local_root=/var/www/html      #:设置本地用户的根目录为/var/www/html
chroot_list_enable=YES    #激chroot 功能
chroot_list_file=/etc/vsftpd/chroot_list #设置锁定用户在根目录中的列表文件。此文件存放要锁定的用户名

 [root@ygy130 ~]# vim  /etc/vsftpd/chroot_list

 技术分享

重启服务。

 修改目录权限:chmod -R o+w /var/www/html/

 

这样就指定了系统用户登录ftp,只能上传。

 

vsftp服务