记录centos通过yum安装ftp。

  1. 安装软件包

    yum install vsftpd
    yum install db4-utils
    
  2. 新建user目录

    mkdir /etc/vsftpd/user_conf
    
  3. 修改配置文件

    vi  /etc/vsftpd/vsftpd.conf         
    
    local_enable=YES                              #  本地是否可
    write_enable=YES                              #  本地是否可写
    local_umask=022                               #  umask 码
    dirmessage_enable=YES                   #  是否显示信息
    xferlog_enable=YES                           #  开启log日志
    connect_from_port_20=YES               #  20端口转数据
    pasv_enable=yes                                #  开启被动模式
    pasv_max_port=5010                          #  最大端口号
    pasv_min_port=5000                           #  最小端口号
    xferlog_file=/var/log/vsftpd.log             #  log路径
    xferlog_std_format=YES                      #  log格式
    #idle_session_timeout=600
    #data_connection_timeout=120
    chroot_local_user=YES             
    chroot_list_enable=YES
    chroot_list_file=/etc/vsftpd/chroot_list
    listen=YES                                          # 是否可使用独立模式
    pam_service_name=vsftpd                 # 认证方式
    userlist_enable=NO                            # 是否可以使用ls
    tcp_wrappers=YES                             # 是否支持tcp_wrappers 
    anon_umask=022                
    guest_enable=YES                             # 开启虚拟用户
    guest_username=apache                   # 虚拟用户映射的本地账户
    user_config_dir=/etc/vsftpd/user        # 虚拟用户配置目录
    

新建用户名

cd  /etc/vsftpd/user
vi  demo                  # 这个对应是用户名

添加配置

local_root=/var/www/html                # web网站的目录
write_enable=YES                          # 给ftp写权限
anon_world_readable_only=no      # 其它用户不可读
anon_upload_enable=YES             # 设置可以上传
anon_other_write_enable=yes       # 可写
anon_mkdir_write_enable=yes       # 可新建目录
anon_umask=000                           # umask 码

新建ftp用户

vi /etc/vsftpd/ftp
demo   #用户名
demo   #密码

把ftp文件转换成数据库文件vuser.db

db_load -T -t hash -f /etc/vsftd/ftp /etc/vsftpd/vuser.db    #生成应的用户名和密码 
vi /etc/pam.d/vsftpd

添加配置文件

auth        required    /lib/security/pam_userdb.so    db=/etc/vsftpd/vuser
account   required    /lib/security/pam_userdb.so    db=/etc/vsftpd/vuser
其余配置文件全部注释掉,前面加 “ # ”

启动ftp

/etc/init.d/vsftpd  stop         停止
/etc/init.d/vsftpd  start        启动
/etc/init.d/vsftpd  restart      重启