vsftp常用参数

常用参数 :
listen_address=192.168.0.236( 指定监听 IP)
ftpd_banner=this is a virtual ftp test (服务器信息欢迎信息)
anonymous_enable=yes ( 允许匿名登陆 )
dirmessage_enable=yes (切换目录时,显示目录下 .message 的内容)
local_umask=022 (ftp 上本地的文件权限,默认是 077)
connect_form_port_20=yes (启用 ftp 数据端口的数据连接)
xferlog_enable=yes (激活上传和下传的日志)
xferlog_std_format=yes ( 使用标准的日志格式 )
pam_service_name=vsftpd (验证方式)
listen=yes (独立的 vsftpd 服务器)
anon_upload_enable=yes ( 开放上传权限 )
anon_mkdir_write_enable=yes (可创建目录的同时可以在此目录中上传文件)
write_enable=yes ( 开放本地用户写的权限 )
anon_other_write_enable=yes ( 匿名帐号可以有删除的权限 )
anon_world_readable_only=no ( 放开匿名用户浏览权限 )
ascii_upload_enable=yes ( 启用上传的 ascii 传输方式 )
ascii_download_enable=yes ( 启用下载的 ascii 传输方式 )
banner_file=/var/vsftpd_banner_file ( 用户连接后欢迎信息使用的是此文件中的相关信息 )
idle_session_timeout=600( ) (用户会话空闲后 10 分钟)
data_connection_timeout=120 (秒) (将数据连接空闲 2 分钟断)
accept_timeout=60 (秒) (将客户端空闲 1 分钟后断)
connect_timeout=60 (秒) (中断 1 分钟后又重新连接)
local_max_rate=50000 bite (本地用户传输率 50k
anon_max_rate=30000 bite (匿名用户传输率 30k
pasv_min_port=50000 (将客户端的数据连接端口改在
pasv_max_port=60000 50000-60000 之间)
max_clients=200 ftp 的最大连接数)
max_per_ip=4 (每 ip 的最大连接数)
listen_port=5555 (从 5555 端口进行数据连接)
local_enble=yes (本地帐户能够登陆)
write_enable=no (本地帐户登陆后无权删除和修改文件)
listen_address=N.N.N.N( 监听 ip)
 
 
vsftp 的虚拟用户配置不同主目录
针对不同的使用者使用不同主目录, test1 用户使用 /home/test1 test2 用户使用 /home/test2
Step1.
修改 /etc/vsftpd/vsftpd.conf
新增底下一行
user_config_dir=/etc/vsftpd/userconf
user_sub_token=$USER
Step2. 新增一个目录: /etc/vsftpd/userconf
mkdir /etc/vsftpd/userconf
Step3. /etc/vsftpd/userconf 之下新增一个名为 test1 的档案
内容增加一行:
local_root=/home/test1
Step4.
/etc/vsftpd/userconf 之下新增一个名为 test2 的档案
内容增加一行:
local_root=/home/test2
禁止下载
方法一 可以对用户操作 ftp 的命令进行控制。
附上相关说明:
vsftpd.conf 文件:
connect_from_port_20=YES
anonymous_enable=NO
write_enable=YES
local_umask=002
listen_port=21
listen=YES
pasv_enable=YES
use_localtime=YES
connect_timeout=60
accept_timeout=60
data_connection_timeout=600
local_enable=YES
cmds_allowed=ABOR,CMD,LIST,MDTM,MKD,NLST,PASS,PASV,PORT,PWD,QUIT,SIZE,STOR,TYPE,USER
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/vsftpd.chroot.list
pam_service_name=vsftpd
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
 
注意 cmds_allowe 这段
以下是这段相关命令的说明:
(要注意的是,这行里面不能换行,不能有空格)

# ABOR - abort a file transfer
取消文件传输
# CWD - change working directory
更改目录
# DELE - delete a remote file
删除文件
# LIST - list remote files
列目录
# MDTM - return the modification time of a file
返回文件的更新时间
# MKD - make a remote directory
新建文件夹
# NLST - name list of remote directory
# PASS - send password
# PASV - enter passive mode
# PORT - open a data port
打开一个传输端口
# PWD - print working directory
显示当前工作目录
# QUIT - terminate the connection
退出
# RETR - retrieve a remote file
下载文件
# RMD - remove a remote directory
# RNFR - rename from
# RNTO - rename to
# SITE - site-specific commands
# SIZE - return the size of a file
返回文件大小
# STOR - store a file on the remote host
上传文件
# TYPE - set transfer type
# USER - send username
根据自己需要选择吧, vsftpd 的确很强大, ftp 我只用 vsftpd ,哈哈!
方法二、
vsftpd.conf 中加入
user_config_dir=/etc/vsftpd_user_conf
然后建立 /etc/vsftpd_user_conf 目录,在这个目录里创建一个名为 upload (与 ftp 用户名相同)的文件
vi /etc/vsftpd_user_conf/upload
加入
download_enable=NO
这样, upload 用户可以上传,下载就会报 permission denied

虚拟用户也是一样的。
本地用户和虚拟用户共存
前面虚拟用户的登陆,利用的认证方式由 vsftpd.mysql 指定。对于本地用户的认证,由 /etc/pam.d/vsftpd 指定。新建 /etc/pam.d/vsftpd.all ,内容如下:
 #%PAM-1.0
auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
auth     required       pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed
auth     required       pam_unix2.so
auth     required       pam_shells.so
account  required       pam_unix2.so
password required       pam_unix2.so
session  required       pam_unix2.so
[l1] 
文件的意思是:首先选择虚拟用户认证,如果认证成功,则停止( sufficient 参数表示认证成功即退出,可参考 pam 的配置),如果认证不成功,则利用本地用户的认证方式进行认证
 [l1] 这部分是原来本地用户的认证文件类容

本文出自 “jiejun” 博客,谢绝转载!

你可能感兴趣的:(liunx,职场,休闲)