zoukankan      html  css  js  c++  java
  • Linux Centos7配置ftp服务器

    一.安装

    1.安装

    yum install  -y vsftpd

    2.设置开机启动

    systemctl enable vsftpd.service

    3.启动

    systemctl start vsftpd.service

    4.停止

    systemctl stop vsftpd.service

    5.查看状态

    systemctl status vsftpd.service

    二.配置

    1.打开配置文件

    vim /etc/vsftpd/vsftpd.conf

    2.显示行号

    :set number

    3.设置

    # 取消匿名用户登录

    anonymous_enable=NO

    local_enable=YES
    write_enable=YES

    local_umask=022

    dirmessage_enable=YES
    xferlog_enable=YES
    connect_from_port_20=YES
    xferlog_std_format=YES

    # chroot_local_user 不使用本地用户    chroot_list_enable:启用chroot自定义用户 ,chroot_list_file:自定义配置用户文件位置
    chroot_local_user=NO
    chroot_list_enable=YES
    chroot_list_file=/etc/vsftpd/chroot_list

    # ip6 注掉  listen 开启
    listen=YES


    pam_service_name=vsftpd

    userlist_enable=YES

    tcp_wrappers=YES

    #### new config 自己新增

    # 配置用户指定访问目录
    user_config_dir=/etc/vsftpd/userconfig

    # 允许chroot的用户 写操作
    allow_writeable_chroot=YES

    # 配置ftp访问根目录   -----此目录配置所有用户共享 高于 上面的 user_config_dir 用户配置目录
    local_root=/home/ftpuser

    4.其他配置  按需设置 网上查找

    use_localtime=YES
    listen_port=21
    idle_session_timeout=300
    guest_enable=YES
    guest_username=vsftpd
    user_config_dir=/etc/vsftpd/vconf
    data_connection_timeout=1
    virtual_use_local_privs=YES
    pasv_min_port=40000
    pasv_max_port=40010
    accept_timeout=5
    connect_timeout=1
    allow_writeable_chroot=YES

    三.不同用户配置不同的根目录

    新建用户:)

    1.cd /etc/vsftpd/

    2.mkdir userconfig

    3.cd userconfig/

    4.在userconfig目录下 不同用户配置不同的根目录,按用户名新建文件: 

    用户 root  , admin

    vim root

    local_root=/home/ftpuser/root/

    vim admin

    local_root=/home/ftpuser/admin/

    四.创建ftp用户访问目录

    cd /home

    mkdir ftpuser

    cd ftpuser

    mkdir test1

    mkdir test2

    五.防火墙设置

    1.新增21端口配置

    vim /etc/sysconfig/iptables

    -A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT

    2.firewall-cmd --zone=public --add-service=ftp --permanent

    3.firewall-cmd --zone=public --add-port=21/tcp --permanent

    4.firewall-cmd --reload

    六.还是无法上传新建删除文件时,设置权限

    1.getsebool -a | grep  ftp

    getsebool,列出所有selinux bool数值清单列表与内容。

    2.   setsebool allow_ftpd_anon_write  1    

          setsebool allow_ftpd_full_access  1

    要结果为这样

    allow_ftpd_anon_write --> on
    allow_ftpd_full_access --> off

    最后所有设置 都要  systemctl restart vsftpd

     
  • 相关阅读:
    团队开发项目客户端——游戏子系统的设计(上)
    团队开发项目客户端——注册子系统的设计
    团队项目开发客户端——登录子系统的设计
    协程库
    Linux下用命令查看CPU ID以及厂家等信息
    c++中字符串的截取:
    C++ STL 的各结构实现
    关于mysql查询最近一条记录
    BerkeleyDB原理及其对应API
    高性能服务器设计(Jeff Darcy's notes on high-performance server design
  • 原文地址:https://www.cnblogs.com/qffxj/p/11568663.html
Copyright © 2011-2022 走看看