参考文章:
- http://blog.csdn.net/zwhfyy/article/details/1547454
- http://www.linuxidc.com/Linux/2015-06/118442.htm
vsftp 的优点:
除了安全高速稳定之外, vsftpd 还具有如下的功能:
支持基于 IP 的虚拟 FTP 服务器
支持虚拟用户
支持 PAM 或 xinetd/tcp_wrappers 的认证方式
支持两种运行方式: 独立和 Xinetd
支持每个虚拟用户具有独立的配置
支持带宽限制等
缺点就是, 端口不安全, 端口大家都知道是 21, 首要的第一步安装完之后就是改端口
vsftp 的在 Centos6.5 下的安装
查看服务器上是否安装了 vsftp
rpm qa |grep vsftp
安装 vsftp
yum install -y vsftpd
更改端口:
- pasv_enable=YES# 开启被动模式
- pasv_promiscuous=YES
- pam_service_name=vsftpd
- tcp_wrappers=YES
- listen_port=# 控制端口号
- ftp_data_port=# 接收数据端口号
- Pasv_min_port=50000# 被动模式下最大和最小的端口号
- Pasv_max_port=60000
这个文件里面的端口也要改:
vim /etc/services (44-45 行)
- # 将 21 端口, 改为你现在用的 ftp 端口号, 重启 vsftp 即可
- ftp 21/tcp
- ftp 21/udp fsp fspd
安装完 vsftp 之后就是更 vsftp 的配置文件
默认安装的位置为 /etc/vsftp/ 下
安装完后下面会有几个文件:
ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh
如果要对配置文件更改, 请一定记得备份
ftpusers 禁止使用 vsftpd 的用户列表文件
user_list 禁止或允许使用 vsftpd 的用户列表文件
vsftpd.conf 主配置文件
vsftpd_conf_migrate.sh vsftpd 操作的一些变量和设置
vsftp.conf 详细的介绍
- write_enable=YES # 允许登入者有写权限
- anonymous_enable=NO #禁止匿名用户访问
- local_enable=YES # 允许本地用户访问
- local_umask=022 #本地用户新增档案时的 umask 值
- file_open_mode=0755 #本地用户上传档案后的档案权限
- ftpd_banner=Welcome #定义欢迎话语的字符串
- xferlog_enable=YES # 启用上传 / 下载日志记录
- xferlog_file=/var/log/vsftpd.log # 日志文件所在的路径及名称
- xferlog_std_format=YES # 将日志文件写成 xferlog 的标准格式
- ascii_upload_enable=YES #启用 ASCII 模式上传数据
- ascii_download_enable=YES #启用 ASCII 模式下载数据
- chroot_list_enable=YES # 在 chroot_list 中列出的用户不允许切换到家目录的上级目录
- chroot_local_user=NO #本地所有帐户都只能在自家目录
- chroot_list_file=/etc/vsftpd/chroot_list #限制更多的系统用户, 把需要限制的用户加入 / etc/vsftpd/chroot_list 中即可
- userlist_enable=YES # 在 user_list 中列出的用户不能访问 FTP 服务器, 未列出的可以访问
- userlist_deny=YES
- userlist_file=/etc/vsftpd/user_list #
- tcp_wrappers=NO # 不使用 tcp wrapper 来控制主机访问
- setproctitle_enable=YES # 每个与 FTP 服务器的连接, 都以不同的进程表现出来
- listen=YES #FTP 服务器以 standalone 模式运行
- port_enable=YES #FTP 服务器启用 PORT(主动)模式
- pasv_enable=NO #禁用 FTP 服务器的 PASV(被动)模式
- listen_port=21 #FTP 服务器监听 21 端口(默认为 21)
- connect_from_port_20=YES #指定 FTP 服务器使用 20 端口进行数据传输
- ftp_data_port=20 #FTP 服务器数据传输端口为 20
- pam_service_name=vsftpd # 使用 PAM 模块控制, vsftpd 文件在 / etc/pam.d 目录下
- idle_session_timeout=600 #600 秒钟不对 FTP 服务器进行任何操作, 则断开该 FTP 连接
- data_connection_timeout=120 # 建立 FTP 数据连接的超时时间为 120 秒
- max_clients=0 # 不限制用户的连接 匿名用户传输率 30K 数量
- max_per_ip=3 #每个 IP 只能与 FTP 服务器同时建立 3 个连接
- local_max_rate=512000 # 本地用户使用的最大传输速度
- listen_address # 如果 vsftpd 处于独立模式, 则默认侦听地址 (所有本地接口) 可能会被该设置覆盖 提供数字 IP 地址
- Local_max_rate=50000(bite) #本地用户传输率 50K
- Anon_max_rate=30000(bite) # 匿名用户传输率 30K
- Pasv_min_port=50000 # 被动模式下端口范围
- Pasv_max_port=60000
下面记录的是 vsftp 的日志格式功能:
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" 传输已完成; |
来源: http://www.bubuko.com/infodetail-2509944.html