设为首页 加入收藏

TOP

vsftpd安装配置虚拟用户(一)
2017-10-12 12:48:48 】 浏览:7051
Tags:vsftpd 安装 配置 虚拟 用户

原文发表于cu:2016-03-11

参考文档:

  1. FTP原理:http://vbird.dic.ksu.edu.tw/linux_server/0410vsftpd_1.php
  2. FTP配置:http://vbird.dic.ksu.edu.tw/linux_server/0410vsftpd_2.php
  3. 虚拟用户配置:http://yuanbin.blog.51cto.com/363003/129071

一.环境

OS

CentOS6.7 x86_64

网络

Sever:192.168.1.254

Client:192.168.1.100

二.安装与配置

1. 安装

使用yum安装即可:yum install vsftpd -y

2. 软件模块

/etc/vsftpd/vsftpd.conf
vsftpd的配置文件,相关参数设定主要在这个文件进行。

/etc/pam.d/vsftpd
vsftpd使用 PAM 模块时的相关配置文件,主要用来作为身份认证之用,还有一些用户身份的抵挡功能, 也是透过这个档案来达成的。

/etc/vsftpd/ftpusers/etc/pam.d/vsftpd文件有关,也就是 PAM 模块中所指定的那个无法登入的用户配置文件。这个档案的设定简单,只要将“不想让他登入 FTP 的账号”写入这个文件即可。

/etc/vsftpd/user_list
这个文件是否生效与vsftpd.conf内的两个参数有关,分别是“userlist_enable”与“userlist_deny”,会根据vsftpd.conf配置文件内的userlist_deny={YES/NO}不同而不同(设置为YES时,是阻止user_list中的账号登入;设置为NO时,是允许user_list中的账号登入)。
/etc/vsftpd/ftpusers是PAM模块的安全设定文件,而/etc/vsftpd/user_list是vsftpd自定义的安全设定文件。
这个文件与/etc/vsftpd/ftpusers几乎一样,在默认情况下,可以将不希望可登入vsftpd账号写入这里。

/etc/vsftpd/chroot_list
此文件默认是没有的,需要手工建立,主要作用是将某些账号chroot在其家目录。
文件是否生效与vsftpd.conf的“chroot_list_enable”与“chroot_list_file”两个参数有关。

/usr/sbin/vsftpd
vsftpd的执行文件。

/var/ftp/
vsftpd默认匿名账户登入根目录,与ftp账号的家目录有关。

3. 配置文件简介

以下列出主要的一些配置项供参考。

服务器环境较相关的设置

connect_from_port_20=YES (NO)
主动式FTP服务器port,ftp-data的端口。
#主动式ftp指server接到client的ftp请求后,由server的20端口主动连接client告知的数据接收port,建立数据传输通道;
#被动式ftp指server接到client的ftp请求后,随机选取大于1024的port告知client,由client主动发起ftp数据通道连接;
#在有ftp的server与client之间有防火墙或nat时,基本只能使用被动式ftp。

listen_port=21
vsftpd的命令通道port,如果要使用非正规的端口,在此修改;修改端口号指适合以stand alone方式来启动的vsftpd(对于super daemon 无效)。

dirmessage_enable=YES (NO)
当ftp用户进入某个目录时,会显示该目录需要注意的内容,显示的档案默认是 .message ,可以使用下面的设定项目来修改显示内容。

message_file=.message
当dirmessage_enable=YES时,可以设定这个项目来让vsftpd 寻找该文件来显示信息。

listen=YES (NO)
如果设置为YES,表示vsftpd是以stand alone的方式来启动;设置为NO时,vsftpd以super daemon方式启动。

pasv_enable=YES (NO)
支持数据流的被动式联机模式(passive mode),请设定为YES。

use_localtime=YES (NO)
是否使用本地时间?vsftpd默认使用GMT时间(格林威治),建议设置YES。

write_enable=YES (NO)
是否允许用户上传数据。

connect_timeout=60
单位是秒,在数据连接的主动式联机模式下,发出的连接信号在 60 秒内得不到client响应,则不等待并强制断线。

accept_timeout=60
当client以被动式PASV进行数据传输时,如果server端启用passive port并等待client超过60秒而无响应,那么就强制断线。这个设置与connect_timeout类似,不过一个是管理主动联机,一个管理被动联机。

data_connection_timeout=300
如果server与client的数据联机已经成功建立(不论主动还是被动联机),但是可能由于线路问题导致300秒内没有顺利的完成数据传送,那client的联机就会被vsftpd 强制断线。

idle_session_timeout=300
如果client在300 秒内都无命令动作,强制断线。

max_clients=0
如果vsftpd 以stand alone方式启动,那么这个设定值可以设置在同一时间,最多有多少 client可以同时连上vsftpd。

max_per_ip=0
与max_clients类似,同一个IP同一时间可允许多少联机。

pasv_min_port=0, pasv_max_port=0
与 passive mode 使用的port有关,如果你想要使用65400到65410这11个port来进行被动式联机模式的连接,可以这样设定pasv_max_port=65410以及 pasv_min_port=65400。 如果是 0 的话,表示随机取用而不限制。

ftpd_banner=一些文字说明
当ftp用户登入时,在 ftp client软件上会显示的说明文字。建议使用下面的banner_file设定值取代这个项目。

banner_file=/path/file
指定某个纯文本文件作为用户登入vsftpd服务器时所显示的欢迎字眼。同时,也可以放置一些让用户知道本服务器的目录结构。

与实体用户相关的设置

guest_enable=YES(NO)
设为YES时,任何实体账户,都会被假设成为guest (所以默认是NO)。guest在vsftpd 当中,默认取得ftp账户的相关权限,但可以通过 guest_username来修改。
#使用虚拟账户登录FTP时需要设置为YES。

guest_username=ftp
在 guest_enable=YES 时生效,指定guest的身份(虚拟账户统一获得此设置账号的权限)。

local_enable=YES(NO)
此设置值必须要为YES时,在/etc/passw
首页 上一页 1 2 3 下一页 尾页 1/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇文本三剑客---sed 基础 下一篇SHELL脚本--expr命令全解

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目