精华内容
下载资源
问答
  • Centos7 安装 vsftpd

    2021-09-10 14:38:29
    Centos7 安装 vsftpd 简介: vsftpd(very secure FTP daemon,意为非常安全的FTP守护进程),是一个类Unix系统以及Linux上的FTP服务器软件。它是Ubuntu、CentOS、Fedora、NimbleX、Slackware和Red Hat Enterprise ...

    Centos7 安装 vsftpd

    简介: vsftpd(very secure FTP daemon,意为非常安全的FTP守护进程),是一个类Unix系统以及Linux上的FTP服务器软件。它是UbuntuCentOSFedora、NimbleX、SlackwareRed Hat Enterprise LinuxLinux发行版的默认FTP服务器软件。它采用GNU通用公共许可证授权,并支持IPv6TLSFTPS

    1. 安装vsftpd

    注意:

    先查询系统中是否已经安装过其他FTP服务

    [root@localhost ~]# rpm -qa|grep ftp
    vsftpd-3.0.2-29.el7_9.x86_64
    [root@localhost ~]# 
    

    如上面显示系统已经安装vsftpd, 先进行卸载

    [root@localhost ~]# rpm -e --nodeps vsftpd-3.0.2-29.el7_9.x86_64
    warning: /etc/vsftpd/vsftpd.conf saved as /etc/vsftpd/vsftpd.conf.rpmsave # 系统自动备份配置
    warning: /etc/pam.d/vsftpd saved as /etc/pam.d/vsftpd.rpmsave # 系统自动备份配置
    

    开始安装:

    ​ 不加-y参数会在找到安装包之后, 询问Is this OK[y/d/N], 需要手动选择. 加上-y之后, 会自动选择y, 不需要再手动选择

    yum -y install vsftpd
    

    2. 创建虚拟用户配置

    为了将vsftpd的用户权限管理和操作系统权限管理分开, 本次教程使用vsftpd的虚拟用户功能

    新建一个配置文件/etc/vsftpd/vftpusers, 可以是任意路径, 记住这个路径在下面的生成数据库认证文件文件时需要用到.

    在文件中配置配置FTP用户名和密码, 其中奇数行是用户名, 偶数行是密码, 对应的是上一行行的用户名, 如下:

    这里定义了2个虚拟用户

    • ftp1: 密码是123456
    • ftp2: 密码时654321
    ftp1
    123456
    ftp2
    654321
    

    3. 创建数据库认证文件

    根据步骤2创建的配置文件生成数据库认证文件. 后续如果增加/修改/删除FTP用户需要重新生成数据库认证文件, 再次执行如下命令:

    db_load -T -t hash -f /etc/vsftpd/vftpusers /etc/vsftpd/vftpusers.db
    

    其中/etc/vsftpd/vftpusers就是步骤2生成的文件路径, /etc/vsftpd/vftpusers.db是生成的数据库认证文件路径.

    这部操作完之后/etc/vsftpd/vftpusers这个配置文件就没有用了, 为了安全起见, 防止密码暴露, 可以删除这个文件

    4. 设置pam认证文件

    配置为vsftpd服务使用步骤3生成的文件

    先将默认配置进行备份

    # 先备份默认
    cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd.default
    

    在将如下内容写入/etc/pam.d/vsftpd配置文件

    注意: db=后面的路径是步骤3生成的数据库认证文件/etc/vsftpd/vftpusers.db去掉.db

    #%PAM-1.0
    auth    required        pam_userdb.so   db=/etc/vsftpd/vftpusers
    account required        pam_userdb.so   db=/etc/vsftpd/vftpusers
    session required        pam_loginuid.so
    

    5. 修改vsftpd配置文件

    配置文档地址: https://security.appspot.com/vsftpd/vsftpd_conf.html, 其他额外的选项可以根据自己需求自行参考配置

    第一步还是备份配置文件

    # 备份
    cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.default
    

    /etc/vsftpd/vsftpd.conf配置文件替换为如下内容:

    vim /etc/vsftpd/vsftpd.conf
    
    # --- 配置
    # 控制是否允许匿名登录。如果启用,用户名 ftp 和 anonymous 都会 被识别为匿名登录
    anonymous_enable=NO
    #控制是否允许本地登录。如果启用,则可以使用 /etc/passwd(或您的 PAM 配置引用的任何地方)中的普通用户帐户登录。必须启用此功能才能使任何非匿名登录工作,包括虚拟用户。
    local_enable=YES
    # 是否允许本地用户对FTP服务器文件具有写权限,默认设置为YES允许
    write_enable=YES
    # 用于文件创建的 umask 为本地用户设置的值。注意: 如果要指定八进制值,请记住“0”前缀,否则该值将被视为十进制整数
    local_umask=022
    # 是否激活目录欢迎信息功能
    # 当用户用CMD模式首次访问服务器上某个目录时,FTP服务器将显示欢迎信息
    # 默认情况下,欢迎信息是通过该目录下的.message文件获得的
    # 此文件保存自定义的欢迎信息,由用户自己建立
    dirmessage_enable=YES
    # 是否启用日志, 日志文件路径 /var/log/vsftpd.log,但可以使用配置设置vsftpd_log_file覆盖此位置 
    xferlog_enable=YES
    # 主动模式是否使用20端口传输数据
    connect_from_port_20=YES
    # 是否使用xferlog格式记录日志, 默认日志路径是: /var/log/xferlog, 可以修改xferlog_file项修改
    xferlog_std_format=YES
    # 是否将所有用户限制在主目录,YES为启用 NO禁用.(该项默认值是NO,即在安装vsftpd后不做配置的话,ftp用户是可以向上切换到要目录之外的)
    chroot_local_user=YES
    # 如果设置为YES,则vsftpd将以独立模式运行,由vsftpd自己监听和处理IPv4端口的连接请求
    listen=YES
    # 设定是否支持IPV6。如要同时监听IPv4和IPv6端口,
    # 则必须运行两套vsftpd,采用两套配置文件
    # 同时确保其中有一个监听选项是被注释掉的
    listen_ipv6=NO
    # 设置PAM外挂模块提供的认证服务所使用的配置文件名,即/etc/pam.d/vsftpd文件
    # 此文件中file=/etc/vsftpd/ftpusers字段,说明了PAM模块能抵挡的帐号内容来自文件/etc/vsftpd/ftpusers中
    pam_service_name=vsftpd
    # 是否允许ftpusers文件中的用户登录FTP服务器,默认为NO
    # 若此项设为YES,则user_list文件中的用户允许登录FTP服务器
    # 而如果同时设置了userlist_deny=YES,则user_list文件中的用户将不允许登录FTP服务器,甚至连输入密码提示信息都没有
    userlist_enable=YES
    tcp_wrappers=YES
    # 是否启用虚拟用户
    guest_enable=YES
    # 虚拟用户将使用与本地用户相同的权限
    virtual_use_local_privs=YES
    # 虚拟用户启用时使用, 根据模板为每个虚拟用户自动生成主目录
    user_sub_token=$USER
    # 用户登录后切换到该目录
    local_root=/home/ftp/$USER
    # 如果启用,目录列表中的所有用户和组信息将显示为 ftp
    hide_ids=YES
    allow_writeable_chroot=YES
    
    

    6. 创建虚拟用户目录

    配置已经完成, 接下来为之前创建的虚拟用户创建对应的目录, 根据/etc/vsftpd/vsftpd.conf中的local_root=/home/ftp/$USER创建其对应的文件目录

    mkdir -p /home/ftp/ftp1
    mkdir -p /home/ftp/ftp2
    # 将权限统一修改为, vsftpd默认创建的ftp用户
    chown -R ftp:ftp /home/ftp
    

    每个虚拟用户都只能在自己对应的目录下操作(列出目录/文件, 上传, 下载等操作)

    7. 测试验证

    echo test > /home/ftp/ftp1/test.txt
    
    # 查看文件
    [root@localhost wbb]# curl ftp://ftp1:123456@localhost
    -rw-r--r--    1 ftp      ftp             5 Sep 08 03:41 test.txt
    [root@localhost wbb]# 
    
    # 上传文件
    [root@localhost wbb]# curl -T /home/wbb/333 ftp://ftp1:123456@localhost
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
      0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
    [root@localhost wbb]# 
    # 上传成功
    [root@localhost wbb]# curl ftp://ftp1:123456@localhost
    -rw-r--r--    1 ftp      ftp             0 Sep 08 05:35 333
    -rw-r--r--    1 ftp      ftp             5 Sep 08 03:41 test.txt
    [root@localhost wbb]# 
    
    

    8. vsftp操作

    # 开启开机启动
    systemctl enable vsftpd
    # 启动
    systemctl start vsftpd
    # 状态
    systemctl status vsftpd
    # 重启
    systemctl restart vsftpd
    # 停止
    systemctl stop vsftpd
    # 关闭开机启动
    systemctl disable vsftpd
    
    

    9 SELinux设置

    推荐方法:

    # 暂时让SELinux进入Permissive模式, 重启vsftpd服务判断是否是SELinux导致的
    setenforce 0 
    # 如果ftp能获取目录, 下载, 上传, 那么证明就是SELinux导致的
    
    # 运行 getsebool -a | grep ftpd 判断查看权限
    getsebool -a | grep ftpd
    # 以下是显示出来的权限,off是关闭权限,on是打开权限
    allow_ftpd_anon_write --> off
    allow_ftpd_full_access --> off
    allow_ftpd_use_cifs --> off
    allow_ftpd_use_nfs --> off
    ftpd_connect_db --> off
    ftpd_use_passive_mode --> off
    ftp_home_dir --> off
    
    # 其中, ftp_home_dir和allow_ftpd_full_access必须为on 才能使vsftpd 具有访问ftp根目录,以及文件传输等权限
    setsebool -P ftp_home_dir 1
    setsebool -P allow_ftpd_full_access 1
    # 注意这两条命令一般需要花上十几秒钟才能运行完
    
    # 运行完了以后,我们再重新恢复SELinux进入Enforcing模式。
    setenforce 1 #进入Enforcing模式
    

    不推荐方法:

    
    ### 下面方法比较暴力, 不推荐
    # --- 将SELINNUX的值修改为disabled, 重启服务器生效
    vim /etc/sysconfig/selinux
    
    # This file controls the state of SELinux on the system.
    # SELINUX= can take one of these three values:
    #     enforcing - SELinux security policy is enforced.
    #     permissive - SELinux prints warnings instead of enforcing.
    #     disabled - No SELinux policy is loaded.
    SELINUX=disabled
    # SELINUXTYPE= can take one of three values:
    #     targeted - Targeted processes are protected,
    #     minimum - Modification of targeted policy. Only selected processes are protected. 
    #     mls - Multi Level Security protection.
    SELINUXTYPE=targeted
    

    11. 遇到的问题:

    • 在修改/etc/sysconfig/selinux配置文件的时候将SELINUX=disabled写成了SELINUX=disable. 导致服务器启动异常

      修复方法:

    1. 断点重启一直按, 会进入如下界面
      在这里插入图片描述
    1. 根据提示按e进入编辑

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YQdRPoum-1631255885829)(Centos7 安装 vsftpd.assets/image-20210910133548352.png)]

    1. 找到类似LANG=en_US.UTF-8的地方, 在后面加上selinux=0

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hiqJDuWK-1631255885829)(Centos7 安装 vsftpd.assets/image-20210910133656930.png)]

    1. Ctrl+x 重启, 系统临时以selinux临时关闭进入系统
    2. 重新编辑/etc/sysconfig/selinux, 修改为SELINUX=disabled, 重启系统得以修复
    展开全文
  • CentOS 7安装Vsftpd

    2018-10-10 23:17:49
    1、安装vsftpd(sudo权限根据个人情况) sudo yum -y install vsftpd 2、创建用户 可以先创建ftpfile文件夹,不创建的话-d会默认创建 sudo useradd ftpuser -d /ftpfile -s /sbin/nologin 3、修改ftpuser的密码...

    一、安装实操

    1、安装vsftpd(sudo权限根据个人情况)

    sudo yum -y install vsftpd

    2、创建用户

    可以先创建ftpfile文件夹,不创建的话-d会默认创建

    sudo useradd ftpuser -d /ftpfile -s /sbin/nologin

    3、修改ftpuser的密码

    sudo passwd ftpuser
    

    4、给ftpfile文件夹赋予ftpuser权限(用户和用户组都为ftpuser)

    sudo chown -R ftpuser.ftpuser ./ftpfile

    5、来到/etc/vsftpd文件夹下

    cd /etc/vsftpd

    6、编辑chroot_list,把刚刚添加的用户放入里面

    sudo vim chroot_list

    7、编辑chroot_list里的内容为刚刚创建的用户,ftpuser。:wq保存退出

    8、修改linux的安全策略,检查SELINUX节点是否为disable,如果是的话保存退出

    sudo vim /etc/selinux/config
    
    如果一会执行的时候碰到550拒绝访问请求,请执行
    sudo setsebool -P ftp_home_dir 1

    9、配置vsftpd.conf

    设置提示语
    ftpd_banner=Welecome to my vsftpd
    
    设置enable为Yes
    chroot_list_enable=YES
    
    chroot_list_file=/etc/vsftpd/chroot_list
    
    匿名访问关闭
    anonymous_enable=NO
    
    不要匿名访问(#为注释)
    #anon_root=/ftpfile
    
    加入端口范围
    pasv_min_port=61001
    pasv_max_port=62000

    10、配置防火墙规则

    #vsftpd
    -A INPUT -p TCP --dport 61001:62000 -j ACCEPT
    -A OUTPUT -p TCP --sport 61001:62000 -j ACCEPT

    11、重启防火墙、重启vsftpd服务

    CentOS 7重启服务和6.8不一样
    
    重启防火墙
    sudo systemctl restart iptables.service
    
    
    重启Vsftpd服务
    sudo systemctl restart 
    vsftpd.service

    12、访问ftp://本机地址(成功)

    展开全文
  • Centos7安装vsftpd

    2019-03-21 18:12:41
    为避免已经安装vsftpd,...上面链接里的安装命令如systemctl 不适合我的CentOs版本,于是找到了下面的安装方法,不过并没有出现,作者最后的问题。顺利开启了vsftpd安装过程参考: https://www.cnblogs.com/yo...

    为避免已经安装过vsftpd,先清理一遍:下面的图来自:

    https://www.linuxidc.com/Linux/2017-08/146085.htm 

    上面链接里的安装命令如systemctl 不适合我的CentOs版本,于是找到了下面的安装方法,不过并没有出现,作者最后的问题。顺利开启了vsftpd。 

    安装过程参考:

    https://www.cnblogs.com/yongcode/p/4864474.html

    测试:安装FileZilla客户端

    安装方法:https://jingyan.baidu.com/album/ca41422f7ee7831eae99ed17.html?picindex=4

    测试:端口21

    测试传输:

    Linux下查看:

    注意我添加用户的语句是:

    当我试图用ftpuser的身份登录linux时,提示:

    useradd的参数:

    -s /sbin/nologin:不允许用户以ssh的方式登录

    -d:是ftp用户默认登录时的路径,文件默认上传到/home/ftp/下,另外创建用户的时候,事先不能存在/home/ftp这个目录,直接写命令,命令创建ftp目录。

    -g:指明用户所属的组是ftp。

    需要注意的是ftpuser用户的目录 home/ftp/下如果有一个由root用户创建的文件夹,想把文件上传到这里是不可能的,因为ftpuser没有操作的权限

    我选中roorimages上传,失败。

    也就是想要通过ftp上传文件成功,必须要ftp用户要有文件夹的操作权限。

    展开全文
  • CentOS 7 安装 vsftpd

    2016-02-03 11:48:00
    由于CentOS 7CentOS 6比有很大变化,所以有必要写下来备忘。 安装vsftpd: yum -y install vsftpd 编辑配置文件: vim /etc/vsftpd/vsftpd.conf (禁止匿名登录、使用本地用户登录、限制目录之类的) 启动vsftpd:...

    由于CentOS 7跟CentOS 6比有很大变化,所以有必要写下来备忘。

     

    安装vsftpd: yum -y install vsftpd

    编辑配置文件: vim /etc/vsftpd/vsftpd.conf (禁止匿名登录、使用本地用户登录、限制目录之类的)

    启动vsftpd: systemctl start vsftpd.service

    设置vsftpd开机启动: systemctl enable vsftpd.service

    添加用户: useradd -d /data/wwwroot -g ftp -s /sbin/nologin username

    设置用户密码: passwd username

    在这中间我设置错了一次用户目录,于是给用户更改目录: usermod -d /data -U username

     

    OK,完工

    转载于:https://www.cnblogs.com/cnmlgb/p/5179357.html

    展开全文
  • centos7安装vsftpd

    2018-11-16 17:14:02
    https://www.unixmen.com/install-configure-ftp-server-centos-7/ http://www.cnblogs.com/chenmh/p/5365274.html https://www.cnblogs.com/ismallboy/p/6785270.html ...
  • 下面小编就为大家带来一篇CentOS 7 安装vsftpd 服务器的具体操作步骤。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • CentOs 7 安装 Vsftpd 服务器 图文详解

    千次阅读 2017-10-09 17:03:23
    CentOs 7 安装 Vsftpd 服务器 图文详解 图片服务器搭建图文详解
  • centos7 安装vsftpd 阿里云 腾讯云安装vsftpd添加ftp用户配置ftp配置防火墙(按需)vsftpd相关问题 安装vsftpd 安装 yum -y install vsftpd 设置开机启动 systemctl enable vsftpd 启动ftp服务 systemctl start ...
  • Centos7安装vsftpd (FTP服务器) 原文链接:https://www.jianshu.com/p/9abad055fff6 TyiMan关注 2016.02.06 21:19*字数 238阅读 10400评论 2喜欢 12 一、通过yum安装vsftpd yum install -y vsftpd ...
  • Centos 7安装vsftpd jdk8 tomcat9 -----安装vsftpd  检查是否已经安装了vsftpd rpm -q vsftpd 该命令会显示vsftpd的版本 [root@localhost ~]# rpm -q vsftpd vsftpd-3.0.2-21.el7.x86_64 否则安装 yum install -y...
  • CentOS7安装vsftpd(FTP)

    2021-07-12 13:22:30
    CentOS7,root用户操作 如果是CentOS6,有一些操作命令会不同,如启动防火墙… CentOS6用的防火墙是iptables,CentOS7用的是filewall 安装步骤 下载安装vsftpd yum -y install vsftpd 在根目录创建ftpfile文件夹 ...
  • CentOS 7 安装vsftpd步骤

    千次阅读 2018-09-11 17:50:11
    1、安装vsftpd组件 [root@localhost ~]# yum -y install vsftpd   2、添加一个ftp用户 此用户就是用来登录ftp服务器用的。 [root@localhost ~]# useradd ftpuser 这样一个用户建完,可以用这个登录,记得用...
  • CentOS7 安装vsftpd 服务器

    千次阅读 2016-06-17 18:51:26
    CentOS7安装ftp服务器用于服务端上传的图片 安装vsftpd yum -y install vsftpd 建立ftp虚拟宿主帐户 useradd ftpuser -s /sbin/nologin 修改密码: passwd ftpuser 配置vsftpd.conf vi /etc/...
  • CentOS 7安装vsftpd服务教程

    千次阅读 2017-11-02 19:49:37
    同事安装centos 7 上安装ftp,fz连接的时间报550错误信息! 我就卸载了重装! 1、CentOS卸载vsftpd的方法 如果服务器上已经安装vsftpd服务,配置出错需要卸载vsftpd服务。 1.1 查找vsftpd服务 [root@...
  • Centos7安装vsftpd (FTP服务器) TyiMan关注 2016.02.06 21:19*字数 238阅读 7339评论 2喜欢 9 一、通过yum安装vsftpd yum install -y vsftpd 二、修改vsftpd的配置文件 vi /etc/vsftpd/vsftpd.conf ...
  • Centos7 安装vsftpd 并能在Window ftp 到 Centos一、安装 ftp二、禁止匿名登陆三、禁止切换目录四、在window 上连接Centos一、安装 ftpyum...
  • centos7 安装 vsftpd 过程

    2017-04-12 11:40:00
    测试环境:win7 安装 VMware workstation12 , VM里面安装 centos7 1、安装vsftp yum install vsftp 2、启动vsftp service vsftpd start 3、修改vsftpd.cof文件 centos 下面 进入su模式后,运行 vi /etc/...
  • 确认没有安装vsftpd 用命令框输入"systemctl status vsftpd.service"查询状态,没有安装的情况下输入 " yum -y install vsftpd"。 修改配置文件 禁止匿名操作 输入 " cd /etc/vsftpd/ " ,编辑配置文件 " vi vsftpd....
  • 下面我们介绍如何在centos系统上安装vsftp。 什么是vsftpd vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序。特点是小巧轻快,安全易用。 vsftpd 的名字代表”very secure FTP daemon”, 安全是它的开发者 ...
  • CentOS7安装vsftpd并配置pasv访问模式

    千次阅读 2018-01-10 19:09:14
    二:安装vsftpdvsftpd的RPM包的目录下执行命令 [root@localhost home]# rpm -ivh vsftpd-3.0.2-22.el7.x86_64.rpm 三:修改配置执行命令 [root@localhost home]# vi /etc/vsftpd/v
  • CentOS7 安装 vsftpd 完整版

    千次阅读 2017-07-09 19:25:29
    centos7上搭建ftp服务,使用的软件 vsftpd。 yum install vsftpd [root@fl vsftpd]#vsftpd -v vsftpd: version 3.0.2之后新建2个用户 ftp1 ftp2useradd -M -d /mnt/uploads/site1/www ftp1 useradd -M -d /mnt/...
  • 前言:今天做了一个服务器端生成excel...1.安装vsftpd yum -y install vsftpd 2.设置开机启动 systemctl enable vsftpd 3.启动ftp服务 systemctl start vsftpd.service 4.打开防火墙,开放21端口 firewal...
  • centOS 7安装vsftpd配置虚拟用户登录

    千次阅读 2019-09-05 22:08:02
    安装前准备: 关闭防火墙: systemctl stop firewalld.service 关闭selinux: 或者修改配置文件,/etc/sysconfig/selinux ...安装vsftpd: 启动vsftpd服务: systemctl start vsftpd 设置开机自启动: systemctl...
  • centos7 安装vsftpd的步骤

    万次阅读 2014-12-18 00:08:10
    不断的重新安装不下10次,最后一次终于测试出了正确的方法。#官网配置说明##https://security.appspot.com/vsftpd/vsftpd_conf.html##需求##1)登录FTP 只能看到当前用户的,不能跨越到主目录2)禁止匿名用户登录FTP...
  • https://blog.csdn.net/lkp1603645756/article/details/82629486

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 19,020
精华内容 7,608
关键字:

centos7安装vsftpd