1.1 环境检查

[root@www ~]# cat /etc/redhat-release     #系统版本,6系列等区别不大,都可以
CentOS Linux release 7.5.1804 (Core)
[root@www ~]# uname -r
3.10.0-862.9.1.el7.x86_64
[root@www ~]# systemctl status firewalld #关闭防火墙
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:firewalld(1)
[root@www ~]# getenforce #检查selinux是否关闭
Disabled

1.2 安装并配置

#直接粘贴配置就可以使用

[root@www ~]# yum -y install vsftpd                #直接yum安装
[root@www ~]# cd /etc/vsftpd/
[root@www vsftpd]# cp vsftpd.conf vsftpd.conf.bak #编辑配置文件前一定记得备份,养成好习惯
[root@www ~]# vim /etc/vsftpd/vsftpd.conf #编辑主配置文件
#开启匿名
anonymous_enable=no
#--------------------本地用户权限设置------------------------------
#本地账户可以登录
local_enable=YES
#本地帐户登陆后可以删除和修改文件
write_enable=NO
#允许锁定的用户有写的权限
allow_writeable_chroot=yes
#当本地用户登入时,将被更换到定义的目录下。默认值为各用户的家目录
local_root=/data/sprixin
#ftp上本地文件权限
local_umask=022
#本地用户上传档案后的档案权限,与chmod 所使用的数值相同。默认值为0666
file_open_mode=0755
pam_service_name=vsftpd
#--------------------控制用户是否允许切换到上级目录---------------
#设置是否启用chroot_list_file配置项指定的用户列表文件。默认值为NO。
chroot_list_enable=no
#用于指定用户列表文件,该文件用于控制哪些用户可以切换到用户家目录的上级目录。
chroot_list_file=/etc/vsftpd.chroot_list
#用于指定用户列表文件中的用户是否允许切换到上级目录。默认值为NO。
chroot_local_user=YES
#---------------------欢迎语设置-----------------------------------
#访问ftp时的说明文件
dirmessage_enable=NO
#设置目录消息文件,可将要显示的信息写入该文件。默认值为.message。
message_file=.message
#当使用者登入时,会显示此设定所在的档案内容,通常为欢迎话语或是说明.
banner_file=/etc/vsftpd/banner
#---------------------日志文件设置---------------------------------
#启用上传和下载的日志S
xferlog_enable=YES
#使用标准的日志格式
xferlog_std_format=yes
#日志路径
xferlog_file=/var/log/vsftpd.log
#如果启用此选项,所有的FTP请求和响应都会被记录到日志中,默认日志文件在/var/log/vsftpd.log。启用此选项时,xferlog_std_format不能被激活。这个选项有助于调试。默认值为NO。
#log_ftp_protocol=YES
#---------------------FTP工作方式与端口设置-------------------------
#启用ftp数据端口的数据连接
connect_from_port_20=YES
#设置FTP服务器建立连接所监听的端口,默认值为21。
listen_port=21
#将客户端的数据连接端口改在50000—60000之间
#在PASV工作模式下,数据连接可以使用的端口范围的最大端口,0 表示任意端口。默认值为0。
pasv_min_port=50000
# 在PASV工作模式下,数据连接可以使用的端口范围的最小端口,0 表示任意端口。默认值为0。
pasv_max_port=60000
#若设置为YES,则使用PASV工作模式;若设置为NO,则使用PORT模式。默认值为YES,即使用PASV工作模式
pasv_enable=YES
#----------------------与连接相关的设置------------------------------
#设置vsftpd服务器是否以standalone模式运行
listen=YES
#以下只有在standalone模式运行才有效
# (ftp的最大连接数)
max_clients=200
# (每ip的最大连接数)
max_per_ip=0
#设置每个与FTP服务器的连接,是否以不同的进程表现出来
setproctitle_enable=YES
#------------------------访问控制------------------------------------
#两种控制方式:一种控制主机访问,另一种控制用户访问。
tcp_wrappers=YES
#配合系统的文件进行访问控制,类似简易防火墙,限制访问(/etc/hosts.allow,/etc/hosts.deny)
userlist_enable=NO
#是否启用用户控制文件
userlist_file=/etc/vsftpd.user_list
#控制用户访问FTP的文件,里面写着用户名称。一个用户名称一行。
userlist_deny=NO
#若设置为YES,则vsftpd.user_list文件中的用户不允许访问FTP,若设置为NO,则只有vsftpd.user_list文件中的用户才能访问FTP。
#-----------------------访问速率------------------------------------
#本地用户使用的最大传输速度,单位为B/s,0 表示不限制速度。预设值为0。
#下载速度9M
local_max_rate=10000000
#-----------------------超时时间设置-------------------------------
# (用户会话空闲后10分钟)
idle_session_timeout=600
# (将数据连接空闲2分钟断)
data_connection_timeout=120
# (将客户端空闲1分钟后断)
accept_timeout=60
# (中断1分钟后又重新连接)
connect_timeout=60
#----------------------数据传输模式设置----------------------------
#FTP在传输数据时,可以使用二进制方式,也可以使用ASCII模式来上传或下载数据。
ascii_upload_enable=NO
#设置是否启用ASCII 模式上传数据。默认值为NO。
ascii_download_enable=NO
#设置是否启用ASCII 模式下载数据。默认值为NO。
#-----------------------其他设置-----------------------------------------
#显示用户名和组名
text_userdb_names=YES
#不可以查看当前目录下子目录中的文件
ls_recurse_enable=NO
#如果设置为NO,所有的文件都不能下载到本地,文件夹不受影响。默认值为YES。
download_enable=NO

