centOS7 安装vsftp服务器

一.目的:有许多时候咱们须要从本身机器上,上传文件到Linux服务器上,想要上传文件就必需要经过FTP 协议(File Transfer Protocol(文件传输协议))。因此要在服务器上配置FTP功能。vim

二.步骤:服务器

  1. 查看服务器是否安装vsftp:  rpm -p -vsftpd。 若是安装则会显示vsftpd版本,没有安装就会提示未安装软件包。
  2. 安装vsftp命令(须要有root权限):yum install -y vsftpd。
  3. 安装成功以后,检查vsftp状态(是否激活active):systemctl status vsftpd.service。

        此时,你已经成功安装好了vsftp服务器。可是,最关键的不是安装,而是如何配置服务器,也是难点。网络

三.配置:ui

         声明:如下全部文件路径皆以 “全路径” 演示。spa

  • 建立vsftp的用户数据
    • 建立二进制文件(此文件是做为生成用户数据的一个临时数据文件,包含用户名、密码):
    • touch '/etc/vsftpd/用户名'。用户名 本身随便取,我命名为“vsftpuser.txt”,即 touch '/etc/vsftpd/vsftpuser.txt'。
    • 向二进制文件中添加内容:
      • vim '/etc/vsftpd/vsftpuser.txt'。进入以下页面:

        1为用户名,2为密码。

        PS:一条信息须要占据一行,用户名、密码不能够写在一行。不能使用root作用户名,由于系统须要,因此你不能用,嘻嘻。blog

      • 使用  :wq 退出vim编辑页面,保存文件。
    • 使用db4命令使vsftpuser.txt文本文件生成vsftpuser.db(名字本身定义也能够)数据文件
      • 检查是否安装db4 :rpm –q  db。
      • 在网络搜索匹配你本身系统的安装包:yum search db4。以下图所示:

      • 安装db4: yum install -y compat-db47.x86_64。
      • 生成vsftpuser.db数据文件: db_load -T -t hash -f '/etc/vsftpd/vsftpuser.txt' '/etc/vsftpd/vsftpuser.db'。
      • 查看vsftpuser.db数据文件,以下图就对啦:

  • 设置ftp 的Guest帐户
    • 创造ftp文件存储目录:mkdir -p '/ftp/private'
    • 将此目录设置成ftp文件传输目录:useradd  -d   '/ftp/private'  -s  /sbin/nologin  '/etc/vsftpd/vsftpuser'
  • 编辑vsftpd的PAM认证文件
    • 备份/etc/pam.d/vsftpd文件,而后进入打开/etc/pam.d/vsftpd:vi /etc/pam.d/vsftpd。
    • auth及account的全部配置行行均在注释掉。
    • 在文件最上面两行添加以下内容:
      • auth required pam_userdb.so db=/etc/vsftpd/vsftpuserget

      • account required pam_userdb.sodb=/etc/vsftpd/vsftpusercmd

                

  • 配置vsftpd.conf
    • 打开/etc/vsftpd/vsftpd.conf文件
    • # anonymous_enable=YES 改成 anonymous_enable=NO
    • 在文件里面添加以下内容:
      • virtual_use_local_privs=YES
      • guest_enable=YES
      • guest_username=vsftpd
      • chroot_local_user=YES
      • allow_writeable_chroot=YES
    • 保存
  • 将ftp设置成开机自启:systemctl enable  vsftpd

4、防火墙设置hash

  • 添加防火墙设置:firewall-cmd --permanent  --zone=public  --add-service=ftp
  • 从新加载防火墙:firewall-cmd --reload

5、启动ftpit

  • 查看ftp状态:systemctl  status  ftpd
  • 启动ftp:systemctl  start  ftpd
相关文章
相关标签/搜索