Vsftpd服务传输

1. FTP简单介绍

文件传输协议FTP(File Transfer Protocol),即能够让用户在互联网中上传、下载文件的文件协议

FTP客户端   FTP服务器端

FTP占用两个端口号(21,20)

21端口:命令控制,用于接受客户端执行的FTP命令。

20端口:数据传输,用于上传、下载文件数据。

FTP数据传输类型:

主动模式:FTP服务器端主动向FTP客户端发起连接请求。

被动模式:FTP服务器等待FTP客户端的连接请求。

2. 安装Vsftpd服务程序

Vsftpd即“Very Secure FTP Dawmon”一款运行在Unix操作系统的FTP服务端程序,

主打:安全性、完全开源免费、速度高、支持IPv6、虚拟用户功能等。

#yum install vsftpd -y

#iptables -F        //清空防火墙规则

#service iptables save   //保存清空后的防火墙规则

/usr/sbin/vsftpd      主程序

/etc/vsftpd/ftpusers  & /etc/vsftpd/user_list   //用户禁止登陆列表

/etc/vsftpd/vsftpd.conf     //主配置文件

配置文件参数作用详解:

listen=yes|no             //是否以独立运行方式监听服务

listen_address=ip_地址    //设置要监听的ip地址

listen_port=21            //设置ftp的监听端口

download_enable=yes|no    //是否运行下载

userlist_enable=yes|no    //是否启用“禁止登陆用户名单”

max_client=0              //最大客户端连接数,0位不限制

anonymous_enable=yes| no  //是否允许匿名用户访问

anon_upload_enable=yes|no //是否允许匿名用户上传文件

anon_umask=022            //匿名用户上传文件的umask值

anon_root=/var/ftp        // 匿名用户的ftp根目录

anon_mkdir_write_enable=yes|no   //是否开放匿名用户创建目录

anon_other_write_enable=yes|no   //是否开放匿名用户其他写入权限

local_enable=yes|no        //是否允许本地用户登录ftp

local_umask=022

local_root=/var/ftp

chroot_local_user=yes|no   //是否将用户权限禁锢在ftp目录,安全

3. Vsftpd的三种验证方式

匿名访问:任何人无需验证口令即可登录ftp服务器。

本地用户:使用ftp服务器中的账号、密码信息。

匿名用户:创建的独立的ftp账号资料。

3.1 匿名访问模式

vim /etc/vsftpd/vsftp.conf

-------------------------------------

anonymous_enable=yes

anon_upload_enable=yes

anon_mkdir_write_enble=yes

anon_other_wite_enable=yes

write_enbale=yes

-----------------------------------------

服务器端:chmod ftp /var/ftp/pub         //修改pub目录宿主

setenforce=0                  //关闭selinux

vim /etc/selinux/conf

systemctl restart vsftpd

客服端配置:yun install ftp -y

ftp 192.168.100.10(服务器ip)

anonymous

3.2 本地用户模式

vim /etc/vsftpd/vsftp.conf

-------------------------------------

anonymous_enable=no

local_enable=yes

write_enable=yes

userlist_deny=yes

userlist_enable=yes

pam_service_name=vsftpd

-----------------------------------------

systemctl restart vsftpd

useradd jerry && echo "jerry" | passwd --stdin jerry   //添加userlist外的用户

iptables -F

setenforce=0

--------------------------------

3.3 虚拟用户模式(最安全)

3.3.1 建立虚拟FTP用户数据库文件

cd /etc/vsftpd

vim myvuser.list      //单数行账号   双数为密码

Jerry

Jerry

db_load -T -t hash -f myvuser.list myvuser.db   //使用dbload命令用hash算法生成数据库文件myvuser.db

chmod 600 myvuser     //修改权限

rm -f myvuser.list

3.3.2 创建FTP根目录及虚拟用户映射的系统用户

useradd -d /var/ftproot -s /sbin/nologin virtual     //创建默认文件根目录/var/ftproot

ls -ld /var/ftproot/

chmod -Rf 755 /var/ftproot/

3.3.3 建立支持虚拟用的PAM认证文件

vim /etc/pam.d/vsftpd.u

auth required pam_userdb.so.db=/etc/vsftpd/myvuser //myvuser不加后缀

account required pam_userdb.so.db=/etc/vsftpd/myvuser

3.3.4 在vsftpd.conf文件中添加支持配置

---------- -------------------------------------

anonymous_enable=NO

local_enable=YES

guest_enable=YES

guest_username=virtual

pam_service_name=vsftpd.vu                  //指定pam文件

write_enable=YES

allow_writeable_chroot=YES                  //允许根目录可写

user_config_dir=/etc/vsftpd/myvusers_dir

-----------------------------------------------

3.3.5 为虚拟用户设置不同的权限

............................................................

vim /etc/vsftpd/vsftpd.conf

user_config_dir=/etc/vsftpd/myvusers_dir  //创建用户独立权限配置文件存放目录

cd  /etc/vsftpd/myvusers_dir

vim Jerry                                     //配置Jerry用户的具体权限

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

......................................................................

3.3.6 重启 vsftpd服务  systemctl restart vsftpd

4. 可插拔认证模块PAM

