`
loamy
  • 浏览: 321386 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

vsftpd配置文件

阅读更多

vsftpd配置文件采用“#”作为注释符,以“#”开头的行和空白行在解析时将被忽略,其余的行被视为配置命令行,每个配置命令的“=”两边不要留有空格。对于每个配置命令,在配置文件中还列出了相关的配置说明,利用vi编辑器可实现对配置文件的编辑修改。方法如下:
     #vi /etc/vsftpd/vsftpd.conf

1.登录和对匿名用户的设置
write_enable=yes               //是否对登录用户开启写权限。属全局性设置。默认no
local_enable=yes               //是否允许本地用户登录ftp服务器。默认为no
anonymous_enable=yes          //设置是否允许匿名用户登录ftp服务器。默认为yes
ftp_username=ftp                //定义匿名用户的账户名称,默认值为ftp。
no_anon_password=yes             //匿名用户登录时是否询问口令。设置为yes,则不询问。默 
认no
anon_world_readable_only=yes   //匿名用户是否允许下载可阅读的文档,默认为yes。
   anon_upload_enable=yes      //是否允许匿名用户上传文件。只有在write_enable设置为
  yes时,该配置项才有效。而且匿名用户对相应的目录必须有写权限。默认为no。
anon_mkdir_write_enable=yes  //是否允许匿名用户创建目录。只有在write_enable设置为    yes时有效。且匿名用户对上层目录有写入的权限。默认为no。
anon_other_write_enable=no    //若设置为yes,则匿名用户会被允许拥有多于
上传和建立目录的权限,还会拥有删除和更名权限。默认值为no。 

2.设置欢迎信息
用户登录ftp服务器成功后,服务器可向登录用户输出预设置的欢迎信息。
ftpd_banner=welcome to my ftp server.  
//该配置项用于设置比较简短的欢迎信息。若欢迎信息较多,则可使用banner_file配置项。
banner_file=/etc/vsftpd/banner     
//设置用户登录时,将要显示输出的文件。该设置项将覆盖ftpd_banner的设置。
dirmessage_enable=yes         
//设置是否显示目录消息。若设置为yes,则当用户进入特定目录(比如/var/ftp/linux)时,将显示该目录中的由message_file配置项指定的文件(.message)中的内容。
message_file=.message          //设置目录消息文件。可将显示信息存入该文件。该文件需要放在 相应的目录(比如/var/ftp/linux)下

3.设置用户登录后所在的目录
local_root=/var/ftp             
// 设置本地用户登录后所在的目录。默认配置文件中没有设置该项,此时用户登录ftp服务器后,所在的目录为该用户的主目录,对于root用户,则为/root目录。
anon_root=/var/ftp            
//设置匿名用户登录后所在的目录。若未指定,则默认为/var/ftp目录。 

4.控制用户是否允许切换到上级目录
       在默认配置下,用户可以使用“cd..”命名切换到上级目录。比如,若用户登录后所在的目录为/var/ftp,则在“ftp>”命令行下,执行“cd..”命令后,用户将切换到其上级目录/var,若继续执行该命令,则可进入linux系统的根目录,从而可以对整个linux的文件系统进行操作。 

若设置了write_enable=yes,则用户还可对根目录下的文件进行改写操作,会给系统带来极大的安全隐患,因此,必须防止用户切换到linux的根目录,相关的配置项如下:
chroot_list_enable=yes                    
// 设置是否启用chroot_list_file配置项指定的用户列表文件。设置为yes则除了列在j/etc/vsftpd/chroot_list文件中的的帐号外,所有登录的用户都可以进入ftp根目录之外的目录。默认no
chroot_list_file=/etc/vsftpd/chroot_list         
// 用于指定用户列表文件,该文件用于控制哪些用户可以切换到ftp站点根目录的上级目录。
chroot_local_user=yes                    
// 用于指定用户列表文件中的用户,是否允许切换到上级目录。默认no
注意:要对本地用户查看效果,需先设置local_root=/var/ftp

具体情况有以下几种:
1)当chroot_list_enable=yes,chroot_local_user=yes时,在/etc/vsftpd/chroot_list文件中列出的用户,可以切换到上级目录;未在文件中列出的用户,不能切换到站点根目录的上级目录。
2)当chroot_list_enable=yes,chroot_local_user=no时,在/etc/vsftpd/chroot_list文件中列出的用户,不能切换到站点根目录的上级目录;未在文件中列出的用户,可以切换到上级目录。
3)当chroot_list_enable=no,chroot_local_user=yes时,所有用户均不能切换到上级目录。
4)当chroot_list_enable=no,chroot_local_user=no时,所有用户均可以切换到上级目录。
5)当用户不允许切换到上级目录时,登录后ftp站点的根目录“/”是该ftp账户的主目录,即文件的系统的/var/ftp目录。 

5.设置访问控制
(1)设置允许或不允许访问的主机(见tbp14)
tcp_wrappers=yes用来设置vsftpd服务器是否与tcp wrapper相结合,进行主机的访问控制。默认设置为yes,vsftpd服务器会检查/etc/hosts.allow和/etc/hosts.deny中的设置,以决定请求连接的主机是否允许访问该ftp服务器。这两个文件可以起到简易的防火墙功能。
比如,若要仅允许192.168.168.1~192.168.168.254的用户,可以访问连接vsftpd服务器,则可在/etc/hosts.allow文件中添加以下内容:
vsftpd:192.168.168.0/255.255.255.0 :allow
all:all:deny

(2)设置允许或不允许访问的用户
对用户的访问控制由/etc/vsftpd/user_list和/etc/vsftpd/ftpusers文件来控制实现。相关配置命令如下:
userlist_enable=yes     
// 决定/etc/vsftpd/user_list文件是否启用生效。yes则生效,no不生效。
userlist_deny=yes       
// 决定/etc/vsftpd/user_list文件中的用户是允许访问还是不允许访问。若设置为yes,则/etc/vsftpd/user_list文件中的用户将不允许访问ftp服务器;若设置为no,则只有vsftpd.user_list文件中的用户,才能访问ftp服务器。 

6.设置访问速度 
anon_max_rate=0       
//设置匿名用户所能使用的最大传输速度,单位为b/s。若设置为0,则不受速度限制,此为默认值。
local_max_rate=0       
// 设置本地用户所能使用的最大传输速度。默认为0,不受限制。

7.定义用户配置文件
 在vsftpd服务器中,不同用户还可使用不同的配置,这要通过用户配置文件来实现。
 user_config_dir=/etc/vsftpd/userconf  //用于设置用户配置文件所在的目录。
 设置了该配置项后,当用户登录ftp服务器时,系统就会到/etc/vsftpd/userconf目录下读取与当前用户名相同的文件,并根据文件中的配置命令,对当前用户进行更进一步的配置。比如,利用用户配置文件,可实现对不同用户进行访问的速度进行控制,在各用户配置文件中,定义local_max_rate配置,以决定该用户允许的访问速度。 

8.与连接相关的设置
listen=yes        
//设置vsftpd服务器是否以standalone模式运行。以standalone模式运行是一种较好的方式,此时listen必须设置为yes,此为默认值,建议不要更改。很多与服务器运行相关的配置命令,需要此运行模式才有效。若设置为no,则vsftpd不是以独立的服务运行,要受xinetd服务的管理控制,功能上会受限制。

max_clients=0
//设置vsftpd允许的最大连接数,默认为0,表示不受限制。若设置为150时,则同时允许有150个连接,超出的将拒绝建立连接。只有在以standalone模式运行时才有效。

max_per_ip=0
// 设置每个ip地址允许与ftp服务器同时建立连接的数目。默认为0,不受限制。通常可对此配置进行设置,防止同一个用户建立太多的连接。只有在以standalone模式运行时才有效。

listen_address=ip地址        
//设置在指定的ip地址上侦听用户的ftp请求。若不设置,则对服务器所绑定的所有ip地址进行侦听。只有在以standalone模式运行时才有效。对于只绑定了一个ip地址的服务器,不需要配置该项,默认情况下,配置文件中没有该配置项。若服务器同时绑定了多个ip地址,则应通过该配置项,指定在哪个ip地址上提供ftp服务,即指定ftp服务器所使用的ip地址。
注意:设置此值前后,可以通过netstat -tnl对比端口的监听情况

accept_timeout=60            
//设置建立被动(pasv)数据连接的超时时间,单位为秒,默认值为60。
connect_timeout=60    
// port方式下建立数据连接的超时时间,单位为秒。
data_connection_timeout=300   
//设置建立ftp数据连接的超时时间,默认为300秒。

idle_session_timeout=600      
//设置多长时间不对ftp服务器进行任何操作,则断开该ftp连接,单位为秒,默认为600秒。即设置发呆的逾时时间,在这个时间内,若没有数据传送或指令的输入,则会强行断开连接。
pam_service_name=vsftpd     
//设置在pam所使用的名称,默认值为vsftpd。 

setproctitle_enable=no|yes   
//设置每个与ftp服务器的连接,是否以不同的进程表现出来,默认值为no,此时只有一个名为vsftpd的进程。若设置为yes,则每个连接都会有一个vsftpd进程,使用“ps -ef|grep ftp”命令可查看到详细的ftp连接信息。安全起见,建议关闭。

9.ftp工作方式与端口设置
(1)ftp工作方式简介
      ftp的工作方式有两种,一种是port ftp,另一种是pasv ftp。下面介绍其工作方式。
 二者的区别在于port ftp的数据传输端口是由ftp服务器指定的,而pasv ftp则是由ftp客户端指定的,而且每次数据连接所使用的端口号都不同。正因为如此,所以在cuteftp等ftp客户端软件中,其连接类型设置项中有port和pasv两种选择。 

      当ftp服务器设置为pasv工作模式时,客户端也必须设置为pasv连接类型。若客户端连接类型设置为port,则能建立ftp连接,但在执行ls或get等需要数据请求的命令时,将会出现无响应并最终报告无法建立数据连接。

(2)与端口相关的配置
listen_port=21               
// 设置ftp服务器建立连接所侦听的端口,默认值为21。
连接非标准端口示例:ftp www.sunflower.org 7000
connect_from_port_20=yes   
// 默认值为yes,指定ftp数据传输连接使用20端口。若设置为no,则进行数据连接时,所使用的端口由ftp_data_port指定。 

ftp_data_port=20            
//设置port方式下ftp数据连接所使用的端口,默认值为20。
pasv_enable=yes|no        
//若设置为yes,则使用pasv工作模式;若设置为no,使用port模式。默认为yes,即使用pasv模式。
pasv_max_port=0            
//设置在pasv工作方式下,数据连接可以使用的端口范围的上界。默认值为0,表示任意端口。
pasv_mim_port=0            
//设置在pasv工作方式下,数据连接可以使用的端口范围的下界。默认值为0,表示任意端口。 

10.设置传输模式
ftp在传输数据时,可使用二进制(binary)方式,也可使用ascii模式来上传或下载数据。
ascii_download_enable=yes  //设置是否启用ascii模式下载数据。默认为no。
ascii_upload_enable=yes    //设置是否启用ascii模式上传数据。默认为no。 

11.设置上传文档的所属关系和权限
(1)设置匿名上传文档的属主
chown_uploads=yes           
//用于设置是否改变匿名用户上传的文档的属主。默认为no。若设置为yes,则匿名用户上传的文档的属主将被设置为chown_username配置项所设置的用户名。
chown_username=whoever     
//设置匿名用户上传的文档的属主名。只有chown_uploads=yes时才有效。建议不要设置为root用户。 但系统默root

(2)新增文档的权限设定
local_umask=022            
//设置本地用户新增文档的umask,默认为022,对应的权限为755。umask为022,对应的二进制数为000 010 010,将其取反为111 101 101,转换成十进制数,即为权限值755,代表文档的所有者(属主)有读写执行权,所属组有读和执行权,其他用户有读和执行权。022适合于大多数情况,一般不需要更改。若设置为077,则对应的权限为700。
anon_umask=022               //设置匿名用户新增文档的umask。默认077
file_open_mode=0755          //设置上传文档的权限。权限采用数字格式。 默认0666

12.日志文件
xferlog_enable=yes             //是否启用上传/下载日志记录。默认为no
xferlog_file=var/log/vsftpd.log  //设置日志文件名及路径。需启用xferlog_enable选项
xferlog_std_format=yes           //日志文件是否使用标准的xferlog日志文件格式(与wu-ftpd使用的格式相同) 。默认为no

13.其他设置
text_userdb_names=no       
//设置在执行ls命令时,是显示uid、gid还是显示出具体的用户名或组名称。默认为no,以uid和gid方式显示,若希望显示用户名和组名称,则设置为yes。
ls_recurse_enable=yes       
//若设置为yes,则允许执行“ls –r”这个命令,默认值为no。在配置文件中该配置项被注释掉了,与此类似的还有一些配置,需要启用时,将注释符去掉并进行yes或no的设置即可。

分享到:
评论

相关推荐

    vsftpd配置文件详解 

    ### vsftpd配置文件详解 #### 一、概述 VSFTPD (Very Secure FTP Daemon) 是一款免费开源的FTP服务程序,在Linux系统中广泛使用。它不仅提供了强大的安全性,还支持多种认证方式以及灵活的配置选项。对于Ubuntu...

    Vsftpd配置文件相关[参考].pdf

    《Vsftpd配置文件详解与应用》 Vsftpd(Very Secure FTP Daemon)是一款流行的FTP服务器软件,尤其在Linux系统中被广泛使用。其配置文件`/etc/vsftpd/vsftpd.conf`是控制Vsftpd行为的核心,通过调整配置参数,我们...

    Ubuntu系统下vsftpd配置文件

    Ubuntu系统下vsftpd配置文件

    vsftpd配置文件详解.doc

    vssftp配置文件详解,包含vsftpd所有配置文件路径和用途说明。

    vsftpd 配置文件

    根据提供的vsftpd配置文件内容,我们可以详细地分析并解读其中的关键配置项,这对于理解vsftpd的工作原理及其配置非常重要。 ### 1. 基本配置 #### Anonymous_enable=yes 此选项设置为`yes`表示允许匿名用户访问...

    最全面的vsftpd配置文件详解

    最详细的vsftpd配置文件,分享给大家。 注意: 使用匿名登入时,所登入的目录。默认值为/var/ftp。注意ftp目录不能是777的权限属性,即匿名用户的家目录不能有777的权限。 对于用户的访问控制可以通过/etc/vsftpd...

    vsftpd配置文件详解

    以上是对vsftpd配置文件中关键设置的详细解析,通过对这些选项的理解和应用,可以达到对FTP服务器行为的精确控制,保证了服务器的安全运行。在实际使用中,还需要根据具体需求对这些设置进行相应的调整和配置。

    vsftpd基本配置文件详解

    本文将详细解析其基本配置文件 `/etc/vsftpd/vsftpd.conf`,以帮助用户理解如何设置和管理FTP服务。 1. **匿名服务器连接配置**: - `Anonymous_enable=yes`: 允许匿名用户登录FTP服务器。 - `Dirmessage_enable=...

    史上最详细的vsftpd配置文件详解

    vsftpd作为一个主打安全的FTP服务器,有很多的选项设置。下面介绍了vsftpd的配置文件列表,而所有的配置都是基于vsftpd.conf这个配置文件的。本文将提供完整的vsftpd.conf的中文说明

    vsftpd的配置文件和配置说明文档

    vsftpd配置文件** 在Linux系统中,vsftpd的主要配置文件通常位于 `/etc/vsftpd.conf`。这是一个文本文件,包含了控制vsftpd行为的各种选项。通过修改这些选项,你可以定制FTP服务器的行为以满足特定需求。例如,你...

    vsftpd配置详解.docx

    七、VSFTPD配置文件详解 VSFTPD的配置文件为/etc/vsftpd/vsftpd.conf,该文件中包括了许多选项设置,可以根据需要进行配置。 主要配置文件: * /etc/vsftpd/vsftpd.conf:主配置文件 * /usr/sbin/vsftpd:主程序 ...

    vsftpd配置详解.pdf

    3. 编辑配置文件:使用命令 `$sudo gedit /etc/vsftpd.conf` 编辑 VSFTPD 的配置文件。 4. 启动 VSFTPD:使用命令 `$sudo /etc/init.d/vsftpd start` 启动 VSFTPD 服务。 二、VSFTPD 配置文件详解 VSFTPD 的配置...

    Linuxvsftpd的配置.pdf

    * `/etc/vsftpd/vsftpd.conf`:主配置文件 * `/etc/ftpusers`:该文件中的用户不允许访问 FTP * `/etc/vsftpd/user_list`:视主配置文件中的 `user_deny` 而定,若为 YES(默认),则拒绝访问,设为 NO 则允许访问。...

    vsftpd.conf配置大全

    本文档旨在介绍 vsftpd 配置文件的详细内容,帮助读者深入理解 vsftpd 的配置选项。vsftpd 是一个功能强大且流行的 FTP 服务器软件,广泛应用于 Linux 和 Unix 系统中。了解 vsftpd 配置文件的内容对于设置和优化 ...

    Ubuntu下vsftpd的配置与使用.pdf

    接下来,需要编辑 vsftpd 的配置文件/etc/vsftpd.conf,使用以下命令打开配置文件: $sudo gedit /etc/vsftpd.conf 在配置文件中,需要将 local_enable=YES 前的 # 去掉,使其可用,表示允许本地用户登录;将 ...

    vsftpd详细配置解读

    ### vsftpd详细配置解读 #### 一、概述 VSFTPD (Very Secure FTP ...以上配置仅为VSFTPD配置文件的一部分,实际应用中还需根据具体需求调整其他选项。通过这些详细的配置,VSFTPD 能够为用户提供安全可靠的FTP服务。

Global site tag (gtag.js) - Google Analytics