通用安装和配置

1.下载安装包并安装

wget http://mirror.centos.org/centos/7/os/x86_64/Packages/vsftpd-3.0.2-25.el7.x86_64.rpm
rpm -ivh vsftpd-3.0.2-25.el7.x86_64.rpm

2.创建ftp宿主用户

useradd ftpuser -s /sbin/nologin
echo "96@wB&RjaAql" | passwd --stdin ftpuser

3.备份配置文件

cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf_bak`date "+%Y%m%d"`
echo '' > /etc/vsftpd/vsftpd.conf

4.设置登陆标语

echo "dirmessage_enable=YES" >> /etc/vsftpd/vsftpd.conf
echo "ftpd_banner=Welcome to login FTP service." >> /etc/vsftpd/vsftpd.conf

5.禁止匿名用户登陆

echo "anonymous_enable=NO" >> /etc/vsftpd/vsftpd.conf
echo "anon_upload_enable=NO" >> /etc/vsftpd/vsftpd.conf
echo "anon_mkdir_write_enable=NO" >> /etc/vsftpd/vsftpd.conf
echo "anon_other_write_enable=NO" >> /etc/vsftpd/vsftpd.conf

6.启用日志记录

echo "xferlog_enable=YES" >> /etc/vsftpd/vsftpd.conf
echo "xferlog_std_format=YES" >> /etc/vsftpd/vsftpd.conf
echo "xferlog_file=/var/log/vsftpd.log" >> /etc/vsftpd/vsftpd.conf

7.启用异步传输

echo "async_abor_enable=YES" >> /etc/vsftpd/vsftpd.conf

8.启用文本(ASCII)传输模式

echo "ascii_upload_enable=YES" >> /etc/vsftpd/vsftpd.conf
echo "ascii_download_enable=YES" >> /etc/vsftpd/vsftpd.conf

9.启用被动连接模式

echo "connect_from_port_20=NO" >> /etc/vsftpd/vsftpd.conf
echo "pasv_enable=YES" >> /etc/vsftpd/vsftpd.conf
echo "pasv_min_port=55000" >> /etc/vsftpd/vsftpd.conf
echo "pasv_max_port=56000" >> /etc/vsftpd/vsftpd.conf

10.开启上传下载删除等操作权限

echo "write_enable=YES" >> /etc/vsftpd/vsftpd.conf
echo "cmds_allowed=FEAT,REST,CWD,LIST,MDTM,MKD,NLST,PASS,PASV,PORT,PWD,QUIT,RMD,RNFR,RNTO,RETR,DELE,SIZE,TYPE,USER,ACCT,APPE,CDUP,HELP,MODE,NOOP,REIN,STAT,STOU,STRU,SYST,STOR" >> /etc/vsftpd/vsftpd.conf

11.设置文件的默认权限(目录为755,文件为644)

echo "local_umask=022" >> /etc/vsftpd/vsftpd.conf

12.启用白名单(使用user_list文件,避免用ftpusers文件)

echo "userlist_enable=YES" >> /etc/vsftpd/vsftpd.conf
echo "userlist_deny=NO" >> /etc/vsftpd/vsftpd.conf

13.启用pam认证

echo "pam_service_name=vsftpd" >> /etc/vsftpd/vsftpd.conf

14.解决pam文件中shell不存在问题

详情请参考:https://blog.csdn.net/woshijipinglong/article/details/92636979
sed -i 's/pam_shells.so/pam_nologin.so/g'       /etc/pam.d/vsftpd

15.关闭selinux和防火墙

setenforce 0
sed -i "/SELINUX=enforcing/c\SELINUX=disabled" /etc/selinux/config
systemctl disable firewalld && systemctl stop firewalld && systemctl status firewalld

16.清空白名单

echo '' > /etc/vsftpd/user_list

配置FTP采用本地用户登陆

17.开启本地用户登陆

echo "local_enable=YES" >> /etc/vsftpd/vsftpd.conf

18.锁定用户活动范围为家目录

echo "chroot_local_user=YES" >> /etc/vsftpd/vsftpd.conf
echo "allow_writeable_chroot=YES" >> /etc/vsftpd/vsftpd.conf
echo "chroot_list_enable=NO" >> /etc/vsftpd/vsftpd.conf

19.将本地用户添加到白名单中

echo "ftpuser" >>  /etc/vsftpd/user_list

20.启动ftp服务

systemctl enable vsftpd && systemctl restart vsftpd &&systemctl status vsftpd

验证

1.安装ftp客户端

yum -y install ftp

2.登陆

ftp
open 127.0.0.1 21
ftpuser
96@wB&RjaAql
put test
get test
delete test
ls

