VSFTP配置文件详解
Linux1 FTP服务器 主配置文件vsftpd.conf
Linux1 FTP服务器主配置文件vsftpd.confvsftpd.conf可以用于控制vsftpd,以实现各种各样的功能。
vsftpd缺省到/etc/vsftpd.conf处查找此文件。
当然,管理员也可以通过命令行参数进行指定。
对于想使用高级inetd管理的用户,例如,xinetd,则这个功能非常有用。
可以使用不同的配置文件来启动基于主机、实体用户、匿名用户登录及系统安全方面的每个服务。
vsftpd.conf的格式非常简单,每行要么是注释,要么是指令。
注释行以#开始,将被忽略。
指令行格式如下:选项=值应当注意的一点是,如果在“选项”、“=”、“值”三者之间存在空格,将会报错。
且针对于每项设定都有默认值(YES/NO),这可以通过配置文件来修改。
1.与计算机相关的设置值●connect_from_port_20用于控制在服务器端,是否使用端口20(ftp-data)进行数据连接。
基于安全的考虑,有些客户端需要这样做。
相反,禁用该选项可以使vsftpd以较少特权运行。
默认:NO。
●listen_portvsFTP使用的命令通道端口号,如果想要使用费默认的端口号,可在这个设置项中修改。
不过,需要知道这个设置值仅适合以stand alone(独立模式)的方式启动。
默认:21。
●dirmessage_enable如果启用,当用户首次进入一个新目录时,FTP服务器将会显示欢迎信息。
默认情况下,是通过扫描目录下的message文件获取的,当然也可以通过message_file 选项设定。
默认:NO。
●message_file当dirmessage_enable=YES时,可设置这个项目来让vsFTPd寻找该文件,从而显示信息。
默认:YES。
●listen若设置为YES,表示vsFTPd是以stand alone(独立模式)的方式启动。
默认:YES。
●pasv_enable如果数据传输时,不允许使用PASV模式,则将此选项设为NO。
vsftp配置安装以及权限设置
vsftpd FTP服务器架设在windows上完了完server-u,很简单,一个小时就能完成ftp服务器的假设,在liunx下要架设一个ftp就没那么容易了,在网上找了找资料在windows上架设 FTP 首选 Server-u,看看资料,点点下一步,基本上10分钟就能架设一个ftp服务器了,在linux下面架设ftp服务器,确实费了我一番功夫,现在想起来,需要总结的就是看资料的时候一定要全面,并且做好一个资料要看完。
最终我选择了 vsFTPd是一款在Linux发行版中最受推崇的FTP服务器程序。
特点是小巧轻快,安全易用。
vsftpd (号称最安全的ftp 服务器)下面讲下linux 下使用vsftpd 的步骤:1.首先下载需要的软件,双机直接安装:a.vsftpd-2.0.1-5.EL4.5.i386.rpm (在liunx4 的第一张光盘)b.db4-utils-4.2.52-7.1.i386.rpm (在liunx4 的第三张光盘) ,用来加密虚拟用户密码等文件的工具2.启动vsftpd服务在控制台执行 service vsftpd start ,如果没有什么问题,你可以看到服务启动的进程号,如果出现了问题,你可以试着将 gssftp 这个服务停掉,执行service vsftpd stop 因为这个服务或许会造成冲突查看vsftpd服务器启动情况 service vsftpd status3.用客户端工具连接ftp服务器在window操作系统下,打开命令提示符,输入 ftp 133.64.81.164 回车然后使用默认的用户名(ftp)和密码(ftp) ,就可以登录ftp服务器了,或者你也可以使用系统用户的用户名和口令登录ftp服务器。
经过以上3个步骤我们就完成了ftp服务器的假设,但是这里有许多问题a.安全性,匿名用户也可以登录,进行操作b.用户登录以后并没有锁定目录c.用户的权限配置没有体现还有其他的问题,基于这些问题,需要我们了解下 vsftpd的工作原理,上面的操作都是基于一下的3个配置文件的vsftp相关配置文件说明/etc/vsftpd/vsftpd.conf/etc/vsftpd.ftpusers/etc/er_list其中,/etc/vsftpd/vsftpd.conf 是主配置文件。
Vsftpd配置(Centos7)
Vsftpd配置(Centos7)6.1、Vsftpd介绍:⽤于上传图⽚和使⽤ FTP 协议访问图⽚服务器。
解决分布式环境的图⽚访问问题,使⽤vsftpd对图⽚做统⼀管理。
vsftpd 是“very secure FTP daemon”的缩写,安全性是它的⼀个最⼤的特点。
vsftpd 是⼀个在 UNIX 类操作系统上运⾏的服务的名字,它可以运⾏在诸如 Linux、BSD、Solaris、 HP-UNIX 等系统上⾯,是⼀个完全免费的、开放源代码的 ftp 服务器软件,⽀持很多其他的FTP 服务器所不⽀持的特征。
⽐如:⾮常⾼的安全性需求、带宽限制、良好的可伸缩性、可创建虚拟⽤户、⽀持IPv6、速率⾼等。
vsftpd是⼀款在Linux发⾏版中最受推崇的FTP服务器程序。
特点是⼩巧轻快,安全易⽤。
在开源操作系统中常⽤的FTPD套件主要还有ProFTPD、PureFTPd和wuftpd等。
1、特点:(1)它是⼀个安全、⾼速、稳定的FTP服务器;(2)它可以做基于多个IP的虚拟FTP主机服务器;(3)匿名服务设置⼗分⽅便;(4)匿名FTP的根⽬录不需要任何特殊的⽬录结构,或系统程序或其它的系统⽂件;(5)不执⾏任何外部程序,从⽽减少了安全隐患;(6)⽀持虚拟⽤户,并且每个虚拟⽤户可以具有独⽴的属性配置;(7)可以设置从inetd中启动,或者独⽴的FTP服务器两种运⾏⽅式;(8)⽀持两种认证⽅式(PAP或xinetd/ tcp_wrappers);(9)⽀持带宽限制;(10)不⽀持⽂件的在线编辑,需要先将⽂件下载,编辑完成后再上传。
VSFTP市场应⽤⼗分⼴范,很多国际性的⼤公司和⾃由开源组织在使⽤.2、vsftpd的访问模式:(1)ftp基于的传输协议:FTP是仅基于tcp的服务,不⽀持udp。
FTP使⽤2个端⼝,⼀个数据端⼝和⼀个命令端⼝(也可叫做控制端⼝)。
通常来说这两个端⼝是21(命令端⼝)和20(数据端⼝)。
vsftpd.conf-vsftpd的配置文件
vsftpd.conf - vs ftpd的配置文件描述v sftpd.conf可以用于控制 vs ftpd,以实现各种各样的功能. vs ftpd缺省到/etc/v sftpd/vsft pd.co nf 处查找此文件.当然,您也可以通过命令行参数进行指定. 这个命令行参数就是指 vs ftpd的配置文件. 对于想使用高级inetd管理的用户, 例如, xin etd,则这个功能非常有用.可以使用不同的配置文件来启动基于虚拟主机的每个服务.格式vsf tpd.c onf 的格式非常简单. 每行要么是注释, 要么是指令. 注释行以#开始,将被忽略.指令行格式如下:选项=值应当注意的一点是如果在选项, =和值之间存在空格, 将会报错.(译者注: 即三者之间不允许存在空格)每项设定都有默认值, 这可以通过配置文件来修改.布尔选项下边是布尔选项的列表. 一个布尔选项的值可以被设为 YES或 NOallo w_ano n_ssl只有在ssl_e nable被激活时才有用.如果设为YES,匿名用户将被允许使用安全的S SL 联接.默认: NOanon_mkdir_writ e_ena ble如果设为Y ES, 匿名用户将允许在某些情况下创建目录. 这需要激活w rite_enabl e 选项,并且匿名 ftp用户需要对父目录有写权限.默认: NOano n_oth er_wr ite_e nable如果设为 YES,匿名用户将拥有除上载, 和创建目录外更多的权限, 比如删除和重命名. 通常不建议这么做, 但完整的配置文件是包括这一选项的.默认: NOanon_uploa d_ena ble如果设为Y ES, 匿名用户在某些情况下允许上载文件. 这需要将 wri te_en able选项激活,并且匿名用户应当对对应目录有写权限.默认: N Oan on_wo rld_r eadab le_on ly启用时, 将只允许匿名用户下载具有全球读权限的文件.这将意味着 ftp用户可以拥有自己的文件, 特别是前边提到的上载的文件.默认: YESano nymou s_ena ble用于控制是否允许匿名用户登录.如果激活, ftp和 ano nymou s 都将被视为匿名用户登录.默认: Y ESa scii_downl oad_e nable如果被激活, 下载时将使用ASCII模式进行数据传输.默认:NOa scii_uploa d_ena ble如果被激活,上载时将使用 AS CII 模式进行数据传输.默认: NOasy nc_ab or_en able如果被激活, 一个特别的 FT P 命令"asyn c ABO R" 将被激活. 只有某些F TP 客户端需要使用这一特性.另外,这个特性并不是很好控制, 因此默认没有启用. 不幸的是, 如果没有启用这个特性,某些F TP 客户端在取消一个传输时就会挂起,因此, 您可能希望启用它.默认: NObac kgrou nd如果被激活,并且 vs ftpd以 "li sten"模式启动, vsf tpd 将会back groun d 监听进程. 即contr ol wi ll im media telybe re turne d tothe s hellwhich laun chedvsftp d.默认: NOchec k_she ll注意! 这个选项只对构建时加入n on-PA M 参数的 vsft pd 有效. 如果令其失效,vsftp d 将不会检查有效用户的用于本地登录的/etc/shell s.默认: YESchm od_en able如果被激活, 将允许使用 SI TE CH MOD 命令. 注意! 这只对本地用户有效. 匿名用户从不允许使用S ITE C HMOD.默认:YESchown_uplo ads如果被激活,所有匿名上载的文件的宿主将会调整为c hown_usern ame 中指定的用户. 这样就便于管理,特别是从安全的角度考虑.默认: NOchr oot_l ist_e nable如果被激活, 您需要提供一个需要将其限制于其家目录中的本地用户列表.如果将chroo t_loc al_us er 设为 YES则意义稍有不同. 在此情况下,此列表变成不需将用户限制于其家目录的用户的列表.默认情况下,这个列表文件是/etc/vsftp d.chr oot_l ist,但可以通过 chro ot_li st_fi le 选项来设定.默认: N Och root_local_user如果设为 YES,本地用户, 在登录后将(默认)被限制在其家目录中. 警告:此选项有安全隐患,特别是在用户拥有上载权限,或可以sh ell访问的时候.如果您不清楚后果,请不要启用它. 注意, 这些安全隐患并不是 vsf tpd 所特有的.所有的提供将本地用户进行目录限制的 FT P 守护进程有存在这种隐患.默认: N Oco nnect_from_port_20用于控制在服务器端,是否使用端口20(f tp-da ta)进行数据联接.基于安全的考虑,有些客户端需要这样做. 相反,禁用这个选项, 可以使 vs ftpd以较少特权运行.默认: NO(但是在示例设置中启用了这个选项)d eny_e mail_enabl e如果激活, 您应当提供一个禁止匿名用户用做密码的 e-m ail 地址列表.默认情况下, 这个列表文件为/etc/vsftp d.ban ned_e mails, 当然,您可以通过 ban ned_e mail_file选项指定.默认:NOd irlis t_ena ble如果设为N O, 所有的目录列取命令都将被禁止.默认: YE Sdi rmess age_e nable如果启用, 当用户首次进入一个新目录时, FTP服务器将会显示欢迎信息. 默认情况下,是扫描目录下的.messa ge 文件获取的,当然, 您也可以通过 mess age_f ile 选项设定.默认: N O(但是在示例设置中启用了这个选项)downl oad_e nable如果设为 NO,所有的下载请求都将被拒绝.默认: YE Sdu al_lo g_ena ble如果启用,将生成两个相似的日志文件, 默认在 /v ar/lo g/xfe rlog和 /va r/log/vsft pd.lo g 目录下. 前者是 wu-f tpd 类型的传输日志, 可以用于标准工具分析.后者是vsftp d 自己类型的日志.默认:NOf orce_dot_f iles如果激活,以 .开始的文件和目录在目录列取的时候将会被显示, 即使客户端没有使用 "a" 标识.这不包括 "."和 ".." 目录默认: N Ofo rce_l ocal_data_ssl只有在 ss l_ena ble 被激活时才能使用. 如果被激活,则所有的非匿名用户登录时都被强制使用安全S SL 联接来传送接收数据.默认: YE Sfo rce_l ocal_login s_ssl只有在ssl_e nable被激活时才能使用.如果被激活, 则所有的非匿名用户登录时都被强制使用安全 SSL联接来传送密码.默认: YE Sgu est_e nable如果启用, 所有非匿名用户都将以 "g uest"身份登录. gue st 通过 gues t_use rname设定,来映射到一个指定用户.默认: NOhide_ids如果启用,所有目录中的用户和组信息列取时都将显示为 "ftp".默认: NOlist en如果启用, v sftpd将以独立模式运行.这就意味着 vsf tpd 不能由类i netd来启动.vsftp d 应当直接执行.由 vsf tpd 自身监听和处理联接请求.默认: NOliste n_ipv6如l isten参数,所不同的是, vsf tpd 将对 IPv6 接口进行监听,而不是I Pv4 接口. 此参数和l isten参数相互独立.默认: NOloc al_en able用于控制是否允许本地登录. 如果启用,/etc/passw d 中的普通帐号即可用于登录.默认:NO如果启用, 假若选项 xfe rlog_std_f ormat没有启用, 所有的 FTP请求和应答都会被记录. 此选项对将对调试很有用.默认: N Ols_recu rse_e nable如果启用, 此设置将允许用户使用 "l s -R". 这有点安全威胁,因为在大型站点的根目录下进行 ls -R 将会消耗很多资源.默认: NOno_an on_pa sswor d如果启用, 匿名用户登录将不再需要密码 - 可以直接登录.默认: NOno_lo g_loc k如果启用, 在写日志文件时, 将会阻止 vsf tpd 使用文件锁定. 这个选项通常不会启用. 它的存在是为了处理操作系统的一个bug,如 Sol aris/ Ver itas文件系统组合某些情况下试图锁定日志文件的现象.默认: NOone_proc ess_m odel如果你使用 Linu x 2.4内核,您就可以使用一个不同的安全模式, 它只允许每个联接使用一个进程. 这有一点小小的安全问题,但是提高了性能.如果您不清楚后果,或者您的站点要承受大量的并发用户联接时,请不要启用此选项.默认:NOp asswd_chro ot_en able如果启用,同 ch root_local_user一起使用, 就会基于每个用户创建限制目录, 每个用户限制的目录源于/etc/passw d 中的家目录. 当家目录路径中包含/./ 时, enot es th atth e jai l isat th at pa rticu lar l ocati on in thepath.pasv_enabl e如果数据传输时,您不允许使用 PAS V 模式,则将此选项设为N O默认: YESpasv_prom iscuo us如果您要禁用PASV安全检查,将此选项设置为Y ES. 该检查用于确保数据传输联接与控制联接源于同一 IP地址. 如果不清楚后果, 请不要启用此选项! 此选项只有在某些使用安全隧道的方案中才能正常使用, 或者需要F XP 的支持.默认: NOport_enab le如果您不允许使用端口模式获取数据联接, 将此选项设置为 NO.默认: Y ES如果您想禁用端口安全检查,将此选项设置为 YE S. 此检查用于确认出站的数据只流向客户端. 搞清楚后果前,不要启用此选项!默认: NOrun_as_l aunch ing_u ser如果您希望可以由用户来启动 vs ftpd,将此选项设置为Y ES. 当不能使用r oot登录时, 这通常很有用.严重警告: 搞清楚后果前,不要启用此选项, 随意的启用此选项将会导致非常严重的安全问题.特别是vsftp d 没有/不能使用目录限制技术来限制文件访问时(甚至vsft pd是由r oot启动的). 一个愚蠢的替代方法是将选项 de ny_fi le 设为{/*,*..*}, 但是其可靠性并不能和限制目录相比,甚至不在一个等级上.如果启用此选项,应当限制其它选项的使用. 例如, 非匿名登录, 上载文件宿主转换, 使用源自端口20的联接和低于1024 的端口不会工作. 其它一些选项也可能受到影响.默认值: NOsec ure_e mail_list_enabl e如果您要为匿名用户指定一个做为密码的邮件地址列表, 将此选项设置为 YES.在不需要创建虚拟用户的情况下, 构建一个低安全性访问控制很有用. 如果启用,匿名用户只有使用在email_pass word_file中指定的邮件地址做为密码, 才能登录.文件格式是每行一个密码, 没有空格. 默认文件名是 /etc/vsft pd.em ail_p asswo rds.默认: N Ose ssion_supp ort此选项用于控制 vsf tpd 是否为登录保持会话.如果保持会话, vs ftpd将会尝试和更新ut mp 和wtmp.如果使用 PAM认证, 同时还会打开 pam_sessi on, 直至登出.如果不需要保持登录会话, 或许您希望禁用此选项,以使得v sftpd占用更少的进程和/或更少的特权. 注意 - ut mp 和wtmp只有在启用 PAM的情况下才支持.默认: NOset proct itle_enabl e如果启用, vs ftpd将会尝试在系统进程列表中显示会话状态信息. 也就是说, 进程报告将会显示每个v sftpd会话在做什么 (闲置, 下载等等).出于安全的考虑, 您可能需要将其关闭.默认: N Oss l_ena ble如果启用此选项, 并在编译时加入 Open SSL 支持, vs ftpd将支持通过 SSL进行安全联接. 此选项用于控制联接(包括登录) 以及数据联接. 您可能同时需要支持SSL的客户端.注意!!小心启用此选项. 仅在需要时才启用. v sftpd对使用OpenS SL 库的安全性不做任何担保.启用此选项, 就意味着您相信所安装的OpenS SL 库的安全性.默认: N Oss l_ssl v2只有激活 ss l_ena ble 选项时才有效. 如果启用, 此选项将允许使用 SSL v2 协议进行联接. TLS v1 仍为首选联接.默认: NOssl_s slv3只有激活ssl_e nable选项时才有效. 如果启用,此选项将允许使用S SL v3协议进行联接. T LS v1仍为首选联接.默认: NOssl_tlsv1只有激活 ssl_enab le 选项时才有效.如果启用, 此选项将允许使用 TLSv1 协议进行联接. TLSv1 仍为首选联接.默认:YESsyslo g_ena ble如果启用,任何本来应该输出到/var/log/v sftpd/vsft pd.lo g 的日志, 将会输出到系统日志中. 记录由 FT PD 完成.默认: NOtcp_w rappe rs如果启用, 并且在编译vsftp d 时加入了对 TC P_Wra ppers的支持,则连入请求转由T CP_Wr apper s 完成访问控制.另外, 这是基于每个IP的配置机制. 如果tcp_wrap pers设置了V SFTPD_LOAD_CONF环境变量, 则v sftpd会话将会试图加载在此变量中指定的 vs ftpd配置文件.默认:NOt ext_u serdb_name s默认情况下, 目录列取时在用户和组字段显示的是数字ID.如果启用此选项,则可以得到文本名称.基于性能的考虑, 默认情况下关闭此选项.默认:NOt ilde_user_enabl e如果启用, vs ftpd将试图解析类似 ~c hris/pics的路径名,即跟着用户名的波型号. 注意, vsf tpd 有时会一直解析 ~ 和 ~/ (这里, ~被解析称为初始登录路径).~user则只有在可以找到包含闲置目录的 /et c/pas swd 文件时才被解析.默认值: NOuse_loca ltime如果启用, vsf tpd 在列取目录时, 将显示您本地时区的时间.默认显示为 GMT.由MD TM FT P 命令返回的时间同样也受此选项的影响.默认:NOu se_se ndfil e一个内部设定,用于测试在您的平台上使用 sen dfile() 系统的性能.默认: Y ESu serli st_de ny此选项只有在激活 use rlist_enab le 时才会有效.如果您将此选项设置为 NO,则只有在userl ist_f ile 文件中明确指定的用户才能登录系统. 当登录被拒绝时,拒绝发生在被寻问命令之前.默认: Y ESu serli st_en able如果启用, vsft pd 将会从 use rlist_file选项指定的文件中加载一个用户名列表.如果用户试图使用列表中指定的名称登录,那么他们将在寻问密码前被拒绝.这有助于阻止明文传送密码.详见use rlist_deny.默认: NOvirtu al_us e_loc al_pr ivs如果启用,虚拟用户将拥有同本地用户一样的权限. 默认情况下,虚拟用户同匿名用户权限相同,这倾向于更多限制(特别是在写权限上).默认: NOwrite_enab le用于控制是否允许 FTP命令更改文件系统.这些命令是: ST OR, D ELE,RNFR,RNTO, MKD, RMD, APP E 和S ITE.默认: N Oxf erlog_enab le如果启用, 将会维护一个日志文件,用于详细记录上载和下载. 默认情况下,这个日志文件是/var/l og/vs ftpd.log.但是也可以通过配置文件中的v sftpd_log_file选项来指定. 默认: NO(但是在示例设置中启用了这个选项)xfe rlog_std_f ormat如果启用, 传输日志文件将以标准 xf erlog的格式书写, 如同 wu-f tpd 一样. 这可以用于重新使用传输统计生成器.然而,默认格式更注重可读性. 此格式的日志文件默认为/var/l og/xf erlog, 但是您也可以通过 xfer log_f ile 选项来设定.默认:NO数字选项下边是数字选项的列表. 数字选项必须设置一个非负的整数.为了便于u mask选项,同样也支持八进制数字.八进制数字首位应为0 .accep t_tim eout超时, 以秒计, 用于远程客户端以 PA SV 模式建立数据联接.默认: 60anon_max_rate允许的最大数据传输速率, 单位 b/s,用于匿名客户端.默认: 0 (无限制)an on_um ask用于设定匿名用户建立文件时的u mask值. 注意! 如果您要指定一个八进制的数字, 首位应当是"0", 否则将视作10 进制数字.默认: 077co nnect_time out超时, 单位秒, 用于响应P ORT 方式的数据联接.默认: 60data_conn ectio n_tim eout超时, 单位秒,用于设定空闲的数据连接所允许的最大时长.如果触发超时, 则远程客户端将被断开.默认:300file_open_mode用于设定创建上载文件的权限.mask的优先级高于这个设定. 如果想允许上载的文件可以执行, 将此值修改为0777默认: 0666ftp_d ata_p ortF TP PO RT 方式的数据联接端口.(需要激活c onnec t_fro m_por t_20选项)默认: 20idl e_ses sion_timeo ut超时, 单位秒, 远程客户端的最大 FTP命令间隔. 如果超时被触发,远程客户端将被断开.默认: 300list en_po rt如果 vsft pd 以独立模式启动, 此端口将会监听FTP 连入请求.默认: 21lo cal_m ax_ra te允许的最大数据传输速率,单位b/s, 用于限制本地授权用户.默认:0 (无限制)l ocal_umask用于设定本地用户上载文件的umask值. 注意! 如果您要指定一个八进制的数字, 首位应当是"0",否则将视作 10 进制数字.默认: 077m ax_cl ients如果v sftpd以独立模式启动,此选项用于设定最大客户端联接数. 超过部分将获得错误信息.默认: 0 (无限制)ma x_per_ip如果 vsf tpd 以独立模式启动, 此选项用于设定源于同一网络地址的最大联接数.超过部分将获得错误信息.默认: 0(无限制)pas v_max_port为 PA SV 方式数据联接指派的最大端口. 基于安全性考虑, 可以把端口范围指定在一样较小的范围内.默认: 0 (可以使用任意端口)pasv_min_p ort为 PASV方式数据联接指派的最小端口.基于安全性考虑,可以把端口范围指定在一样较小的范围内.默认: 0 (可以使用任意端口)tr ans_c hunk_size您可能不想修改这个设置, 如果有带宽限制, 可以尝试将此值设置为 8192.默认: 0(让vsf tpd 自己选择一个更合理的设置)字符选项下边是字符选项列表ano n_roo t此选项声明, 匿名用户在登录后将被转向一个指定目录(译者注: 默认根目录).失败时将被忽略.默认: (无)b anned_emai l_fil e此选项用于指定包含不允许用作匿名用户登录密码的电子邮件地址列表的文件. 使用此选项需要启用 de ny_em ail_e nable选项.默认: /etc/v sftpd.bann ed_em ailsbann er_fi le此选项用于指定包含用户登录时显示欢迎标识的文件. 设置此选项,将取代f tpd_b anner选项指定的欢迎标识.默认: (无)chow n_use rname用于指定匿名用户上载文件的宿主. 此选项只有在chown_uplo ads 选项设定后才会有效.默认;ro otc hroot_list_file此选项用于指定包含被限制在家目录中用户列表的文件. 使用此选项, 需启用ch root_list_enabl e . 如果启用了chroo t_loc al_us er 选项, 此文件所包含的则为不会被限制在家目录中的用户列表.默认: /et c/vsf tpd.c hroot_listcmd s_all owed此选项指定允许使用的 FTP命令(登录以后. 以及登录前的USER, PASS和 QU IT),以逗号分割. 其它命令将被拒绝使用.这对于锁定一个 FT P 服务器非常有效.例如:mds_a llowe d=PAS V,RET R,QUI T默认: (无)deny_file此选项用于设定拒绝访问的文件类型(和目录名等).此设定并不是对文件进行隐藏,但是您不能对其操作(下载,更换目录,以及其它操作).此选项非常简单, 不能用于严格的访问控制--文件系统的优先级要高一些.然而,此选项对于某些虚拟用户的设定非常有效.特别是在一个文件可以通过各种名称访问时(可能时通过符号联接或者硬联接), 应当注意拒绝所有的访问方法. 与h ide_f ile 中给出名称匹配的文件会被拒绝访问. 注意vsftp d 只支持正则表达式匹配的部分功能. 正因为如此,您需要尽可能的对此选项的设置进行测试.同时基于安全性考虑, 建议您使用文件系统自身的访问控制.例如: d eny_f ile={*.mp3,*.mo v,.pr ivate}默认: (无)dsa_cert_file此选项用于指定用于SSL 加密联接的DSA 证书的位置.默认:(无 -使用 RS A 证书)ema il_pa sswor d_fil e此选项用于提供启用 sec ure_e mail_list_enabl e 选项,所需要的可替代文件.默认: /etc/vsft pd.em ail_p asswo rdsftp_u serna me用于处理匿名FTP 的用户名.此用的家目录即为匿名发 FTP的根目录.默认: ftpftpd_bann er用于替换首次连入 vsf tpd 时显示的欢迎标识字符串.默认: (无-显示默认 vsft pd 标识)gu est_u serna me参阅布尔选项guest_enab le .此选项用于将 gue st 用户映射到一个真实用户上.默认: ftphide_file此选项用于设定列取目录时,要隐藏的文件类型(以及目录等). 尽管隐藏了, 知道其宿主的客户端仍然能对文件/目录等有完全访问权限. 与名称 hide_file中包含的字符串匹配的项都将隐藏. 注意 vsft pd 只支持正则表达式匹配的部分功能.例如: h ide_f ile={*.mp3,.hid den,h ide*,h?}默认: (无)li sten_addre ss如果 vsft pd 以独立模式运行, 此设定用于修改默认(所有本地接口)监听地址.格式为数字 IP 地址.默认: (无)lis ten_a ddres s6如liste n_add ress,不过应该指定为IP v6 监听器指定默认监听地址.格式为标准 IPv6 地址格式.默认: (无)loc al_ro ot本选项用于指定本地用户(即, 非匿名用户)登录后将会转向的目录.失败时将被忽略.默认: (无)m essag e_fil e此选项用于指定进入新目录时要查询的文件名. 这个文件的内容为显示给远程用户的欢迎信息.使用此选项, 需要启用 di rmess age_e nable选项.默认: .messa gen opriv_user用于指定一个用户,当 vs ftpd要切换到无权限状态时, 使用此用户. 注意这最好是一个专用用户, 而不是用户n obody. 在大多数机器上,用户n obody被用于大量重要的事情.默认: nob odypam_s ervic e_nam e用于指定 PAM服务的名称.默认: ftppas v_add ress此选项为vsftp d 指定一个 IP地址, 用作对 PA SV 命令的响应.IP 地址应该为数字模式.默认: (无 - 即地址从连入的联接套接字中获取)rsa_cert_file此选项用于指定 SS L 加密联接所用R SA 证书的位置.默认: /usr/s hare/ssl/c erts/vsftp d.pemsec ure_c hroot_dir此选项用于指定一个空目录. 并且 ftp用户不应对此目录有写权限.当 vsf tpd 不需要访问文件系统是,此此目录做为一个限制目录,将用户限制在此目录中.默认: /usr/shar e/emp tys sl_ci phers此选项用于选择v sftpd允许使用哪些 SS L 加密算法来用于SSL 加密联接.更多信息参阅 cip hers的联机手册. 注意这样可以有效的防止对某些发现漏洞的算法进行恶意的远程攻击.默认: DE S-CBC3-SHAuse r_con fig_d ir此选项用于定义用户个人配置文件所在的目录.使用非常简单, 一个例子即可说明. 如果您将 us er_co nfig_dir 设置为 /e tc/vs ftpd_user_conf并以用户"chri s"登录,那么v sftpd将对此用户使用文件 /etc/vsft pd_us er_co nf/ch ris 中的设定.此文件的格式在联机手册中有详细说明. 请注意, 不是每个设定都能影响用户的. 例如, 有些设定只在用户会话开始时起作用.这包括liste n_add ress, bann er_fi le, m ax_pe r_ip,max_clien ts, x ferlo g_fil e, 等等.默认: (无)user_sub_token此选项需要和虚拟用户联合使用. 其将依据一个模板为每个虚拟用户创建家目录. 例如, 如果真实用户的家目录由选项 gue st_us ernam e 指定为 /hom e/vir tual/$USER, 并且将 user_sub_token设定为$USER, 当虚拟用户 fr ed 登入后, 将会进入(限制)目录/home/virtu al/fr ed. 如果 loc al_ro ot 中包含了 us er_su b_tok en 此选项也会起作用.默认: (无)use rlist_file此选项用于指定启用 user list_enabl e 选项后需要加载文件的名称.默认:/etc/vsftp e r_lis tvs ftpd_log_f ile此选项用于指定写入v sftpd格式日志的文件.如果启用了 xfer log_e nable, 而没有设定 xf erlog_std_forma t 的话,日志将只会写入此文件. 另为,如果设置了dua l_log_enab le 的话, 日志同样会写入此文件. 更复杂一点,如果您设置了sy slog_enabl e 的话,输出将不会写入此文件, 而是写入系统日志文件.默认: /var/l og/vs ftpd.logxferl og_fi le此选项用于指定写入 wu-ftpd样式日志的文件名.只有在xferl og_en able和xfe rlog_std_f ormat做了相应设定, 才会记录此传输日志.另外, 如果您设置了dual_log_enabl e 选项,也会记录此日志.默认: /var/l og/xf erlog。
杨海艳-主讲-linux之VsFTP配置步骤截图
vsftp的配置步骤讲解说明主讲人:杨海艳然后vim /etc/vsftpd/vsftpd.confservice vsftpd restart【案例1】建立基于虚拟用户的FTP服务器,并根据以下要求配置FTP服务器。
(1)配置FTP匿名用户的主目录为/var/ftp/anon。
下载带宽限制为100kB/s(2)建立一个名为abc,口令为xyz的FTP账户。
下载带宽限制为500kB/s。
(3)设置FTP服务器同时登录到FTP服务器的最大链接数为100;每个IP最大链接数为3;用户空闲时间超过限值为5分钟。
mkdir /var/ftp/anonuseradd abcpasswd abcvim /etc/vsftpd/vsftpd.conf主要内容如下anonymous_enable=YESanon_root=/var/ftp/anonanon_max_rate=100000# Uncomment this to allow local users to log in.local_enable=YESlocal_max_rate=500000max_clients=100max_per_ip=3connect_timeout=300以上是本地的LOCAL用户下面是用虚拟用户来实现vim /etc/vsftpd/vuser内容如下tom123生成数据库文件db_load -T -t hash -f /etc/vsftpd/vuser /etc/vsftpd/vuser.dbchmod 600 /etc/vsftpd/vuser.dbvim /etc/pam.d/vsftpd注释掉原来的内容然后加入auth required pam_userdb.so db=/etc/vsftpd/vuseraccount required pam_userdb.so db=/etc/vsftpd/vuser最后编辑VSFTPD.CONF加入下面两句guest_enable=YESguest_username=abc大家可以自行测试。
vsftpd.conf详解
vsftpd.conf详解//不允许匿名访问anonymous_enable=NO//设定本地⽤户可以访问。
注意:主要是为虚拟宿主⽤户,如果该项⽬设定为NO那么所有虚拟⽤户将⽆法访问local_enable=YES//允许写操作write_enable=YES//创建或上传后⽂件的权限掩码local_umask=022//禁⽌匿名⽤户上传anon_upload_enable=NO//禁⽌匿名⽤户创建⽬录anon_mkdir_write_enable=NO//进⼊⽬录时可以显⽰⼀些设定的信息,可以通过message_file=.message来设置dirmessage_enable=YES//开启⽇志xferlog_enable=YES//主动连接的端⼝号connect_from_port_20=YES//设定禁⽌上传⽂件更改宿主chown_uploads=NO//⽇志路径,记得⾃⼰创建⼀下并且对这个⽂件进⾏chown vsftpd.vsftpd /var/log/vsftpd.logxferlog_file=/var/log/vsftpd.log//就是格式话⽇志格式的,你懂得。
使⽤wu ftp软件时设置yes就⾏xferlog_std_format=YES//因为我们把vsftpd的shell设置为nobody 了,所以这个地⽅写vsftpd就可以啦!当然或者可以写成系统内的nobodynopriv_user=vsftpd//设定⽀持异步传输功能async_abor_enable=YES//设定⽀持ASCII模式的上传ascii_upload_enable=YES//设定⽀持ASCII模式的上传ascii_download_enable=YES//登陆欢迎语ftpd_banner=Welcome to dongnan FTP service.//限定在⾃⼰的⽬录内,不让他出去,就⽐如如果设置成NO,那么当你登陆到ftp的时候,可以访问服务器的其他⼀些有权限⽬录。
vsftpd配置详解
vsftpd配置详解(上)/xootus/blog/item/5247b0248329d66734a80fbe.html 一、vsftpd 简介Vsftpd是个基于GPL发布的类UNIX系统的ftp服务器软件。
其全称是Very Secure FTP Deamon,在安全性、速度和稳定性都有着不俗的表现。
在安全性方面,vsftpd针对程式的权限来设计,以一般身份启动服务,对Linux系统的使用权限较低;在千兆以太网上,vsftpd 的速度能够达到86MB/s;在稳定性上更是优秀,资料表明,完全工作24小时,传输数据达2.6TB,平均并发连接为1500用户,峰值达4000用户,而这些还是在单机上实现的。
此外,vsftpd 还包括以下特性:基于IP的虚拟服务器虚拟用户,结合数据库的用户验证每个用户单独配置文档速率限制IPV6支持支持SSL加密传输……哪些站点在使用vsftpd以下站点一直在使用vsftpd(这仅仅是很少很少的一部分站点)ftp-stud.fht-esslingen.degd.tuwien.ac.atftp.sunet.se以上内容摘自vsftpd官方网站/二、软件安装和卸载获得软件vsftpd现在最新版本为2.0.5,下载地址:ftp:///users/cevans/vsftpd-2.0.5.tar.gz软件安装解压软件,编辑builddefs.h文档# tar zxvf vsftpd-2.0.5.tar.gz# cd vsftpd-2.0.5# vi builddefs.h找到下面三行,其含义如右所示#undef VSF_BUILD_TCPWRAPPERS //是否允许使用TCP Wrappers#define VSF_BUILD_PAM //是否允许使用PAM认证#undef VSF_BUILD_SSL //是否允许使用SSL假如要允许以上所示某项功能,使把undef改为define即可,注意每行前的“#“号不是注释,不能去掉(熟悉C语言的同志应该知道这个“#”是什么意思)。
VSFTPD配置方法
VSFTPD配置方法1.安装VSFTPD软件首先,使用以下命令在Linux系统上安装VSFTPD软件:```sudo apt-get install vsftpd```2.配置VSFTPD打开VSFTPD的配置文件,通常位于/etc/vsftpd.conf,使用以下命令:```sudo nano /etc/vsftpd.conf```-设置FTP根目录:``````-允许匿名访问(可选):```anonymous_enable=YES```-关闭匿名上传(可选):```anon_upload_enable=NO```-允许本地用户登录:```local_enable=YES```-限制用户仅访问其主目录:```chroot_local_user=YES```将用户限制在其主目录下,防止访问系统其他部分。
-设置FTP用户的权限:```file_open_mode=0777local_umask=022```file_open_mode设置为0777将文件权限设置为可读写执行,local_umask设置为022保证新创建的文件和文件夹的权限正确。
``````3.重启VSFTPD服务使用以下命令重启VSFTPD服务,使配置生效:```sudo systemctl restart vsftpd```4.配置防火墙如果系统上使用了防火墙,需要修改防火墙规则以允许FTP流量通过。
根据所使用的防火墙软件和具体配置方法来进行相应的设置。
5.创建FTP用户使用以下命令创建一个FTP用户:```sudo adduser ftpuser```将ftpuser替换为你希望创建的FTP用户名。
6.设置FTP用户密码使用以下命令设置FTP用户的密码:```sudo passwd ftpuser```7.连接FTP服务器使用FTP客户端软件连接到配置好的VSFTPD服务器,使用FTP用户的用户名和密码登录即可。
以上就是VSFTPD配置的一般方法。
vsftpd配置文件详解
vsftpd配置⽂件详解1.默认配置:1>允许匿名⽤户和本地⽤户登陆。
anonymous_enable=YESlocal_enable=YES2>匿名⽤户使⽤的登陆名为ftp或anonymous,⼝令为空;匿名⽤户不能离开匿名⽤户家⽬录/var/ftp,且只能下载不能上传。
3>本地⽤户的登录名为本地⽤户名,⼝令为此本地⽤户的⼝令;本地⽤户可以在⾃⼰家⽬录中进⾏读写操作;本地⽤户可以离开⾃家⽬录切换⾄有权限访问的其他⽬录,并在权限允许的情况下进⾏上传/下载。
write_enable=YES4>写在⽂件/etc/vsftpd.ftpusers中的本地⽤户禁⽌登陆。
2.配置⽂件格式:vsftpd.conf 的内容⾮常单纯,每⼀⾏即为⼀项设定。
若是空⽩⾏或是开头为#的⼀⾏,将会被忽略。
内容的格式只有⼀种,如下所⽰option=value要注意的是,等号两边不能加空⽩。
3.匿名⽤户(anonymous)设置anonymous_enable=YES/NO(YES)控制是否允许匿名⽤户登⼊,YES 为允许匿名登⼊,NO 为不允许。
默认值为YES。
write_enable=YES/NO(YES)是否允许登陆⽤户有写权限。
属于全局设置,默认值为YES。
no_anon_password=YES/NO(NO)若是启动这项功能,则使⽤匿名登⼊时,不会询问密码。
默认值为NO。
ftp_username=ftp定义匿名登⼊的使⽤者名称。
默认值为ftp。
anon_root=/var/ftp使⽤匿名登⼊时,所登⼊的⽬录。
默认值为/var/ftp。
注意ftp⽬录不能是777的权限属性,即匿名⽤户的家⽬录不能有777的权限。
anon_upload_enable=YES/NO(NO)如果设为YES,则允许匿名登⼊者有上传⽂件(⾮⽬录)的权限,只有在write_enable=YES时,此项才有效。
当然,匿名⽤户必须要有对上层⽬录的写⼊权。
vsftpd 配置文件详细说明(史上最全附例子)
禁止使用vsftpd 的用户列表文件。记录不允许访问FTP服务器的用户名单,管理员可以把一些对系统安全有威胁的用户账号记录在此文件中,以免用户从FTP登录后获得大于上传下载操作的权利,而对系统造成损坏。(注意: linux-4 中此文件在 /etc/ 目录下)
anonymous_enable=YES ( 是否允许 匿名登录FTP服务器,默认设置为YES允许,即用户可使用用户名ftp或anonymous进行ftp登录,口令为用户的E-mail地址。如不允许匿名访问去掉前面#并设置为NO )
# Uncomment this to allow local users to log in.
# Enable this and the server will recognise asynchronous ABOR requests. Not
# recommended for security (the code is non-trivial). Not enabling it,
# however, may confuse older FTP clients.
# Activate directory messages - messages given to remote users when they
# go into a certain directory.
#dirmessage_enable=YES ( 是否激活目录欢迎信息功能 , 当用户用 CMD 模式首次访问服务器上某个目录时 ,FTP 服务器将显示欢迎信息 , 默认情况下 , 欢迎信息是通过 该 目录下的 .message 文件获得的,此文件保存自定义的欢迎信息,由用户自己建立)
vsftpd配置详解
[root@ftpservervsftpd]#vimvsftpd.conf#禁止匿名用户anonymous登录anonymous_enable=NO#允许本地用户登录local_enable=YES#让登录的用户有写权限(上传,删除)write_enable=YES#默认umasklocal_umask=022#把传输记录的日志保存到/var/log/vsftpd.logxferlog_enable=YESxferlog_file=/var/log/vsftpd.logxferlog_std_format=NO#允许ASCII模式上传ascii_upload_enable=YES#允许ASCII模式下载ascii_download_enable=YES#使用20号端口传输数据connect_from_port_20=YES#欢迎标语ftpd_banner=Welcometousemytestftpserver.#接下来的三条配置很重要#chroot_local_user设置了YES,那么所有的用户默认将被chroot,#也就用户目录被限制在了自己的home下,无法向上改变目录。
#chroot_list_enable设置了YES,即让chroot用户列表有效。
#★超重要:如果chroot_local_user设置了YES,那么chroot_list_file#设置的文件里,是不被chroot的用户(可以向上改变目录)#★超重要:如果chroot_local_user设置了NO,那么chroot_list_file#设置的文件里,是被chroot的用户(无法向上改变目录)chroot_local_user=YESchroot_list_enable=YESchroot_list_file=/etc/vsftpd/chroot_list#以standalone模式在ipv4上运行listen=YES#PAM认证服务名,这里默认是vsftpd,在安装vsftpd的时候已经创建了这个pam文件,#在/etc/pam.d/vsftpd,根据这个pam文件里的设置,/etc/vsftpd/ftpusers#文件里的用户将禁止登录ftp服务器,比如root这样敏感的用户,所以你要禁止别的用户#登录的时候,也可以把该用户追加到/etc/vsftpd/ftpusers里。
vsftpd_参数说明
listen_address=192.168.0.2
#绑定到某个端口
#listen_port=2121
#数据传输端口
#ftp_data_port=2020
#pasv连接模式时可以使用port 范围的上界,0 表示任意。默认值为0。
pasv_max_port=0
#pasv连接模式时可以使用port 范围的下界,0 表示任意。默认值为0。
anon_mkdir_write_enable=YES //是否允许匿名用户创建目录。只有在write_enable设置为 YES时有效。且匿名用户对上层目录有写入的权限。默认为NO。
anon_other_write_enable=NO //若设置为YES,则匿名用户会被允许拥有多于
上传和建立目录的权限,还会拥有删除和更名权限。默认值为NO。
426 关闭联机,终止传输。
450 请求的操作未执行。
451 命令终止:有本地的错误。
452 未执行命令:磁盘空间不足。
500 格式错误,无法识别命令。
501 参数语法错误。
502 命令执行失败。
503 命令顺序错误。
504 命令所接的参数不正确。
530 未登入。
532 储存文件需要账户登入。
550 未执行请求的操作。
ftpd_banner=欢迎来到湖南三辰Fake-Ta FTP 网站.
#允许为目录配置显示信息,显示每个目录下面的message_file文件的内容
dirmessage_enable=YES
#显示会话状态信息,关!
#setproctitle_enable=YES
############## 文件定义 ##################
visual studio ftp服务器配置
FTP服务器配置
---Windows Server 2003
一.安装FTP
1.打开添加、删除程序
2.点击“添加或删除Windows组件”
3.双击“应用程序服务器”
4.双击“Internet信息服务(IIS)”
5.选择“文件传输协议(FTP)服务”6.点“确定”完成安装
二.配置FTP服务
1.打开“Internet信息服务(IIS)管理器”
2.选择“默认FTP站点”---“新建”---“虚拟目录”
3.新建虚拟目录TPLM
4.选择TPLM---点击鼠标右键---属性
5.选择上传文件存放位置(如图:这里选择D:\ExeFile)
7.选择默认FTP站点---点击右键---属性
8.安全帐户为服务器计算机的某个用户(FTP站点及其它按默认设置、)
(此用户为解决方案mObject.BL. SysConfig的FTP用户)
static private string _springClient = "ClientSpringcnf.xml";
static private string _ftpServer = "ftp://172.16.182.182/tplm/";
static private string _ftpUser = "Administrator"; static private string _ftpPassword = "Ksec@tplm";。
vsftpd_虚拟用户配置详解
一在线安装vsftpd需要的组件yum -y install vsftpd*yum -y install pam*yum -y install db4二建立虚拟用户[root@localhost ~]#vi /etc/vsftpd/vftpuser.txt添加虚拟用户名和密码奇数行为用户名反之为密码qiu123cancan123456三生成虚拟用户口令认证文件把刚添加的vftpuser.txt虚拟用户口令转换成系统的口令认证文件root@localhost ~]#db_load -T -t hash -f /etc/vsftpd/vftpuser.txt /etc/vsftpd/vu_list.db四编辑vsftpd的PAM认证[root@localhost ~]#vi /etc/pam.d/vsftpd.vu录入下文auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vu_listaccount required /lib/security/pam_userdb.so db=/etc/vsftpd/vu_list五建立本地映射用户并设置宿主权限[root@localhost ~]#mkdir /opt/tonecan (在/opt建立一个tonecan)[root@localhost ~]#useradd -d /opt/tonecan -s /sbin/nologin vftpuser[root@localhost ~]#chmod 777 /opt/tonecan并且设置权限为777.六配置vsftpd.conf (设置虚拟用户配置项)[root@localhost ~]#vi /etc/vsftpd/vsftpd.confguest_enable=YES #开启虚拟用户user_config_dir=/etc/vsftpd/vsftpd_user_conf 虚拟用户配置文件存放位置guest_username=vftpuser (FTP虚拟用户对用的系统用户useradd -d /opt/tonecan -s/sbin/nologin vftpuser)pam_service_name=vsftpd#PAM认证文件七测试登录root@localhost ~]#service vsftpd restart重启vsftpd服务然后测试登录。
vsftp
编辑,但在我们的源码目录里已经有一个样本配置文件了,可以直接修改这个文件
以满足我们的需求,现在把这个样本配置文件拷贝到这个目录下:
#cp vsftpd.conf /etc/
这样在/etc/下有一个配置文件vsftpd.conf了。
connect_timeout=60 //客户端在中断1分钟后自动激活连接,默认为60秒
6,设置最大传输速率限制
local_max_rate=50000 //本地用户最大传输速率为50kbytes/s
anon_max_rate=30000 //匿名用户最大传输速率为30kbytes/s
若把上述的数值设为0则为不限速,这也是VSFTP的默认值。
vsftp默认的配置还需要一个空的目录(empty),该目录的绝对路径应该是
/usr/share/empty/,另外若ftp服务器需要匿名用户(anonymous)需要加一个用户
ftp,此用户的要求这样:用户目录设为/var/ftp,它是VSFTP的匿名用户的映射本地用户,即指anonymous用户在进程中以ftp用户身分运行 进程,但anonymous用户
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
OK,FTP服务器运行正常,使用匿名用户ftp登陆成功,你也可以使用anonymous代
a)使本地用户能登录FTP。按照上面的源码安装配置我们的FTP还不能让本地用户登
第12章vsFTP服务及其配置
❖ ^] ❖ 再按“q〞退出telnet ❖ telnet> q
ConБайду номын сангаасection closed. [root@Candy root]#
测试ftp的运行
❖ 默认情况下,安装好vsftp服务器后就可以 使用匿名用户anonymous〔或ftp〕下载文件 了。例如,使用匿名用户下载文件。操作步 骤如下:
#do not even prompt for a password.
Root
Bin
……
Games
Nobody
❖ 此文件中指定的用户默认情况〔即在/etc/vs中设定了 userlist_deny=YES〕下也不能访问FTP服务器,而如果在
vs中设定了userlist_deny=NO,则仅仅允许此文件中指定
❖ ftp> !ls
anaconda-ks.cfg install.log install.log.syslog wel e.txt
❖ 通过显示本地文件命令“!ls〞确认已经将文件wel e.txt下 载到本地。
测试ftp的运行〔续〕
❖5〕 测试是否能上传文件到/var/目录。 ❖ftp> put install.log
FTP客户端命令简介
❖要登录到vsFTP服务器,在Windows系统 中可以使用图形化的FTP客户端软件,如 Cute等,也可以直接在命令行状态下使用 FTP命令。
FTP命令的格式
❖FTP〔机器名、网址或IP地址〕 ❖假设连接成功,系统提示输入用户名
〔Name〕及密码〔Password〕。进入FTP 站点后,用户就可以使用相应的命令进行 各种操作了。
Linux下vsftp配置大全
一、前言Vsftp(Very Secure FTP)是一种在Unix/Linux中非常安全且快速稳定的FTP服务器,目前已经被许多大型站点所采用,如,,.等。
Vsftpd的实现有三种方式1、匿名用户形式:在默认安装的情况下,系统只提供匿名用户访问2、本地用户形式:以/etc/passwd中的用户名为认证方式3、虚拟用户形式:支持将用户名和口令保存在数据库文件或数据库服务器中。
相对于FTP的本地用户形式来说,虚拟用户只是FTP服务器的专有用户,虚拟用户只能访问FTP服务器所提供的资源,这大大增强系统本身的安全性。
相对于匿名用户而言,虚拟用户需要用户名和密码才能获取FTP服务器中的文件,增加了对用户和下载的可管理性。
对于需要提供下载服务,但又不希望所有人都可以匿名下载;既需要对下载用户进行管理,又考虑到主机安全和管理方便的FTP站点来说,虚拟用户是一种极好的解决方案。
二、获取最新版的Vsftp程序Vsftp官方下载:ftp:///users/cevans/vsftpd-2.0.3.tar.gz,目前已经到2.0.3版本。
假设我们已经将vsftpd-2.0.3.tar.gz文件下载到服务器的/home/xuchen目录# cd /home/xuchen# tar xzvf vsftpd-2.0.3.tar.gz //解压缩程序# cd vsftpd-2.0.3三、三种方式的实现1、匿名用户形式实现# vi builddefs.h \\编辑builddefs.h 文件,文件内容如下:#ifndef VSF_BUILDDEFS_H#define VSF_BUILDDEFS_H#undef VSF_BUILD_TCPWRAPPERS#define VSF_BUILD_PAM#undef VSF_BUILD_SSL#endif /* VSF_BUILDDEFS_H */将以上undef的都改为define,支持tcp_wrappers,支持PAM认证方式,支持SSL# make //直接在vsftpd-2.0.3里用make编译# ls -l vsftpd-rwxr-xr-x 1 root root 86088 Jun 6 12:29 vsftpd //可执行程序已被编译成功创建必要的帐号,目录:# useradd nobody //可能你的系统已经存在此帐号,那就不用建立# mkdir /usr/share/empty //可能你的系统已经存在此目录,那就不用建立# mkdir /var/ftp //可能你的系统已经存在此目录,那就不用建立# useradd -d /var/ftp ftp //可能你的系统已经存在此帐号,那就不用建立# chown root:root /var/ftp# chmod og-w /var/ftp请记住,如果你不想让用户在本地登陆,那么你需要把他的登陆SHELL设置成/sbin/nologin,比如以上的nobody和ftp我就设置成/sbin/nologin安装vsftp配置文件,可执行程序,man等:# install -m 755 vsftpd /usr/local/sbin/vsftpd-ano# install -m 644 vsftpd.8 /usr/share/man/man8# install -m 644 vsftpd.conf.5 /usr/share/man/man5# install -m 644 vsftpd.conf /etc/vsftpd-ano.conf这样就安装完成了,那么我们开始进行简单的配置# vi /etc/vsftpd-ano.conf ,将如下三行加入文件listen=YESlisten_port=21tcp_wrappers=YESanon_root=/var/ftp //设置匿名用户本地目录,和ftp用户目录必须相同listen=YES的意思是使用standalone启动vsftpd,而不是super daemon(xinetd)控制它(vsftpd 推荐使用standalone方式)# /usr/local/sbin/vsftpd-ano /etc/vsftpd-ano.conf & //以后台方式启动vsftpd注意:每行的值都不要有空格,否则启动时会出现错误,举个例子,假如我在listen=YES后多了个空格,那我启动时就出现如下错误:500 OOPS: bad bool value in config file for: listen测试搭建好的匿名用户方式# ftp 127.0.0.1Connected to 127.0.0.1.220 (vsFTPd 2.0.3)530 Please login with USER and PASS.530 Please login with USER and PASS.KERBEROS_V4 rejected as an authentication typeName (127.0.0.1:root): ftp331 Please specify the password.Password:230 Login successful.Remote system type is UNIX.Using binary mode to transfer files.ftp>; pwd257 "/"ftp>; quit221 Goodbye.#OK,已经完成了,very nice.高级配置细心的朋友可能已经看出来我们只在默认配置文件增加了四行,就实现了FTP连接(也证明了vsftpd的易用性),那么让我们传个文件吧,呀!!传输失败了(见图1)为什么呢?因为vsftpd 是为了安全需要,/var/ftp目录不能把所有的权限打开,所以我们这时要建一个目录pub,当然也还是需要继续修改配置文件的。
FTP配置文件参数详解
FTP配置文件参数详解1. listen:FTP服务器监听的端口号,默认为21、可以修改为其他端口号,以增强安全性。
2. anonymous_enable:是否启用匿名访问。
设置为YES表示启用匿名访问,即允许用户使用匿名账户通过FTP访问服务器。
设置为NO表示禁用匿名访问。
3. local_enable:是否启用本地用户访问。
设置为YES表示允许本地用户通过FTP访问服务器,设置为NO表示不允许。
5. chroot_local_user:是否将用户限制在其主目录中。
设置为YES 表示限制用户只能在其主目录中操作,设置为NO表示不限制。
6. userlist_enable:是否启用用户列表。
设置为YES表示启用用户列表,配置文件中可以指定允许或禁止访问FTP服务器的用户列表。
7. no_anon_password:是否为匿名账户设置密码。
设置为YES表示需要设置匿名账户的密码,设置为NO表示不需要密码。
8. anon_root:匿名账户的根目录。
可以指定匿名账户可以访问的文件夹。
9. local_root:本地用户的根目录。
可以指定本地用户可以访问的文件夹。
10. allow_writeable_chroot:是否允许在根目录下创建文件夹。
设置为YES表示允许在根目录下创建文件夹,设置为NO表示不允许。
11. max_clients:最大客户端连接数。
可以设置FTP服务器支持的最大客户端数量。
12. max_per_ip:每个IP地址的最大连接数。
可以限制来自同一IP 地址的最大连接数,以防止滥用和攻击。
13. pasv_min_port和pasv_max_port:被动模式的端口范围。
在FTP数据传输过程中,被动模式使用随机端口进行数据传输。
可以指定被动模式使用的端口范围。
14. ftpd_banner:FTP服务器的欢迎信息。
可以自定义欢迎信息,向用户展示自己的信息。
15. log_ftp_protocol:是否记录FTP协议。
vsftp 连接参数
vsftp 连接参数vsftpd是一个流行的FTP服务器软件,用于在Linux系统上提供文件传输服务。
在使用vsftpd时,您可能需要设置一些连接参数来配置FTP服务器的行为。
以下是一些常见的vsftpd连接参数:1. 超时时间:`accept_timeout`: 用于设置建立FTP连接的超时时间,单位为秒。
默认值为60秒。
`connect_timeout`: 在PORT方式下,用于设置建立数据连接的超时时间,单位为秒。
默认值为60秒。
`data_connection_timeout`: 用于设置建立FTP数据连接的超时时间,单位为秒。
默认值为120秒。
`idle_session_timeout`: 用于设置在多长时间内不对FTP服务器进行任何操作,就会断开FTP连接,单位为秒。
默认值为300秒。
2. 日志文件设置:`xferlog_enable`: 用于启用或禁用上传/下载日志记录。
预设值为开启(YES)。
`xferlog_file`: 用于设置日志文件的路径和名称。
默认值为/var/log/。
3. 权限和安全设置:`anonymous_enable`: 允许匿名用户访问FTP服务器。
预设值为NO。
`local_enable`: 允许本地用户登录到FTP服务器。
预设值为NO。
`write_enable`: 允许用户写入文件到FTP服务器。
预设值为NO。
4. 其他常用参数:`debug_enable`: 开启调试模式,用于查看详细的日志信息。
预设值为NO。
`pasv_enable`: 开启被动模式,以允许在某些客户端(如防火墙后)使用FTP连接。
预设值为YES。
`ssl_enable`: 启用SSL加密连接,以提高安全性。
预设值为NO。
`tcp_wrappers`: 允许使用tcpwrappers进行访问控制,提供额外的安全性层。
预设值为NO。
以上参数仅供参考,实际配置应根据您的需求和安全要求进行更改。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
# 是否允许匿名登录FTP服务器,默认设置为YES允许
# 用户可使用用户名ftp或anonymous进行ftp登录,口令为用户的E-mail地址。
# 如不允许匿名访问则设置为NO
anonymous_enable=YES
# 是否允许本地用户(即linux系统中的用户帐号)登录FTP服务器,默认设置为YES允许
# 本地用户登录后会进入用户主目录,而匿名用户登录后进入匿名用户的下载目录/var/ftp/pub # 若只允许匿名用户访问,前面加上#注释掉即可阻止本地用户访问FTP服务器
local_enable=YES
# 是否允许本地用户对FTP服务器文件具有写权限,默认设置为YES允许
write_enable=YES
# 掩码,本地用户默认掩码为077
# 你可以设置本地用户的文件掩码为缺省022,也可根据个人喜好将其设置为其他值
#local_umask=022
# 是否允许匿名用户上传文件,须将全局的write_enable=YES。
默认为YES
#anon_upload_enable=YES
# 是否允许匿名用户创建新文件夹
#anon_mkdir_write_enable=YES
# 是否激活目录欢迎信息功能
# 当用户用CMD模式首次访问服务器上某个目录时,FTP服务器将显示欢迎信息
# 默认情况下,欢迎信息是通过该目录下的.message文件获得的
# 此文件保存自定义的欢迎信息,由用户自己建立
#dirmessage_enable=YES
# 是否让系统自动维护上传和下载的日志文件
# 默认情况该日志文件为/var/log/vsftpd.log,也可以通过下面的xferlog_file选项对其进行设定# 默认值为NO
xferlog_enable=YES
# Make sure PORT transfer connections originate from port 20 (ftp-data).
# 是否设定FTP服务器将启用FTP数据端口的连接请求
# ftp-data数据传输,21为连接控制端口
connect_from_port_20=YES
# 设定是否允许改变上传文件的属主,与下面一个设定项配合使用
# 注意,不推荐使用root用户上传文件
#chown_uploads=YES
# 设置想要改变的上传文件的属主,如果需要,则输入一个系统用户名
# 可以把上传的文件都改成root属主。
whoever:任何人
#chown_username=whoever
# 设定系统维护记录FTP服务器上传和下载情况的日志文件
# /var/log/vsftpd.log是默认的,也可以另设其它
#xferlog_file=/var/log/vsftpd.log
# 是否以标准xferlog的格式书写传输日志文件
# 默认为/var/log/xferlog,也可以通过xferlog_file选项对其进行设定
# 默认值为NO
#xferlog_std_format=YES
# 以下是附加配置,添加相应的选项将启用相应的设置
# 是否生成两个相似的日志文件
# 默认在/var/log/xferlog和/var/log/vsftpd.log目录下
# 前者是wu_ftpd类型的传输日志,可以利用标准日志工具对其进行分析;后者是vsftpd类型的日志
#dual_log_enable
# 是否将原本输出到/var/log/vsftpd.log中的日志,输出到系统日志
#syslog_enable
# 设置数据传输中断间隔时间,此语句表示空闲的用户会话中断时间为600秒
# 即当数据传输结束后,用户连接FTP服务器的时间不应超过600秒。
可以根据实际情况对该值进行修改
#idle_session_timeout=600
# 设置数据连接超时时间,该语句表示数据连接超时时间为120秒,可根据实际情况对其个修改
#data_connection_timeout=120
# 运行vsftpd需要的非特权系统用户,缺省是nobody
#nopriv_user=ftpsecure
# 是否识别异步ABOR请求。
# 如果FTP client会下达“async ABOR”这个指令时,这个设定才需要启用
# 而一般此设定并不安全,所以通常将其取消
#async_abor_enable=YES
# 是否以ASCII方式传输数据。
默认情况下,服务器会忽略ASCII方式的请求。
# 启用此选项将允许服务器以ASCII方式传输数据
# 不过,这样可能会导致由"SIZE /big/file"方式引起的DoS攻击
#ascii_upload_enable=YES
#ascii_download_enable=YES
# 登录FTP服务器时显示的欢迎信息
# 如有需要,可在更改目录欢迎信息的目录下创建名为.message的文件,并写入欢迎信息保存后
#ftpd_banner=Welcome to blah FTP service.
# 黑名单设置。
如果很讨厌某些email address,就可以使用此设定来取消他的登录权限
# 可以将某些特殊的email address抵挡住。
#deny_email_enable=YES
# 当上面的deny_email_enable=YES时,可以利用这个设定项来规定哪些邮件地址不可登录vsftpd服务器
# 此文件需用户自己创建,一行一个email address即可
#banned_email_file=/etc/vsftpd/banned_emails
# 用户登录FTP服务器后是否具有访问自己目录以外的其他文件的权限
# 设置为YES时,用户被锁定在自己的home目录中,vsftpd将在下面chroot_list_file选项值的位置寻找chroot_list文件
# 必须与下面的设置项配合
#chroot_list_enable=YES
# 被列入此文件的用户,在登录后将不能切换到自己目录以外的其他目录
# 从而有利于FTP服务器的安全管理和隐私保护。
此文件需自己建立
#chroot_list_file=/etc/vsftpd/chroot_list
# 是否允许递归查询。
默认为关闭,以防止远程用户造成过量的I/O
#ls_recurse_enable=YES
# 是否允许监听。
# 如果设置为YES,则vsftpd将以独立模式运行,由vsftpd自己监听和处理IPv4端口的连接请求
listen=YES
# 设定是否支持IPV6。
如要同时监听IPv4和IPv6端口,
# 则必须运行两套vsftpd,采用两套配置文件
# 同时确保其中有一个监听选项是被注释掉的
#listen_ipv6=YES
# 设置PAM外挂模块提供的认证服务所使用的配置文件名,即/etc/pam.d/vsftpd文件
# 此文件中file=/etc/vsftpd/ftpusers字段,说明了PAM模块能抵挡的帐号内容来自文件/etc/vsftpd/ftpusers中
#pam_service_name=vsftpd
# 是否允许ftpusers文件中的用户登录FTP服务器,默认为NO
# 若此项设为YES,则user_list文件中的用户允许登录FTP服务器
# 而如果同时设置了userlist_deny=YES,则user_list文件中的用户将不允许登录FTP服务器,甚至连输入密码提示信息都没有
#userlist_enable=YES/NO
# 设置是否阻扯user_list文件中的用户登录FTP服务器,默认为YES
#userlist_deny=YES/NO
# 是否使用tcp_wrappers作为主机访问控制方式。
# tcp_wrappers可以实现linux系统中网络服务的基于主机地址的访问控制
# 在/etc目录中的hosts.allow和hosts.deny两个文件用于设置tcp_wrappers的访问控制
# 前者设置允许访问记录,后者设置拒绝访问记录。
# 如想限制某些主机对FTP服务器192.168.57.2的匿名访问,编缉/etc/hosts.allow文件,如在下面增加两行命令:
# vsftpd:192.168.57.1:DENY 和vsftpd:192.168.57.9:DENY
# 表明限制IP为192.168.57.1/192.168.57.9主机访问IP为192.168.57.2的FTP服务器
# 此时FTP服务器虽可以PING通,但无法连接tcp_wrappers=YES。