PAM:Pluggable Authentication Modules一种认证机制

应用  -> PAM api (应用接口层) -> 模块 (鉴别模块层)

重要pam目录:

/lib/security:pam         //认证模块

/etc/pam.d                //针对不同服务定义好的pam配置文件

时间: 2024-08-24 01:59:45

Vsftpd服务传输的相关文章

CentOS 7.0 使用Vsftpd服务传输文件

CentOS 7.0 使用Vsftpd服务传输文件 文件传输协议 文件传输协议(FTP,File Transfer Protocol),即能够让用户在互联网中上传.下载文件的文件协议,而FTP服务器就是支持FTP传输协议的主机,要想完成文件传输则需要FTP服务端和FTP客户端的配合才行. 通常用户使用FTP客户端软件向FTP服务器发起连接并发送FTP指令,服务器收到用户指令后将执行结果返回客户端. FTP协议占用两个端口号: 21端口:命令控制,用于接收客户端执行的FTP命令. 20端口:数据传

使用 vsftpd 服务传输文件

1.文件传输协议(File Transfer Protocol,FTP) FTP是一种在互联网中进行文件传输的协议,基于客户端/服务器模式,默认使用20.21号端口,其中端口20(数据端口)用于进行数据传输,端口21(命令端口)用于接受客户端发出的相关FTP命令与参数. FTP服务器是按照FTP协议在互联网上提供文件存储和访问服务的主机,FTP客户端则是向服务器发送连接请求,以建立数据传输链路的主机.FTP协议有下面两种工作模式. 主动模式:FTP服务器主动向客户端发起连接请求. 被动模式:FT

使用Vsftpd服务传输文件

vsftpd(very secure FTP daemon)服务程序vsftpd服务程序三种认证模式(匿名开放模式.本地用户模式.虚拟用户模式)vsftpd服务程序的主配置文件/etc/vsftpd/vsftpd.confvsftpd服务配置格式关于反掩码umask 原文地址:https://blog.51cto.com/948891/2403973

第11章 使用Vsftpd服务传输文件

本章讲述一下概念及服务配置文件传输协议FTP(File Transfer Protocol)可插拔认证模块PAM(Pluggable Authentication Module)简单文件传输协议TFTP(Trivial File Transfer Protocol) FTP是一种在互联网中进行文件传输的协议,基于客户端/服务器模式,默认使用20.21号端口,其中端口20(数据端口)用于进行数据传输,端口21(命令端口)用于接受客户端发出的相关FTP命令与参数.FTP协议有下面两种工作模式.主动模

linux学习11章-使用vsftpd服务传输文件和12章-使用Samba或NFS实现文件共享

2019年12月8日 vsftpd作为更加安全的文件传输的服务程序,允许用户以三种认证模式登录到FTP服务器上. 匿名开放模式:是一种最不安全的认证模式,任何人都可以无需密码验证而直接登录到FTP服务器. 本地用户模式:是通过Linux系统本地的账户密码信息进行认证的模式,相较于匿名开放模式更安全,而且配置起来也很简单.但是如果被黑客破解了账户的信息,就可以畅通无阻地登录FTP服务器,从而完全控制整台服务器. 虚拟用户模式:是这三种模式中最安全的一种认证模式,它需要为FTP服务单独建立用户数据库

CentOS 7.0 使用Vsftpd服务传输文件(唐杰)

http://note.youdao.com/noteshare?id=0b9d94cbbcc220d2e827e6994016e14a

FTP文件传输协议之vsftpd服务

一.FTP服务概述 FTP(File Transfer Protocol,文件传输协议)是典型的C/S结构的应用层协议,需要由服务端软件.客户端软件共同实现文件传输功能 FTP服务器默认使用TCP协议的20.21端口与客户端实现通信.20端口用于建立数据连接,并传输数据文件:21端口用于建立控制连接,并传输FTP控制命令.FTP数据连接分为主动模式和被动模式 主动模式:服务器主动发起数据连接 被动模式:服务器被动等待数据连接 vsftpd软件 vsftpd是目前在Linux/Unix领域应用十分

vsftpd文件传输 、 Samba共享服务

Vsftpd 1.什么是FTP? FileTransfer Protocol 基于C/S结构的文件传输协议 2.使用什么协议?什么端口? TCP 21    建立命令链路 TCP 20    在主动传输模式下服务器使用20端口向客户端建立数据链路 3.FTP工作原理 --------- Client               Server-------------- 1031                21 1032                 20 ①客户端向服务器发出连接请求,同时

Vsftpd文件传输服务(三种认证模式:匿名开放 、本地用户、虚拟用户)

FTP是一种在互联网中进行中文件传输的协议,基于客户端/服务器端模式,默认使用20.21号端口,其中端口20(数据端口)用于进行数据传输,端口21(命令端口)用于接受客户端发出的相关FTP命令与参数. FTP的出现解决了各类设备.各类操作系统之间文件传输问题,极大地方便了用户通过网络资源的获取. FTP服务器常部署于企业内网中,具有容易搭建.方便管理的特点,目前有些FTP客户端工具还可以支持文件的多点下载以及断点续传,因此FTP服务得到了广大用户的青睐. FTP协议有两种工作模式: 1. 主动模