ftp服务器端口配置文件linux主机名配置文件


###主配置文件(/etc/vsftpd/vsftpd.conf)严格来说,整个vsftpd的配置文件就只有这个档案!这个档案的设定是以bash的变量设定相同的方式来处理的,也就是`参数=设定值`来设定的,注意,等号两边不能有空白喔!至于详细的vsftpd.conf可以使用`man5vsftpd.conf`来详查。####与服务器环境较相关的设定值1.connect_from_port_20=YES(NO)ftp-data的端口号2.listen_port=21vsftpd使用的命令通道port,如果你想要使用非正规的端口号,这个设置。不过你必须要知道,这个设定值仅适合以standalone的方式来启动!(对于superdaemon无效)3.dirmessage_enable=YES(NO)当用户进入某个目录时,会显示该目录需要注意的内容,显示的档案默认是`.message`,你可以使用第四个设置来修改。4.message_file=.message当dirmessage_enable=YES时,可以修改这个设置来让vsftpd寻找该文件来显示消息!5.listen=YES(NO)若设置为YES表示vsftpd是以standalone的方式来启动的!预设是NO!所以我们的CentOS将它改为YES!这样才能使用standalone的方式来唤醒。6.pasv_enable=YES(NO)支持数据流的被动式联机模式(passivemode),一定要设定为YES!7.use_localtime=YES(NO)是否使用本地时间?vsftpd预设使用GMT时间(格林威治),所以预设的FTP的日期会比中国晚8小时,建议修改设定为YES!8.write_enable=YES(NO)如果你允许用户上传数据时,就要启动这个设定值9.connect_timeout=60单位是秒,在数据连接的主动式联机模式下,我们发出的连接讯号在60秒内得不到客户端的响应,则不等待并强制断线。ept_timeout=60当用户以被动式PASV来进行数据传输时,如果服务器启用passiveport并等待client超过60秒而无回应,那么就给他强制断线!这个设定值与connect_timeout类似,不过一个是管理主动联机,一个管理被动联机。11.data_connection_timeout=300如果服务器与客户端的数据联机已经成功建立(不论主动还是被动联机),但是可能由于线路问题导致300秒内还是无法顺利的完成数据的传送,那客户端的联机就会被我们的vsftpd强制剔除!12.idle_session_timeout=300如果使用者在300秒内都没有命令动作,强制脱机!13.max_clients=0如果vsftpd是以standalone方式启动的,那么这个设定项目可以设定同一时间,最多有多少client可以同时连上vsftpd!限制使用FTP的用量!14.max_per_ip=0与上面max_clients类似,这里是同一个IP同一时间可允许多少联机15.pasv_min_port=0,pasv_max_port=0上面两个是与passivemode使用的portnumber有关,如果你想要使用到这11个port来进行被动式联机模式的连接,可以这样设定pasv_max_port=以及pasv_min_port=。如果是0的话,表示随机取用而不限制。16.ftpd_banner=一些文字说明当使用者联机进入到vsftpd时,在FTP客户端软件上头会显示的说明文字。不过,这个设定值数据比较少啦!建议你可以使用底下的banner_file设定值来取代这个设置17.banner_file=/path/file这个设置可以指定某个纯文本档作为使用者登入vsftpd服务器时所显示的欢迎消息。同时,也能够放置一些让使用者知道本FTP服务器的目录架构!####与实体用户较相关的设定值1.guest_enable=YES(NO)若这个值设定为YES时,那么任何实体账号,均会被假设成为guest(所以预设是不开放的)!至于访客在vsftpd当中,预设会取得ftp这个使用者的相关权限。但可以通过guest_username来修改。2.guest_username=ftp在guest_enable=YES时才会生效,指定访客的身份。3.local_enable=YES(NO)这个设定值必须要为YES时,在/etc/passwd内的账号才能以实体用户的方式登入我们的vsftpd服务器!4.local_max_rate=0实体用户的传输速度限制,单位为bytes/second,0为不限制。5.chroot_local_user=YES(NO)在预设的情况下,是否要将使用者限制在自己的家目录之内(chroot),如果是YES代表用户默认就会被chroot,如果是NO,则预设是没有chroot。不过,实际还是需要底下的两个参数互相参考才行。为了安全性,这里应该要设定成YES才好。6.chroot_list_enable=YES(NO)是否启用chroot写入列表的功能?与下面的chroot_list_flie有关!这个项设置要开启,否则底下的列表文件会无效。7.chroot_list_file=/etc/vsftpd.chroot_list如果chroot_list_enable=YES那么就可以设定这个项目了!这个项目与chroot_local_user有关。8.userlist_enable=YES(NO)是否借助vsftpd的抵挡机制来处理某些不受欢迎的账号,与下面的参数设置有关9.userlist_deny=YES(NO)当userlist_enable=YES时才会生效的设定,若此设定值为YES时,则当使用者账号被列入到相应的文件时,在该文件内的使用者将无法登入vsftpd服务器!该文件名与下面设置有关。10.userlist_file=/etc/vsftpd/user_list若上面userlist_deny=YES时,则这个设置就有用处了!在这个文件内的账号都无法使用vsftpd!####匿名者登入的设定值1.anonymous_enable=YES(NO)设定为允许anonymous登入我们的vsftpd主机!预设是YES,下面的所有相关设置都需要将这个设置为anonymous_enable=YES之后才会生效!2.anon_world_readable_only=YES(NO)仅允许anonymous具有下载可读文件的权限,预设是YES。3.anon_other_write_enable=YES(NO)是否允许anonymous具有除了写入之外的权限?包括删除与改写服务器上的文件及文件名等权限。预设是NO!如果要设定为YES,那么开放给anonymous写入的目录亦需要调整权限,让vsftpd的PID拥有者可以写入才行!4.anon_mkdir_write_enable=YES(NO)是否让anonymous具有建立目录的权限?默认值是NO!如果要设定为YES,那么anony_other_write_enable必须设置为YES!5.anon_upload_enable=YES(NO)是否让anonymous具有上传数据的功能,默认是NO,如果要设定为YES,则anon_other_write_enable=YES必须设置。6.deny_email_enable=YES(NO)将某些特殊的emailaddress抵挡住,不让那些anonymous登入!如果以anonymous登入服务器时,不是会要求输入密码吗?密码不是要你输入你的emailaddress吗?如果你很讨厌某些emailaddress,就可以使用这个设定来将他取消登入的权限!需与下个设定项目配合7.banned_email_file=/etc/vsftpd/banned_emails如果deny_email_enable=YES时,可以利用这个设置来规定哪个emailaddress不可登入我们的vsftpd!在上面设置的文件内,一行输入一个emailaddress即可!8.no_anon_password=YES(NO)当设定为YES时,表示anonymous将会略过密码检验步骤,而直接进入vsftpd服务器内!所以一般预设都是NO的!(登入时会检查输入的emai)9.anon_max_rate=0这个设定值后面接的数值单位为bytes/秒,限制anonymous的传输速度,如果是0则不限制(由最大带宽所限制),如果你想让anonymous仅有30KB/s的速度,可以设定`anon_max_rate=`10.anon_umask=077限制anonymous上传文件的权限!如果是077则anonymous传送过来的文件权限会是-rw-------####关于系统安全方面的一些设定值1.ascii_download_enable=YES(NO)如果设定为YES,那么client就优先(预设)使用ASCII格式下载文件。2.ascii_upload_enable=YES(NO)与上一个设定类似的,只是这个设定针对上传而言!预设是NO3.one_process_model=YES(NO)这个设置比较危险一点,当设定为YES时,表示每个建立的联机都会拥有一个process在负责,可以增加vsftpd的效能。不过,除非你的系统比较安全,而且硬件配备比较高,否则容易耗尽系统资源喔!一般建议设定为NO!4.tcp_wrappers=YES(NO)当然我们都习惯支持TCPWrappers的!所以设定为YES!5.xferlog_enable=YES(NO)当设定为YES时,使用者上传与下载文件都会被纪录起来。记录的文件与下一个设置有关6.xferlog_file=/var/log/xferlog如果上一个xferlog_enable=YES的话,这里就可以设定了!这个是登录文件的文件名。7.xferlog_std_format=YES(NO)是否设定为wuftp相同的登录文件格式?预设为NO,因为登录文件会比较容易读!不过,如果你有使用wuftp登录文件的分析软件,这里才需要设定为YES!8.dual_log_enable=YES,vsftpd_log_file=/var/log/vsftpd.log除了/var/log/xferlog的wu-ftp格式登录文件之外,还可以具有vsftpd的独特登录文件格式喔!如果你的FTP服务器并不是很忙碌,或许订出两个登录文件的撰写(/var/log/{vsftpd.log,xferlog)是不错的。9.nopriv_user=nobody我们的vsftpd预设以nobody作为此一服务执行者的权限。因为nobody的权限相当的低,因此即使被入侵,入侵者仅能取得nobody的权限!10.pam_service_name=vsftpd这个是pam模块的名称,我们放置在/etc/pam.d/vsftpd即是这个!###vsftpd的主程序(/usr/sbin/vsftpd)###启动脚本(/etc/rc.d/init.d/vsftpd)###PAM认证文件(/etc/pam.d/vsftpd)这个是vsftpd使用PAM模块时的相关配置文件。主要用来作为身份认证之用,还有一些用户身份的抵挡功能,也是透过这个档案来达成的。此文件中file=/etc/vsftpd/ftpusers字段,指明阻止访问的用户来自/etc/vsftpd/ftpusers文件中的用户###黑名单(/etc/vsftpd/ftpusers)与上一个档案有关系,也就是PAM模块(/etc/pam.d/vsftpd)所指定的那个无法登入的用户配置文件啊!这个档案的设定很简单,你只要将不想让用户登入FTP的账号写入这个档案即可。一行一个账号。大部分的系统帐号都在这。禁止使用vsftpd的用户列表文件。记录不允许访问FTP服务器的用户名单,管理员可以把一些对系统安全有威胁的用户账号记录在此文件中,以免用户从FTP登录后获得大于上传下载操作的权利,而对系统造成损坏。(注意:linux-4中此文件在/etc/目录下)###白名单(/etc/vsftpd/user_list)这个档案是否能够生效与vsftpd.conf内的两个参数有关,分别是userlist_enable,userlist_deny。如果说/etc/vsftpd/ftpusers是PAM模块的抵挡设定项目,那么这个/etc/vsftpd/user_list则是vsftpd自定义的抵挡项目。事实上这个档案与/etc/vsftpd/ftpusers几乎一模一样,在预设的情况下,你可以将不希望可登入vsftpd的账号写入这里。不过这个档案的功能会依据vsftpd.conf配置文件内的userlist_deny={YES/NO}而不同。(注意:linux-4中此文件在/etc/目录下)###限制用的家目录(/etc/vsftpd/chroot_list)这个档案预设是不存在的,所以你必须要手动自行建立。这个档案的主要功能是可以将某些账号的使用者chroot在他们的家目录下!但这个档案要生效与vsftpd.conf内的`chroot_list_enable,chroot_list_file`两个参数有关。如果你想要将某些实体用户限制在他们的家目录下而不许到其他目录去,可以启动这个设定!###匿名用户主目录(/var/ftp)其实与ftp这个账号的家目录有关本地用户主目录为:/home/用户主目录,即登录后进入自己家目录###(匿名用户的下载目录)/var/ftp/pub此目录需赋权根chmodpub(1为特殊权限,使上载后无法删除)###日志文件(/etc/logrotate.d/vsftpd.log)