Linux网络文件共享服务之FTP(4)

  vsftpd由vsftpd包提供,默认不再由xinetd管理,当然我们是可以配置成非独立服务的,让它由xinetd服务带管。用户认证配置文件:/etc/pam.d/vsftpd,服务脚本:centos7上是/usr/lib/systemd/system/vsftpd.service,centos6上是/etc/rc.d/init.d/vsftpd;服务主配置文件是:/etc/vsftpd/vsftpd.conf

  其中/etc/vsftpd/vsftpd.conf 可以通过man 5 vsftpd.conf 来查看配置文件帮助,它里面的格式是选项=value的格式,等号前后不能有多余的空格,否则服务将无法正常启动。匿名用户(映射为系统用户ftp)共享文件位置上:/var/ftp,这个目录就是默认ftp的共享目录;系统用户共享文件位置就是用户的家目录;虚拟用户共享文件位置:为其映射到系统用户家目录

  五、vsftpd服务配置

  命令端口的配置:命令端口的指定有listen_port=xx来指定,不写在配置文件中表示使用默认的命令端口21

  主动模式端口:connet_from_port_20=YES 表示主动模式端口为20;ftp_data_port=xx表示指定主动模式的端口,默认是20

  被动端口范围:Linux客户端默认使用被动模式,Windows客户端默认使用主动模式;pasv_min_port=xxx;pasv_max_port=xxx通过这两条选项来指定ftp最小连接端口和最大的连接端口,这样配置后,数据端口就只能使用在指定这个范围内的端口。其中0表示随机分配端口

  使用当地时间:use_localtime=YES默认的配置上NO,使用GMT

  关于匿名用户的配置:

    anonymous_enable=YES 支持匿名用户
    no_anon_password=YES(默认NO) 匿名用户略过口令检查
    anon_world_readable_only (默认YES)只能下载全部读的文件
    anon_upload_enable=YES 匿名上传,注意:文件系统权限
    anon_mkdir_write_enable=YES 匿名建目录
    anon_umask=0333 指定匿名上传文件的umask,默认077
    anon_other_write_enable=YES 可删除和修改上传的文件
    指定上传文件的默认的所有者和权限
    chown_uploads=YES(默认NO)
    chown_username=wang
    chown_upload_mode=0644

  关于Linux系统用户的配置

    local_enable=YES 是否允许linux用户登录
    write_enable=YES 允许linux用户上传文件
    local_umask=022 指定系统用户上传文件的默认权限
    guest_enable=YES 所有系统用户都映射成guest用户
    guest_username=ftp 配合上面选项才生效,指定guest用户
    local_root=/ftproot guest用户登录所在目录

  这里需要说一下,映射成guest用户后,用户登录所指定的目录,不能有guest所指定的用户有可写的权限,否则用户无法登陆。也就是说ftp的根目录是不能有当前用户的写权限的。

  禁锢所有系统用户在家目录中

    chroot_local_user=YES(默认NO,不禁锢)禁锢系统用户

    chroot_list_enable=YES开启禁锢列表   

    chroot_list_file=/etc/vsftpd/chroot_list禁锢或不禁锢用户的名单文件,当chroot_local_user=YES时,则chroot_list中的用户不禁锢(白名单),当chroot_local_user=NO时,chroot_list中的用户禁锢(黑名单) 

  wu-ftp日志:默认启用
    xferlog_enable=YES (默认) 启用记录上传下载日志
    xferlog_std_format=YES (默认) 使用wu-ftp日志格式
    xferlog_file=/var/log/xferlog (默认)可自动生成 

  vsftpd日志:默认不启用
    dual_log_enable=YES 使用vsftpd日志格式,默认不启用
    vsftpd_log_file=/var/log/vsftpd.log(默认)可自动生成

  登录提示信息

    ftpd_banner=“welcome to mage ftp server"
    banner_file=/etc/vsftpd/ftpbanner.txt 优先上面项生效

  目录访问提示信息

    dirmessage_enable=YES (默认)
    message_file=.message(默认) 信息存放在指定目录下.message

  使用pam(Pluggable Authentication Modules)完成用户认证

    pam_service_name=vsftpd

      pam配置文件:/etc/pam.d/vsftpd
      /etc/vsftpd/ftpusers 默认文件中用户拒绝登录,当然具体这里面的用户数拒绝还是允许需要看/etc/pam.d/vsftpd 是怎么定义的了

[root@test ~]#cat /etc/pam.d/vsftpd

#%PAM-1.0

session    optional    pam_keyinit.so    force revoke

auth      required    pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed

auth      required    pam_shells.so

auth      include      password-auth

account    include      password-auth

session    required    pam_loginuid.so

session    include      password-auth

[root@test ~]#

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/d3aafc88903af1066b1781de2c01910b.html