zoukankan      html  css  js  c++  java
  • FTP

    1、安装vsftpd和依赖
    yum install vsftpd pam pam-devel db4 db4-devel db4-utils db4-tcl -y
    
    2、备份并且配置vsftpd.conf
    cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
    
    3、配置
    cat > /etc/vsftpd/vsftpd.conf << EOF
    anonymous_enable=NO
    local_enable=YES
    write_enable=YES
    local_umask=022
    dirmessage_enable=YES
    connect_from_port_20=YES
    
    xferlog_enable=YES
    xferlog_std_format=YES
    xferlog_file=/var/log/xferlog
    dual_log_enable=YES
    vsftpd_log_file=/var/log/vsftpd.log
    
    ascii_upload_enable=YES
    ascii_download_enable=YES
    listen=YES
    pam_service_name=vsftpd
    userlist_enable=YES
    tcp_wrappers=YES
    
    chroot_local_user=YES
    chroot_list_enable=YES
    allow_writeable_chroot=YES
    chroot_list_file=/etc/vsftpd/vsftpd.chroot_list
    
    guest_enable=YES
    guest_username=ftp
    virtual_use_local_privs=YES
    user_config_dir=/etc/vsftpd/vconf
    EOF
    
    4、创建虚拟用户配置文件存放的目录,这个目录是vsftpd.conf配置文件中的参数user_config_dir=/etc/vsftpd/vconf定义的
    user_config_dir=/etc/vsftpd/vconf定义的
    mkdir -p /etc/vsftpd/vconf
    
    5、创建保存 虚拟用户 的文件
    touch /etc/vsftpd/vusers
    
    6、在保存虚拟用户的文件中建立测试用户
    echo "mm" >> /etc/vsftpd/vusers
    echo "123" >> /etc/vsftpd/vusers
    
    7、生成虚拟用户数据库加密文件
    db_load -T -t hash -f /etc/vsftpd/vusers /etc/vsftpd/vusers.db
    
    8、备份vsftpd的pam认证文件"/etc/pam.d/vsftpd"
    cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd.bak
    
    9、修改vsftpd的pam认证文件"/etc/pam.d/vsftpd"
    # 首先删除/etc/pam.d/vsftpd的所有内容,然后添加以下内容到这个文件中
    cat >/etc/pam.d/vsftpd <<EOF
    auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vusers
    account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vusers
    EOF
    
    10、创建虚拟用户的配置文件
    # 每个虚拟用户的配置文件可以不同,
    # 每个虚拟用户的配置文件是个独立的文件,
    # 配置文件新建到vsftpd.conf的配置文件中的参数user_config_dir=/etc/vsftpd/vconf定义的目录中,这个目录在第3步已经创建
    # 各个虚拟用户的配置文件名称,必须设置得和虚拟用户数据库中的虚拟用户名相同,
    # 例:在虚拟用户的数据库文件中定义了user1这个用户,那么在/etc/vsftpd/vconf/这个目录中,就必须定义1个user1这个用户配置文件的格式
    cat > /etc/vsftpd/vconf/test <<EOF
    local_root=/srv/vsftp/test
    anonymous_enable=NO
    write_enable=YES
    local_umask=022
    anon_upload_enable=NO
    anon_mkdir_write_enable=NO
    idle_session_timeout=600
    data_connection_timeout=120
    max_clients=10
    max_per_ip=5
    EOF
    
    11、创建虚拟用户的ftp上传目录 ,这个目录是由第9步的配置文件中的参数 local_root=/srv/vsftp/test定义的,参考示例配置
    mkdir -p /srv/vsftp/test
    
    12、修改虚拟用户的ftp上传目录权限, 这个用户是由vsftpd.conf配置文件的参数 guest_username=ftp 定义的
    chown -R ftp.root /srv/vsftp/test
    
    13、创建文件vsftpd.conf配置文件
    # 创建文件vsftpd.conf配置文件中参数 chroot_list_file=/etc/vsftpd/vsftpd.chroot_list 定义的文件,这个参数和chroot_local_user=YES,chroot_list_enable=YES这2个参数配合使用,表示如果在chroot_list_file参数中未定义任何用户,就没有任何用户能切换到ftp的上级目录
    touch /etc/vsftpd/vsftpd.chroot_list
    
    14、启动vsfrpd
    systemctl enable --now vsftpd 
    
    # 默认文件  /var/fsp/pub  #或者 /srv/vsftp/test
    #访问:ftp://172.16.1.31
    
  • 相关阅读:
    c++类中比较重要的几个函数
    rosbag使用方法
    2.urllib库的使用
    什么叫做API?
    1.爬虫基础
    正则表达式

    time模块
    random模块
    日志处理
  • 原文地址:https://www.cnblogs.com/caodan01/p/14824636.html
Copyright © 2011-2022 走看看