您的位置:首页 > 编程语言 > PHP开发

vsftpd详解

2016-02-17 17:07 711 查看
vsftpd详解

1 简介

FTP:file transfer protocol 属于应用层的协议 服务端 管理连接:21/tcp 数据连接 20/tcp 数据的传输模式: 二进制 文本 ftp模式: 1. 主动FTP 1) 客户端x>1024端口连接服务端的21端口 2) 客户端监听在x+1端口,并发送port x+1到服务端 3) 服务端使用20端口连接客户端的x+1 2. 被动FTP 1) 客户端x>1024端口连接服务器的21端口 2) 客户端发送PASV命令到服务端 3) 服务端开启随机端口y,并发送port y命令到客户端 4) 客户端使用x+1端口连接服务端的y端口 x,y都是大于1024的随机端口 主动连接图解:

被动连接图解

主动模式和被动模式的优缺点:[/b][/b] 1. 主动模式对服务端管理有利,但是对客户端不利,因为服务端通过20端口去连接客户端的大于1024的端口x+1,而这个端口可能被防火墙阻塞了。 2. 被动模式对客户端管理有利,但是对服务端管理不利,因为客户端在发起数据连接到服务器的大于1024的端口y连接的时候,而这个端口可能被服务端的防火墙关闭 综上:为了提供有效的ftp服务,一般都是使用这个被动模式,因为服务端的行为是可控的,但是客户端却是有不同的配置,无法控制。 连接模式的配置:[/b][/b] 各客户端默认连接方式说明: 1、 IE浏览器访问方式-------被动模式 2、 Linux字符连接------------被动模式 3、 Windows字符连接-------被动模式 1) IE更改FTP连接方式为主动方法: 工具---Internet选项---高级---使用被动FTP(去掉勾选)-------OK 2) Linux下更改ftp连接方式为主动: 当ftp正常连接后输入:passive,相当灯的开关 liunx启动方式: ftp> passive Passive mode off. ftp> passive Passive mode on. 3) 各个windows客户端则在设置内设置

2 ftp安装

ftp的服务端程序: Serv-u vsftpd:安全 轻巧,建议linux使用这个 Filezilla wu-ftpd proftpd pureftpd 客户端程序: CLI模式: ftp lftp GUI模式: gftpd FlashFXP Cuteftp Filezilla 学习使用[/b]vsftpd[/b]这个软件[/b][/b] 1.查看是否安装了软件 [root@samba-server ~]# yum list vsftpd 2.安装vsftpd [root@samba-server ~]# yum -y install vsftpd 3.查看安装了什么文件,doc man之类的显示了 [root@samba-server ~]# rpm -ql vsftpd /etc/logrotate.d/vsftpd #日志滚动配置 /etc/pam.d/vsftpd #pam认证配置 /etc/rc.d/init.d/vsftpd #服务脚本 /etc/vsftpd #主目录 /etc/vsftpd/ftpusers #用于指定哪些用户不能访问FTP服务器 /etc/vsftpd/user_list #用于允许使用vsftpd的用户列表文件 /etc/vsftpd/vsftpd.conf #主配置文件 /etc/vsftpd/vsftpd_conf_migrate.sh #vsftpd操作的一些变量和设置脚本 /usr/sbin/vsftpd #主程序 /var/ftp #ftp目录 /var/ftp/pub #共享目录 上传和下载: 下载文件相对安全,但是上传文件则会有风险,因此vsftpd默认设置了这样的权限

pub目录默认只有rx权限,只有上传目录有这个rwx权限 一般系统安装服务之后,会自动创建一个不能登录的系统用户,用作服务的运行,vsftpd也不例外