安装vsftpd的更多相关文章

  1. CentOS 6.4 下安装vsftpd

    概述: vsftpd是Linux下比较著名的FTP服务器,搭建FTP服务器当然首选这个. 本文介绍了在CentOS 6.4下安装vsftpd.配置虚拟用户登录FTP的过程. 正文: 一:安装vsftp ...

  2. Linux下安装vsftpd

    一.安装vsftpd及相关依赖包 #vsftpd安装程序 yum install vsftpd #vsftpd虚拟登陆账户必要依赖包 yum install pam* db4* 安装完之后,vsftp ...

  3. Centos 安装vsftpd 服务器

    一:检查有没有安装vsftpd 二:安装vsftpd 三:安装之后重启 四:修改vsftpd配置文件 配置文件路径在/etc/vsftpd目录下 默认是注释掉的,把#号去掉 然后重启vsftpd 五: ...

  4. CentOS6.X安装vsftpd服务

    #-----------------CentOS6.X安装VSFTPD服务 #! /bin/sh #1.关闭selinux setenforce 0 sed -i 's/enforcing/disab ...

  5. CentOS安装vsftpd

    版本:vsftpd-3.0.2-9.el7.x86_64(CentOS是64位的). 1.安装vsftpd yum -y install vsftpd 2.配置vsftpd 修改配置前把原始配置文件备 ...

  6. 安装 vsftpd

    (1)安装vsftpdsudo apt-get install vsftpd (2)配置sudo vi /etc/vsftpd.conf #anonymous_enable=YESlocal_enab ...

  7. Centos 6.4上面用Shell脚本一键安装vsftpd

    Centos 6.4上面用Shell脚本一键安装vsftpd install.sh #!/bin/bash if [ `uname -m` == "x86_64" ];then m ...

  8. 3.linux安装vsftpd服务

    1.首先查看本地是否安装了vsftpd rpm -qa |grep vsftpd 2.安装vsftpd: yum install vsftpd 3.查询当前ftp状态 chkconfig --list ...

  9. centos6 安装vsftpd

    centos6 安装vsftpd vsftpd一般选择yum安装,以下是安装和配置过程 如果是centos6想要安装的话一般是编译安装 1.安装 yum安装 yum install vsftpd 编译 ...

  10. CentOS下安装vsftpd架设ftp服务器

    什么是vsftpd vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序.特点是小巧轻快,安全易用. 首先安装vsftpd这个软件,命令是,yum install vsftpd servi ...

随机推荐

  1. mysql锁定单个表的方法

    mysql锁定单个表的方法mysql>lock table userstat read;mysql>unlock tables; 本文来自ChinaUnix博客,如果查看原文请点:http ...

  2. Codeforces Round #512 (Div. 2, based on Technocup 2019 Elimination Round 1) E. Vasya and Good Sequences(DP)

    题目链接:http://codeforces.com/contest/1058/problem/E 题意:给出 n 个数,对于一个选定的区间,区间内的数可以通过重新排列二进制数的位置得到一个新的数,问 ...

  3. 洛谷P1006 传纸条【dp】

    题目:https://www.luogu.org/problemnew/show/P1006 题意: 给定一个m*n的矩阵,从(1,1)向下或向右走到(m,n)之后向上或向左走回(1,1),要求路径中 ...

  4. [Nx] Note for learning Nx

    Proxy configuration: When we have already fews applications running in the workspace, and we want to ...

  5. Laravel 事件侦听的几个方法 [Trait, Model boot(), Observer Class]

    1 Trait 1.1 可以在 Trait 中定义一个静态的 bootFooBar() 方法,注:FooBar 是你的 Trait 名称 namespace App\Traits; use App\A ...

  6. kubernetes Configmap secret的使用

    kubernetes configmap 核心作用是让配置信息和镜像解耦,pod可以使用configmap的数据生成配置文件.如果后端的pod配置文件要改变时,只需要更改下configmap里面的数据 ...

  7. 并发编程入门(二):分析Boost对 互斥量和条件变量的封装及实现生产者消费者问题

    请阅读上篇文章<并发编程实战: POSIX 使用互斥量和条件变量实现生产者/消费者问题>.当然不阅读亦不影响本篇文章的阅读. Boost的互斥量,条件变量做了很好的封装,因此比" ...

  8. 小米 oj 纯位数

     纯位数 序号:#101难度:非常难时间限制:2000ms内存限制:20M 描述 在数学中,所谓"纯位数"是指由相同位元重复而组成的自然数.比如在十进制中,1,22,333,555 ...

  9. 在docker容器中python3.5环境下使用DIGITS训练caffe模型

    ********* 此处使用的基础镜像为 nvcr.io/nvidia/digits:18.06,镜像大小为6.04GB,可从nvidia官方pull此镜像: 容器配置: CUDA:9.0 CUDNN ...

  10. go面试

    **1**.简述golang中make和new的区别 make用于内建类型(只能用于创建map.slice 和channel)的内存分配.并且返回一个有初始值(非零)的T类型,而不是*T. new用于 ...