vsFTP
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 是主配置文件。
Linux下的VSFTP服务黑名单白名单的策略配置

龙源期刊网 Linux下的VSFTP服务黑名单白名单的策略配置
作者:帅志军
来源:《科学大众》2019年第10期
摘; ;要:文件传输协议是专门用于文件传输的一种协议,是在互联网中应用最为广泛的协议之一,为了确保网络中文件共享的安全,必須对用户进行甄别,所以,建立黑名单白名单的策略显得尤为重要。
关键词:VSFTP服务;黑名单;白名单
1; ; VSFTP服务的简介
VSFTP是一种基于通用公共授权(General Public License,GPL)发布的一种服务,其中VS是“Very Secure”的简写,从字面上理解可以看出该软件编写的目的就是代码的安全性保障,当然除了安全性更强外,高速和稳定的特性也是VSFTP的特色。
2; ; 任务一:设置用户黑名单
具体步骤:(1)在虚拟机中准备两个虚拟Linux操作系统,一台为Linux服务器,另一
台为Linux客户端,此客户端用于测试使用。
两个系统都要安装好FTP服务。
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大家可以自行测试。
Linux1 FTP服务器 vsFTP的启动模式

Linux1 FTP 服务器 vsFTP 的启动模式vsFTPd 拥有两种启动的模式,分别是一直在监听的stand alone (独立安全模式),一种则是通过xinetd 这个super daemon (超级服务)来管理的方式。
两种方式所使用的启动程序不太相同,而Red Hat Linux5.4则默认是以stand alone 来启动的。
那么什么情况下应该选择stand alone 或者是super daemon 呢?如果你的FTP 服务器在整个因特网上是用来完成大量的下载任务,比如各大院校的FTP 服务器,则建议使用独立安全模式,服务器的速度会比较快。
如果仅是提供给内部人员使用的FTP 服务器,那么使用super daemon 来管理即可。
1.独立安全模式启动vsFTPd采用独立安全模式时,Red Hat Enterprise Linux5.4不用做任何设置就能够启动vsFTPd (因为它通过利用系统本身提供的脚本来进行)。
只需在终端下,输入“/etc/init.d/vsFTPd start ”命令,并按【回车】键即可,如图8-29所示。
图8-29 启动vsFTPd 服务另外,如果需要让vsftpd 服务随系统启动而自动加载,可以在终端内执行“ntsysv ”命令启动服务配置程序,从服务列表中找到“vsftpd ”服务,并按【空格】键在其前面加上星号(*),然后选择【确定】选项,如图8-30所示。
提 示Stand alone 字面为“独立的启动”,该模式的进程系统后,常驻内存,占用系统资源,但相应快,一有请求来就立刻响应。
Super daemon 相对于Stand alone ,这种服务的启动由统一的一个进程负责响应该服务,此进程就是xinet 。
提 示若要停止vsFTPd 服务,使用/etc/init.d/vsftpd stop 命令;重启vsFTPd 服务,使用/etc/init.d/vsftpd restart 命令。
VSFTP技术在实际工作中的应用