服务开启[/b],[/b]开机自启动[/b][/b] [root@localhost vsftpd]# chkconfig vsftpd on [root@localhost vsftpd]# service vsftpd start Starting vsftpd for vsftpd: [ OK ] 安装客户端软件[/b][/b] [root@localhost vsftpd]# yum -y install ftp 状态响应码 1xx:信息码 2xx:成功状态码 3xx:进一步提示补全信息的状态码 4xx:客户端错误 5xx:服务器端错误 ftp[/b]用户总共有三类[/b]:[/b] 匿名用户 ftp anonymous 本地用户 /etc/passwd /etc/shadow下的用户密码 虚拟用户 将一个本地用户映射为多个虚拟用户 实现方式: PAM(手动定义配置文件认证方式) 1.mysql,创建表 ,创建表 user passwd,通过pam配置,访问这类虚拟用户通过本地的一个用户映射访问,不过只能映射一个本地用户,但是可以为每个虚拟用户设置这个权限,虚拟用户的权限默认是这个匿名用户的权限 2.通过配置文件/etc/vsftpd/vuser定义,然后通过命令db_load把文件转化为二进制格式,前提得安装rpm工具包db4_utils USERNAME(奇数) PASSWORD(偶数) 默认系统用户,包括[/b]root[/b]不能登录,原因是[/b]ftp[/b]是明文协议:[/b][/b] /etc/vsftpd/user_list /etc/vsftpd/ftpusers root bin daemon adm lp sync shutdown halt mail news uucp operator games nobody 其控制流程为;先通过user_list检查(可以设置为黑名单或者白名单),通过的用户再让ftpusers(黑名单)检查一遍,最后才能登录. 上传文件本地文件的权限问题[/b]: A主机tom用户 使用B主机提供的一个ftp账户hadoop,A主机使用hadoop登录 hadoop有上传文件的权限 A主机要上传本地的文件,前提是tom用户有该文件的权限即可 上传完成后的属主属组为hadoop的属主属组 用户权限[/b]: 事实上权限是系统用户权限和服务配置的权限的交集 日志信息记录:[/b][/b] 下载上传的日志:/var/log/xferlog 账户登录日志:/var/log/secure

3 配置详解与配置样例

养成好习惯,配置之前,备份下配置文件 [root@samba-server vsftpd]# cp vsftpd.conf vsftpd.conf.bak 注意:斜体的蓝色选项是默认配置文件没有给出的,详细的参数可以参考第5章节的vsftpd参数详解 /etc/vsftpd/vsftpd.conf 其中#是可以启用的配置,有些参数是默认配置,有些则不是. 匿名用户配置 anonymous_enable=YES (默认使用ftp用户/etc/passwd下的ftp) #anon_upload_enable=YES#允许匿名用户上传,前提是该用户有对系统目录有写权限 #anon_mkdir_write_enable=YES#允许匿名用户创建目录 #anon_other_write_enable=YES#[/i]允许其他匿名用户的其他操作,如删除,移动等[/i][/i] 系统本地用户配置 local_enable=YES #允许本地用户登录 write_enable=YES#允许上传文件 上传文件的umask anon_umask[/i] local_umask=022 # umask 日志配置 xferlog_std_format=YES #默认使用xferlog日志,记录上传下载相关,如果为NO的话,则日志格式为vsftpd_log_file xferlog_enable=YES #上面选项为YES,enable才生效 #xferlog_file=/var/log/xferlog #日志名字和策略配置在文件/etc/logrotate.d/vsftpd中 默认文件容易被扫描,建议修改位置: xferlog_file=/var/log/ vsftpd.log,日志配置文件也要相应修改 改变上传文件的属主 #chown_uploads=YES #修改匿名用户,仅对匿名用户生效 #chown_username=whoever 锁住本地用户在自己的家目录下,默认是没有锁定 #chroot_local_user=YES #锁定所有用户 #chroot_list_enable=YES #锁定部分用户,用户列表在chroot_list中 # (default follows) #chroot_list_file=/etc/vsftpd/chroot_list 显示提示信息 dirmessage_enable=YES #切换目录的时候显示提示信息,需要在对应的目录创建文件.message #ftpd_banner=Welcome to blah FTP service. #登录提示信息,自定义 vsftpd使用pam机制认证 pam_service_name=vsftpd #名字要和pam-msyql配置文件一致即可 guest_enable=YES[/b] guest_username=vuser #[/b]本地账户,用做映射虚拟账户使用[/b][/b] 是否启用控制用户登录的列表文件 userlist_enable=YES 默认文件为/etc/vsftpd/user_list userlist_deny=YES|NO #控制user_list分别成为黑名单,白名单,默认白名单 /etc/vsftpd/ftpusers中的用户不允许使用ftp服务 tcp_wrappers=YES #允许tcp_wrapper管理控制 服务模式: listen=YES #独立服务如果为NO,则可以配置成瞬时守护进程,需要在xinetd目录创建配置文件 连接限制[/i][/i] max_clients #[/i]最大的并发连接数[/i][/i] max_per_ip#[/i]每个[/i]ip[/i]同时可以发起的并发请求数[/i][/i] 传输速率[/i][/i] anon_max_rate[/i]:匿名用户的最大传输速率[/i],[/i]单位是[/i]bytes/s[/i] local_max_rate[/i]:本地用户的最大传输速率,单位是[/i]bytes/s[/i] SSL会话配置 ssl_enable=YES[/i] ssl_tlsv1=YES #[/i]开启[/i]v1[/i]和[/i]v3[/i]版本,[/i]v2[/i]不安全,不使用[/i][/i] ssl_sslv3=YES[/i] allow_annon_ssl=NO #[/i]匿名用户没必要加密[/i][/i] force_local_data_ssl=YES[/i] force_local_logins_ssl=YES [/i] rsa_cert_file=/etc/vsftpd/ssl/vsftpd_cert.pem #[/i]证书[/i][/i] rsa_private_key_file=/etc/vsftpd/ssl/vsftpd_key.pem #[/i]私钥[/i][/i] #修改了配置文件,需要重启服务,并且重新连接ftp 例子: 1.客户端匿名登录,账户是anonymous 或者ftp 密码都为空 相关配置: anonymous_enable=YES