#创建ftp用户

[root@www vsftpd]# useradd ftpuser -s /sbin/nologin   #禁止登录系统
[root@www vsftpd]# passwd ftpuser #设置ftpuser密码,我这里是123456输入两次
Changing password for user ftpuser.
New password:
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
passwd: all authentication tokens updated successfully.

#将ftp用户加入user_list允许访问

[root@www vsftpd]# echo ftpuser >>/etc/vsftpd/user_list
[root@www vsftpd]# echo ftpuser >>/etc/vsftpd/chroot_list

#启动vsftpd

[root@www vsftpd]# systemctl start vsftpd
[root@www vsftpd]# netstat -lntup|grep 21 #检查是否监听
tcp6 0 0 :::21 :::* LISTEN 13837/vsftpd

1.3 使用浏览器访问或者ftp工具

浏览器输入:ftp://IP地址   输入账号:ftpuser   密码:123456

FTP部署与使用的更多相关文章

  1. 使用git代替FTP部署代码到服务器的例子

    这篇文章主要介绍了使用git代替FTP部署代码到服务器的例子,这种方法可以节省流量.节省时间,需要的朋友可以参考下 本地开发完成后,通常会在服务器上部署,有人会使用ftp,有人会使用scp, ftp和 ...

  2. ftp部署及使用

    常用软件安装及使用目录 http://www.jb51.net/article/106604.htm   ftp部署 本篇文章主要介绍了CentOS7.0下安装FTP服务的方法,小编觉得挺不错的,现在 ...

  3. FTP ftp部署遇到问题

    FTP  ftp部署遇到问题 一. 二.

  4. Linux上FTP部署:基于mariadb管理虚拟用户

    FTP原理 FTP 采用 Internet 标准文件传输协议 FTP 的用户界面, 向用户提供了一组用来管理计算机之间文件传输的应用程序.图1 FTP 的基本模型 FTP 是基于客户---服务器(C/ ...

  5. 使用ansible结合FTP部署zabbix_agent

    想要达到的效果:一条命令,快速对多台主机部署zabbix_agent 实现思路:从源码编译编译出zabbix_agentd,准备好安装脚本,将安装脚本和编译出的agent一起上传到FTP服务器,在an ...

  6. 文件上传----FTP部署

  7. Linux下FTP环境部署梳理(vsftpd和proftpd)

    在日常运维工作中,常部署到的FTP是vsftpd和proftd.之前写了Linux下FTP虚拟账号环境部署总结,下面简单说下本地用户下的FTP环境部署过程: 简单梳理下FTP主动和被动两种工作模式: ...

  8. 用持续集成工具Travis进行构建和部署

    用持续集成工具Travis进行构建和部署 用持续集成工具Travis进行构建和部署 摘要:本文简单说明了如何使用持续集成工具Travis进行构建和部署的过程. 1. 概述 持续集成(Continuou ...

  9. java遍历ftp文件夹下所有文件(或指定文件下的文件)

    import java.io.IOException; import java.io.PrintWriter; import java.util.ArrayList; import org.apach ...

随机推荐

  1. 内存数据库:memcached与redis技术的对比试验

    本文以高性能nginx服务器为应用背景,想利用缓存技术来减轻系统负荷,加快响应时间,从而增加web服务器的吞吐量. redis是一种分布式内存数据库,memcached是一种内存缓存技术,它们都采用k ...

  2. C基础知识(4):指针--p=&a和*p=a的区别详解

    对于*p,[p = &a]和[*p = a]的区别详解 (1) p=&a就是用a的地址对p赋值,&p不改变,变的是p (2) *p=a就是把p所指向的那一内存空间的值赋值为a, ...

  3. gin框架教程三:JWT的使用

    JWT介绍 JWT (JSON Web Token) 是一种规范.这个规范允许我们使用JWT在用户和服务器之间安全传递信息. JWT的组成: jwt分3个部分,Header 头部.Payload 载荷 ...

  4. 阿里云Zabbix安装实践过程

    1.配置阿里云zabbix yum源 [root@VM_0_8_centos ~]# rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhe ...

  5. ThreadPoolExecutor的重要参数

    一.ThreadPoolExecutor的重要参数 1.corePoolSize:核心线程数         * 核心线程会一直存活,及时没有任务需要执行         * 当线程数小于核心线程数时 ...

  6. 小记---------spark架构原理&主要组件和进程

    spark的主要组件和进程       driver (进程):     我们编写的spark程序就在driver上,由driver进程执行       master(进程):     主要负责资源的 ...

  7. idea中模块累积编写

    idea中新建Empty Project名为myproject,新建模块mymodel1 要想复制该模块,再在该模块的基础上开发怎么弄? 选中该模块右键Copy,在Project空白区域右键Paste ...

  8. 使用chattr禁止文件被删除

    chattr 是个啥? chattr 修改文件在Linux第二扩展文件系统(E2fs)上的特有属性 使用方法 +i or -i 设置/取消文件不能进行修改:即你不能删除它, 也不能给它重新命名,你不能 ...

  9. luogu P3320 [SDOI2015]寻宝游戏

    大意:给定树, 要求维护一个集合, 支持增删点, 询问从集合中任取一点作为起点, 遍历完其他点后原路返回的最短长度. 集合中的点按$dfs$序排列后, 最短距离就为$dis(s_1,s_2)+...+ ...

  10. springboot添加https

    一.使用JDK工具keytool生成证书 keytool命令详解 https://blog.csdn.net/zlfing/article/details/77648430 keytool -genk ...