台 丌 P文件 传输 服 务 器 ,作 为 与外 联 单位 进 行 数 据
传输的通信平 台。经过多方查 找并深入分析研究技术 资料 , 笔者决定采用 V F P e 1t i x sV +R c aLn r ¨ u 5的组 合方 式来实现。经过积极探索 , 反复测试 , 丌P文件传输服 务器 已配置成功 , 并投 入实际运行 , 现将 V F P在 实 ST 际工作中的应用总结介绍 , 以便分享 。
mk i p/o /tst/ p s r u l d r— h mef i f u e/ bi p el p c
一
、
软件环 境 的选 择
在 I 界 是 有 目共 睹 的 。 R d a L u T业 e t i x中的 R M 软 H n P
( )ST 一 V F P的主要 功 能 v P V r Scr P 非 常 安 全 的 F P 是 一 个 S ( e eue y , T) 基 于 G L G nrl u l i ne通 用 性 公 开许 可 证 ) P ( eeaP biLc s, c e
度 是 Wu F P ( 一 种 比较 流行 的类 U i平 台的 F P —T 另 n x T
二、 具体 实现
( ) 实现 的 目标 一 拟
1 安装 v 丌 P的软件 , . s 配置为禁止匿名用户访问。
2 模 拟 添 加 2个用 户 f uel psr ( . l s , ue 假设 2 p rf l 2 个 用 户 为 其 他 机 构 用 户 )添 加 f ue用 户 ( , l sr p 假设 为 本 单
软件 ) 2 , 的 倍 如果 Lnx i 主机使用 2 . u . 的内核 , 4 在千
vsftp 超时 参数

vsftp 超时参数vsftp是一种用于在计算机网络上进行文件传输的协议,它的超时参数是指在传输过程中,如果连接超过一定时间没有任何活动或响应,vsftp会自动断开连接。
超时参数的设置对于保证文件传输的可靠性和稳定性非常重要。
在网络传输中,超时参数的作用是防止连接在长时间没有响应的情况下一直占用资源。
如果没有超时参数,当网络连接出现问题或者对方主机无响应时,传输的连接可能会一直保持,导致资源的浪费和传输的失败。
而通过设置超时参数,vsftp可以在一定时间内自动断开连接,释放资源,保证传输的可靠性。
在vsftp中,超时参数可以通过配置文件进行设置。
通常,超时参数包括连接超时和数据传输超时两部分。
连接超时是指在建立连接的过程中,如果超过一定时间没有建立成功,vsftp会自动断开连接。
数据传输超时是指在数据传输过程中,如果超过一定时间没有任何活动或响应,vsftp会自动断开连接。
设置超时参数可以根据实际的网络环境和传输需求进行调整。
如果网络环境较差或者传输的文件较大,可以适当增加超时时间,以确保传输的顺利进行。
而如果网络环境较好或者传输的文件较小,可以适当减小超时时间,以提高传输的效率。
除了设置超时参数外,vsftp还可以通过其他方式来保证传输的可靠性和稳定性。
例如,可以使用数据校验和来检测传输过程中是否出现错误或丢失。
同时,vsftp还支持断点续传功能,即使在传输过程中出现异常情况,也可以通过重新连接和传输来实现文件的完整性。
vsftp的超时参数是保证文件传输可靠性和稳定性的重要设置之一。
通过合理设置超时参数,可以避免资源的浪费和传输的失败,提高传输效率和成功率。
在实际应用中,根据网络环境和传输需求进行调整,可以更好地满足用户的需求。
Linux上的远程登录和文件传输工具比较SSHvsFTP

Linux上的远程登录和文件传输工具比较SSHvsFTPLinux上的远程登录和文件传输工具比较:SSH vs FTP远程登录和文件传输是在Linux操作系统中常见的需求。
为了满足这些需求,我们通常使用SSH(Secure Shell)和FTP(File Transfer Protocol)这两种工具。
本文将对SSH和FTP进行比较,从安全性、功能性、易用性和性能等方面进行评估,以便读者了解其特点和适用场景。
一、安全性SSH是一种网络协议,用于在不安全的网络中安全地进行数据通信。
它使用加密算法对传输的数据进行保护,以防止敏感信息泄露和未经授权访问。
SSH采用公钥加密和密钥交换的方式进行身份验证,并提供可靠的身份验证机制,可以有效地抵御恶意攻击和黑客入侵。
相比之下,FTP是一种不安全的协议,数据传输是明文的,存在数据泄露的风险。
FTP仅提供基本的用户名和密码认证,缺乏其他安全保护机制。
因此,如果在不安全的网络环境中使用FTP进行远程登录和文件传输,会面临数据被窃取或篡改的风险。
综上所述,SSH在安全性方面明显优于FTP。
二、功能性SSH不仅仅是一个远程登录工具,还具备远程执行命令、传输文件等多种功能。
使用SSH连接到远程服务器后,用户可以通过命令行界面操作远程服务器,执行系统管理任务、软件安装、文件管理等操作。
此外,SSH还支持端口转发、隧道和代理等高级功能,可以在安全的方式下访问内部网络资源。
FTP主要用于文件传输,提供上传和下载文件的功能。
用户可以通过FTP客户端连接到FTP服务器,进行文件的传输和管理。
FTP支持断点续传、目录操作、权限管理等功能,但相对于SSH而言,其功能相对简单。
总体而言,SSH的功能更加强大且灵活。
三、易用性SSH一般使用终端连接到远程服务器,需要输入用户名和密码进行身份验证。
对于有一定Linux使用经验的用户来说,使用SSH相对较简单。
此外,SSH客户端程序已经内置在大多数Linux发行版中,无需另外安装。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
TFTP修改配置文件:#vim /etc/xinetd.d/tftpdisable=noserver_args = -s /tftpboot -c 加上-c可以在家目录/tftpboot下创建文件命令:#tftp 192.168.1.2>put a 上传>get a 下载FTP服务器建立连接:客户端发送连接请求,同时打开一个大于1024的端口,比如1031端口,若FTP服务器侦听到该请求,则会在1031端口和FTP的21端口之间建立起一个FTP会话连接。
传输数据:当需要传输数据时,客户端再动态的打开一个大于1024的端口连接到FTP得20端口,并在这个两个端口之间进行数据传输。
FTP 协议中,控制连接均有客户端发起,而数据连接有两种工作方式:PORT 主动方式和PASV 被动方式主动client server1024+ ---------------> 211024+N <-------------- 20客户端使用1024 以上的端口连接服务器的21 号端口,并且会事先开启一个1024+N 的端口准备让服务器来连接,服务器得知客户端准备的端口后,用20 号端口与客户端连接,创建数据链路时server 端处于主动去连接客户端的状态固称为主动传输模式被动client server1024+ ---------------> 21 1024+M1024+ <--------------1024+N --------------->1024+M客户端使用1024 以上的端口连接服务器的21 号端口,服务器接到连接请求后,开启一个1024+M 的端口等待客户端来连接,再通知客户端这个等待连接的端口号是1024+M,客户端接到服务器端的信息后,开启新的一个1024+N 的端口与1024+M 进行连接, ,创建数据连接时,server 端处于被客户端连接的状态,固称为被动传输模式vsftp 默认是根据客户端不同而使用不同模式,windows 客户端则使用主动,linux 客户端则使用被动可以用pasv_enable=NO 来强制使用主动VSFTP -very secure FTP,使用VSFTP的网站: ftp.sunet.se 安装:rpm yum查看:rpm开机自动启动:[root@localhost ~]# chkconfig --list |grep vsftpvsftpd 0:关闭1:关闭2:关闭3:关闭4:关闭5:关闭6:关闭或者: [root@localhost ~]# ntsysv有关VSFTP的配置文件:1./etc/pam.d/vsftpdVsftpd的PAM(插入式验证模块)配置文件,主要用来加强vsftpd的用户认证2. /etc/vsftpd/vsftpd.conf vsftpd的主配置文件3. /etc/vsftpd/ftpusers 所有位于此文件内的用户都不能访问vsftpd服务4. /etc/vsftpd/user_list 这个文件中的用户有可能是被拒绝访问,也有可能是允许访问,主要取决于vsftpd.conf中“userlist_deny”关键字是设置为YES还是NO。
5. /var/ftp/ ftp主目录常用的全局配置项listen=YES:是否以独立运行的方式监听服务listen_address=192.168.4.1:设置监听的IP 地址listen_port=21:设置监听FTP 服务的端口号write_enable=YES:是否启用写入权限download_enable=YES:是否允许下载文件userlist_enable=YES:是否启用user_list 列表文件userlist_deny=YES:是否禁用user_list 中的用户max_clients=0:限制并发客户端连接数max_per_ip=0:限制同一IP 地址的并发连接数常用的匿名FTP 配置项anonymous_enable=YES:启用匿名访问anon_umask=022:匿名用户所上传文件的权限掩码anon_root=/var/ftp:匿名用户的FTP 根目录anon_upload_enable=YES:允许上传文件anon_mkdir_write_enable=YES:允许创建目录anon_other_write_enable=YES:开放其他写入权anon_max_rate=0:限制最大传输速率,单位为字节常用的本地用户FTP 配置项local_enable=YES:是否启用本地系统用户local_umask=022:本地用户所上传文件的权限掩码local_root=/var/ftp:设置本地用户的FTP 根目录chroot_local_user=YES:是否将用户禁锢在主目录local_max_rate=0:限制最大传输速率(字节/秒)限制本地用户登录1 只要存在于ftpusers 里的用户都是禁止登陆ftp 的2 userlist_enable=YES 启用user_list 文件限制用户登录userlist_dengy=YES/NO 拒绝/允许user_list 文件内的用户登录Echo wing >> user_listchroot_local_user=YES # 限制所有本地用户在家目录里另一种指定用户限制,非限制用户依旧可以畅通无阻chroot_local_user=NOchroot_list_enable=YESchroot_list_file=/etc/vsftpd/chroot_list 凡是名单中的人不允许离开HOME 目录建立黑名单文件.[root@mail vsftpd]# cat chroot_listwinguser1[root@mail vsftpd]#主被模式切换pasv_enableSet to NO if you want to disallow the PASV method of obtaining adata connection.Default: YES虚拟用户1.建立用户数据库# cat ftpuser.txttest111 # 账户pass111 # 密码test222pass222# rpm -qf $(which db_load)db4-utils-4.3.29-9.fc6## db_load -T -t hash -f ~/ftpuser.txt /etc/vsftpd/vsftpd_login.db2.建立验证模式文件# mv /etc/pam.d/vsftpd /etc/pam.d/vsftpd.bak# vi /etc/pam.d/vsftpdauth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_loginaccount required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login:wq3.建立一个所有虚拟用户使用的系统用户# useradd -d /home/vsftp virtual# chmod 755 /home/vsftp4.修改配置文件启用虚拟用户guest_enable=YES # 开启虚拟用户功能guest_username=virtual # 指定虚拟用户使用的系统用户pam_service_name=vsftpd # 以/etc/pam.d/验证模式文件名相同5.重新启动后可以用虚拟用户登陆了.为虚拟用户设置不同权限virtual_use_local_privs设置为YES 时,虚拟用户使用与本地用户相同权限,设置为NO 时,虚拟用户使用与匿名用户相同权限1.添加per_user 功能参数,如果开启了此功能,必须为每一个用户都有配置文件vi /etc/vsftpd/vsftpd.confuser_config_dir=/etc/vsftpd/vsftp_user_conf:wq2.在/etc/vsftpd/vsftp_user_conf 这个目录下建立与虚拟用户同名的文件,文件中写入用户的私有参数# echo "write_enable=NO" > /etc/vsftpd/vsftp_user_conf/test111我们限制test111 禁止上传文件3.重启动vsftpd 登录测试.主配置文件详解:负载控制:max_clients=numericalvalue此参数在VSFTPD使用单独(standalone)模式下有效。
此参数定义了FTP服务器最大的并发连接数,当超过此连接数时,服务器拒绝客户端连接。
默认值为0,表示不限最大连接数。
max_per_ip=numericalvalue此参数在VSFTPD使用单独(standalone)模式下有效。
此参数定义每个IP地址最大的并发连接数目。
超过这个数目将会拒绝连接。
此选项的设置将影响到象网际快车这类的多进程下载软件。
默认值为0,表示不限制。
anon_max_rate=value设定匿名用户的最大数据传输速度value,以Bytes/s为单位。
默认无。
local_max_rate=value设定用户的最大数据传输速度value,以Bytes/s为单位。
默认无。
此选项对所有的用户都生效。
此外,也可以在用户个人配置文件中使用此选项,以指定特定用户可获得的最大数据传输速率。
步骤如下:①在vsftpd.conf中指定用户个人配置文件所在的目录,如:user_config_dir=/etc/vsftpd/userconf②生成/etc/vsftpd/userconf目录。
③用户个人配置文件是在该目录下,与特定用户同名的文件,如:/etc/vsftpd/userconf/xiaowang④在用户的个人配置文件中设置local_max_rate参数,如:local_max_rate=80000以上步骤设定FTP用户xiaowang的最大数据传输速度为80KBytes/s。
VSFTPD对于速度控制的变化范围大概在80%到120%之间。
比如我们限制最高速度为100KBytes/s,但实际的速度可能在80KBytes/s到120KBytes/s之间。
当然,若是线路带宽不足时,速率自然会低于此限制。
-监听地址与控制端口:listen_address=192.168.1.11 监听本地网卡(如果有多个网卡的话),好处-稳定listen_port=2121ftp_data_port=2020 当connect_from_port_20=YES时,可以用来定义ftp传输数据的端口,默认值是20匿名用户anonymous_enable=YES|NO控制是否允许匿名用户登录,YES允许,NO不允许,默认值为YES。