2.配置匿名用户可以上传文件,创建目录,删除文件,按照次序测试 创建匿名用户的共享目录[root@vsftpd ftp]# mkdir anonshare 其权限为drwxr-xr-x 2 root root 4096 Feb 15 16:53 anonshare 而匿名用户映射使用的本地帐号是ftp,因此需要赋予此目录这个写权限 设置此目录有读写执行权限 [root@vsftpd ftp]# setfacl -m u:ftp:rwx anonshare/ 特别注意:如果设置为d:u:ftp:rwx,反正无法上传文件等 1) anonymous_enable=YES #默认只能下载文件 #配置下面的选项,重启服务,重新连接,仅仅可以上传文件 2) anon_upload_enable=YES #配置下面的选项,重启服务,重新连接,可以创建目录 3) anon_mkdir _write_enable=YES

#配置下面的选项,重启服务,重新连接,可以删除文件等其他权限 4) anon_other_write_enable=YES

3.锁定用户在自己的家目录下,不能切换到系统的其他目录 默认只有匿名用户被锁定在在/var/ftp/目录下 其他用户登录则是在自己的/home/username目录下,然后可以任意切换目录,特别不安全(ftp是明文协议) ftp> pwd 257 "/home/hadoop" ftp> cd /tmp #任意切换查看 250 Directory successfully changed. 1)限制所有用户 chroot_local_user=YES 结果,每个本地用户登录都是以下的情况 ftp> pwd 257 "/" ftp> cd /etc 550 Failed to change directory. 2)限制部分用户锁定用户在自己的家目录下 #chroot_local_user=YES chroot_list_enable=YES chroot_list_file=/etc/vsftpd/chroot_list [root@vsftpd ~]# vi /etc/vsftpd/chroot_list ubuntu gentoo 结果:除了列表外的其他用户,都没有被锁在家目录下(前提是用户本身有家目录) 3.日志文件配置,开启xferlog功能,记录上传和下载的文件 xferlog_std_format=YES xferlog_enable=YES #xferlog_file=/var/log/xferlog #默认存放位置 xferlog_file=/var/log/vsftpd.log#修改为新文件

日志文件的配置全局文件为/etc/logrotate.conf xferlog类型的配置文件可以在目录/etc/logrotate.d/下 /etc/logrotate.d/vsftpd中配置

认证类的日志在secure文件中

安装类等其他管理日志在文件/var/log/messages中 4.限制匿名和本地用户的传输速度 未限制之前:

配置: #limit rate 100KB/S anon_max_rate=102400 local_max_rate=102400



5.限制用户的登录会话数量为2和单个ip用户的登录会话数量为1 #limit connection max_clients=2 max_per_ip=1 结果: 单个ip用户只能登录一次 总共登录到达第三次则拒绝登录 421 There are too many connected users, please try later. 远程主机关闭连接。 6.把ftp服务设置为瞬时守护进程 #listen=YES 然后在/etc/xinetd.d/目录下创建配置文件vsftpd #经过测试,未能成功 7.控制用户登录,其详解可以看ftp安装用户那一栏 userlist_enable=YES userlist_deny=NO|YES #分别把控制文件设置为白名单和黑名单,默认是黑名单 放行root用户登录的方法: 配置 userlist_enable=YES userlist_deny=NO 删除配置文件/etc/vsftpd/ftpusers的root用户,root就可以登录,强烈不建议这样做,明文协议,你懂的 抓包查看 [root@vsftpd ~]# tcpdump -i eth0 -n -X -vv tcp port 21



8,修改上传文件的属主统一为hadoop,仅对匿名用户生效

chown_uploads=YES chown_username=hadoop

4 基于openssl的ftps创建

由于ftp是明文协议,非常不安全,因此可以通过高ssl来配置ftps 1.创建这个私有CA所需目录和文件 cd /etc/pki/CA mkdir certs newcerts crl touch index.txt echo 01 > serial 2.生成服务器私钥 (umask 077;openssl genrsa -out private/cakey.pem 2048) Generating RSA private key, 2048 bit long modulus .............................................+++ .........................................................+++ e is 65537 (0x10001) 3.生成服务器的自签证书 [root@vsftpd CA]# openssl req -new -x509 -key private/cakey.pem -out cacert.pem You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [CN]: State or Province Name (full name) [GuangDong]: Locality Name (eg, city) [GuangZhou]: Organization Name (eg, company) [Tech]: Organizational Unit Name (eg, section) [gaibiandu]: Common Name (eg, your name or your server's hostname) []:gaibiandu.com Email Address []: 4.生成vsftpd的私钥 mkdir /etc/vsftpd/ssl [root@vsftpd ssl]# (umask 077;openssl genrsa -out vsftpd.key 2048) Generating RSA private key, 2048 bit long modulus ......+++ ................................+++ e is 65537 (0x10001) 5.生成证书申请 [root@vsftpd ssl]# openssl req -new -key vsftpd.key -out vsftpd.csr You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [CN]: State or Province Name (full name) [GuangDong]: Locality Name (eg, city) [GuangZhou]: Organization Name (eg, company) [Tech]: Organizational Unit Name (eg, section) [gaibiandu]: Common Name (eg, your name or your server's hostname) []:ftp.gaibiandu.com Email Address []: Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: 6.向私有CA申请并颁发证书 [root@vsftpd ssl]# openssl ca -in vsftpd.csr -out vsftpd.crt Using configuration from /etc/pki/tls/openssl.cnf Check that the request matches the signature Signature ok Certificate Details: Serial Number: 2 (0x2) Validity Not Before: Feb 15 12:07:05 2016 GMT Not After : Feb 14 12:07:05 2017 GMT Subject: countryName = CN stateOrProvinceName = GuangDong organizationName = Tech organizationalUnitName = gaibiandu commonName = ftp.gaibiandu.com X509v3 extensions: X509v3 Basic Constraints: CA:FALSE Netscape Comment: OpenSSL Generated Certificate X509v3 Subject Key Identifier: 34:A9:2A:9F:3B:D2:72:41:8D:56:92:5E:EE:E8:D2:01:12:7A:1F:D4 X509v3 Authority Key Identifier: keyid:F7:A8:93:FB:CF:28:CA:B4:FE:87:B8:3D:71:76:A7:A6:CE:E4:2E:C5 Certificate is to be certified until Feb 14 12:07:05 2017 GMT (365 days) Sign the certificate? [y/n]:y 1 out of 1 certificate requests certified, commit? [y/n]y Write out database with 1 new entries Data Base Updated 7.编辑vsftpd.conf配置文件 #ssl ssl_enable=YES ssl_tlsv1=YES ssl_sslv3=YES allow_anon_ssl=NO force_local_data_ssl=YES force_local_logins_ssl=YES rsa_cert_file=/etc/vsftpd/ssl/vsftpd.crt rsa_private_key_file=/etc/vsftpd/ssl/vsftpd.key 8.重启服务生效 9.使用ftp客户端登录测试,windows平台测试 使用flashfxp,fillezilla测试不通过

默认会弹出这个证书,只要本地信任了这个CA的证书,然后这个主机名和ip是对应的,有dns解析,则会显示可信性,过程复杂,暂时不实施,否则为如下

但是信任接收即可;连接上去。 抓包测试:

5 基于openssh的sftp创建

这个功能linux默认实现了,但是这个就属于全系统的登录,不受ftp的控制,相当于该用户的ssh登录的权限。 linux登录 [root@vsftpd ~]# sftp ubuntu@192.168.80.250 Connecting to 192.168.80.250... ubuntu@192.168.80.250's password: sftp> ls fstab issue sftp> pwd Remote working directory: /home/ubuntu sftp> cd /etc sftp> ls windows登录

6 FTP基于PAM和MySQL/MariaDB实现虚拟用户访问控制

1.安装mysql,pam_mysql,vstpd等工具 # yum -y install mysql-server mysql-devel # yum -y groupinstall "Development Tools" "Development Libraries" pam_mysql可以编译安装也可以使用yum 安装 #yum -y install pam_mysql 编译安装 # tar zxvf pam_mysql-0.7RC1.tar.gz # cd pam_mysql-0.7RC1 # ./configure --with-mysql=/usr --with-openssl # make # make install 2.创建虚拟用户账户 1)准备数据库和相关表 mysql> create database vsftpd; mysql> grant select on vsftpd.* to vsftpd@localhost identified by vsftp; mysql> flush privileges; mysql> use vsftpd; mysql> create table users ( -> id int AUTO_INCREMENT NOT NULL, -> name char(20) binary NOT NULL, -> password char(48) binary NOT NULL, -> primary key(id) -> ); 2)添加虚拟用户,这里要特别注意password函数,可能不兼容,则另找解决办法 mysql> insert into users(name,password) values('xiaoming',password('xiaoming')); mysql> insert into users(name,password) values('daming',password('xiaoming')); 3.配置vsftpd 1)建立pam认证所需文件 #vi /etc/pam.d/vsftpd.mysql 添加如下两行 auth required /lib/security/pam_mysql.so user=vsftpd passwd=vsftp host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2 account required /lib/security/pam_mysql.so user=vsftpd passwd=vsftp host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2 加密方式详情可以看文件/usr/share/doc/pam_mysql-0.7/README 2).修改vsftpd的配置文件 建立虚拟用户映射的系统用户及对应的目录 #useradd -s /sbin/nologin -d /var/ftproot vuser #chmod go+rx /var/ftproot vsftpd配置文件添加以下行 anonymous_enable=YES#其他选项为默认 guest_enable=YES guest_username=vuser pam_service_name=vsftpd.mysql #名字要和文件一致 重启服务即可访问

4.修改不同虚拟用户具有不同的权限 1)配置文件添加选项 user_config_dir=/etc/vsftpd/vusers_dir 2)创建目录,并未虚拟账户提供单独的配置文件 mkdir /etc/vsftpd/vusers_dir/ cd /etc/vsftpd/vusers_dir/ touch xiaoming daming xiaoming

daming

测试结果:[/b]xiaoming[/b]可以,下载文件,上传文件,创建目录,删除等,[/b]daming[/b]只能下载文件[/b][/b]

7 vsftpd参数详解(引用)

[align=center]
参数 说明
listen_address=ip address[/b][/b] 指定侦听[/b]IP[/b][/b]
listen_port=port_value[/b][/b] 指定侦听端口,默认[/b]21[/b][/b]
anonymous_enable=YES[/b][/b] 是否允许使用匿名帐户[/b][/b]
local_enable=YES[/b][/b] 是否允许本地用户登录[/b][/b]
nopriv_user=ftp[/b][/b] 指定[/b]vsftpd[/b]服务的运行帐户,不指定时使用[/b]ftp[/b][/b]
write_enable=YES[/b][/b] 是否允许写入[/b][/b]
anon_upload_enable=YES[/b][/b] 匿名用户是否可上传文件[/b][/b]
anon_mkdir_write_enable=YES[/b][/b] 匿名用户是否建立目录[/b][/b]
dirmessage_enable=YES[/b][/b] 进入每个目录是显示欢迎信息,在每个目录下建立[/b].message[/b]文件在里面写欢迎信息[/b][/b]
xferlog_enable=YES[/b][/b] 上传[/b]/[/b]下载文件时记录日志[/b][/b]
connect_from_port_20=YES[/b][/b] 是否使用[/b]20[/b]端口传输数据[/b]([/b]是否使用主动模式[/b])[/b][/b]
chown_uploads=YES[/b]、[/b]chown_username=whoever[/b][/b] 修改匿名用户上传文件的拥有者[/b][/b]
xferlog_file=/var/log/vsftpd.log[/b][/b] 日志文件[/b][/b]
xferlog_std_format=YES[/b][/b] 使用标准文件日志[/b][/b]
idle_session_timeout=600[/b][/b] 会话超时,客户端连接到[/b]ftp[/b]但未操作[/b][/b]
data_connection_timeout=120[/b][/b] 数据传输超时[/b][/b]
async_abor_enable=YES[/b][/b] 是否允许客户端使用[/b]sync[/b]等命令[/b][/b]
ascii_upload_enable=YES[/b]、[/b]ascii_download_enable=YES[/b][/b] 是否允许上传[/b]/[/b]下载二进制文件[/b][/b]
chroot_local_user=YES[/b][/b] 限制所有的本地用户在自家目录[/b][/b]
chroot_list_enable=YES[/b]、[/b]chroot_list_file=/etc/vsftpd/chroot_list[/b][/b] 指定不能离开家目录的用户,将用户名一个一行写在[/b]/etc/vsftpd/chroot_list[/b]文件里,使用此方法时必须[/b]chroot_local_user=NO[/b][/b]
ls_recurse_enable=YES[/b][/b] 是否允许使用[/b]ls -R[/b]等命令[/b][/b]
listen=YES[/b][/b] 开启[/b]ipv4[/b]监听[/b][/b]
listen_ipv6=YES[/b][/b] 开启[/b]ipv6[/b]监听[/b][/b]
pam_service_name=vsftpd[/b][/b] 使用[/b]pam[/b]模块控制,[/b]vsftpd[/b]文件在[/b]/etc/pam.d[/b]目录下[/b][/b]
userlist_enable=YES[/b][/b] 此选项被激活后,[/b]vsftpd[/b]将读取[/b]userlist_file[/b]参数所指定的文件中的用户列表。当列表中的用户登录[/b]FTP[/b]服务器时,该用户在提示输入密码之前就被禁止了。即该用户名输入后,[/b]vsftpd[/b]查到该用户名在列表中,[/b]vsftpd[/b]就直接禁止掉该用户,不会再进行询问密码等后续步聚[/b][/b]
userlist_deny=YES[/b][/b] 决定禁止还是只允许由[/b]userlist_file[/b]指定文件中的用户登录[/b]FTP[/b]服务器。此选项在[/b]userlist_enable [/b]选项启动后才生效。[/b]YES[/b],默认值,禁止文件中的用户登录,同时也不向这些用户发出输入密码的提示。[/b]NO[/b],只允许在文件中的用户登录[/b]FTP[/b]服务器[/b][/b]
tcp_wrappers=YES[/b][/b] 是否允许[/b]tcp_wrappers[/b]管理[/b][/b]
local_root=/home/ftp[/b][/b] 所有用户的根目录,,对匿名用户无效[/b][/b]
anon_max_rate[/b][/b] 匿名用户的最大传输速度,单位是[/b]Byts/s[/b][/b]
local_max_rate[/b][/b] 本地用户的最大传输速度,单位是[/b]Byts/s[/b][/b]
download_enable= YES[/b][/b] 是否允许下载[/b][/b]
[/align] vsftpd如何设置pasv模式:
pasv_enable=yes Default: YES) 设置是否允许pasv模式
pasv_promiscuous=no Default: NO) 是否屏蔽对pasv进行安全检查,(当有安全隧道时可禁用)
pasv_max_port=10240 (Default: 0 (use any port)) pasv使用的最大端口
pasv_min_port=1024 (Default: 0 (use any port)) pasv使用的最小端口
pasv_address Default: (none - the address is taken from the incoming connected socket)
) pasv模式中服务器传回的ip地址

8 vsftp日志xferlog格式分析(引用)

1、开始vsftp记录日志。修改/etc/vsftpd/vsftpd.conf 如下: xferlog_enable=YES
xferlog_std_format=YES
xferlog_file=/var/log/xferlog 2、/var/log/xferlog 实例: Sun Feb 23 21:14:36 2014 4 212.73.193.130 915950 /LilleOL_IconSport4/win_230214_51_19.jpg b _ i r sipafranch ftp 0 * c
Sun Feb 23 21:14:46 2014 5 212.73.193.130 1018969 /LilleOL_IconSport4/win_230214_51_18.jpg b _ i r sipafranch ftp 0 * c
Sun Feb 23 22:07:44 2014 1 212.73.193.130 189 /Lille_IconSP/message_46263.txt b _ i r sipafranch ftp 0 * c
Sun Feb 23 22:07:49 2014 4 212.73.193.130 891359 /Lille_IconSP/win_230214_84_80.jpg b _ i r sipafranch ftp 0 * c
Sun Feb 23 22:07:54 2014 4 212.73.193.130 874509 /Lille_IconSP/win_230214_52_15.jpg b _ i r sipafranch ftp 0 * c
Sun Feb 23 22:07:59 2014 4 212.73.193.130 862666 /Lille_IconSP/win_230214_52_12.jpg b _ i r sipafranch ftp 0 * c
Sun Feb 23 22:08:04 2014 4 212.73.193.130 726242 /Lille_IconSP/win_230214_52_13.jpg b _ i r sipafranch ftp 0 * c
Sun Feb 23 22:08:09 2014 4 212.73.193.130 833576 /Lille_IconSP/win_230214_84_77.jpg b _ i r sipafranch ftp 0 * c
Sun Feb 23 22:08:15 2014 5 212.73.193.130 1009117 /Lille_IconSP/win_230214_84_78.jpg b _ i r sipafranch ftp 0 * c
Sun Feb 23 22:08:20 2014 4 212.73.193.130 507537 /Lille_IconSP/win_230214_84_79.jpg b _ i r sipafranch ftp 0 * c
Sun Feb 23 22:08:26 2014 6 212.73.193.130 1023575 /Lille_IconSP/win_230214_52_11.jpg b _ i r sipafranch ftp 0 * c 3、每列含义: 3、每列含义: Sun Feb 23 22:08:26 2014 | 6 | 212.73.193.130 | 1023575 | /Lille_IconSP/win_230214_52_11.jpg |b| _| i| r| sipafranch| ftp| 0| *| c
记录 含义
Sun Feb 23 22:08:26 2014 FTP传输时间
6 传输文件所用时间。单位/秒
212.73.193.130 ftp客户端名称/IP
1023575 传输文件大小。单位/Byte
/Lille_IconSP/win_230214_52_11.jpg 传输文件名,包含路径
b 传输方式: a以ASCII方式传输; b以二进制(binary)方式传输;
_ 特殊处理标志位:"_"不做任何处理;"C"文件是压缩格式;"U"文件非压缩格式;"T"文件是tar格式;
i 传输方向:"i"上传;"o"下载;
r 用户访问模式:“a”匿名用户;"g"访客模式;"r"系统中用户;
sipafranch 登录用户名
ftp 服务名称,一般都是ftp
0 认证方式:"0"无;"1"RFC931认证;
* 认证用户id,"*"表示无法获取id
c 完成状态:"i"传输未完成;"c"传输已完成;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  center style color