vsftp—VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件。关于这个软件的详细信息

大家可以自行百度。

以上自己安装vsftp系统环境

二、查看自己的服务器是否安装了vsftp

如果没有安装vsftp现在安装

yum -y install vsftp

三、关闭CentOS7的防火墙

systemctl stop firewalld.service           停止firewall

systemctl disable firewalld.service       禁止firewall开机启动

四、启动vsftp服务

systemctl restart vsftpd.service         # 重启服务

systemctl start vsftpd.service           # 启动服务

systemctl status vsftpd.service        # 服务状态查看

我的服务器已经装好了vsftp,上图是查看vsftp服务的截图

五、vsftp安装配置

vsftp装完默认情况下是开启匿名登录的,对应的是 /var/ftp 目录,这时只要服务启动了,就可以直接

连上FTP了。默认用户名是ftp,密码是空的。

如果你在配置里面配置了anonymous_enable=NO,匿名就无法登录。

vsftp的配置文件路径:/etc/vsftpd/vsftpd.conf

vsftp配置文件一般选项(如何没有这个配置则到文件末尾添加)

anonymous_enable=YES (是否允许匿名登陆,默认是允许的)

anon_umask=022 (FTP上传本地的文件权限,默认是077,不过vsftpd安装后的配置文件里默认是022)

anon_upload_enable=YES (允许匿名ftp 用户上传文件)

anon_mkdir_write_enable=YES (允许匿名用户 创建新的目录)

anon_other_write_enable=YES (允许匿名用户改名和删除文件)

pasv_min_port=30000

pasv_max_port=35000 (PASV模式下指定端口范围,这里服务器如果是云服务器那安全组必须添加这个端口,                                          而且防火墙也要放行这个端口)

anon_world_readable_only=YES (匿名用户可以读文件 反之就是不能读)

科普:FTP的连接一般是有两个连接的,一个是客户程和服务器传输命令的,另一个

是数据传送的连接一种是Port模式,一种是Passive模式

Port模式:

当客户端C向服务端S连接后,使用的是Port模式,那么客户端C会发送一条命令告诉服

务端S(客户端C在本地打开了一个端口N在等着你进行数据连接),当服务端S收到这个Port命令

后 就会向客户端打开的那个端口N进行连接,这种数据连接就生成了。

Pasv模式:

当客户端C向服务端S连接后,服务端S会发信息给客户端C,这个信息是(服务端S在本地打开

了一个端口M,你现在去连接我吧),当客户端C收到这个信息后,就可以向服务端S的M端口

进行连接,连接成功后,数据连接也建立了。

(详细资料参考:https://blog.csdn.net/newborn2012/article/details/15812821/ 这篇博客)

六、设置文件权限

vsftp默认文件上传路径 /var/ftp/pub

其中 pub文件要更改权限

chmod 777 pub

(可以看到,图片123456.jpg 能正常上传也能删除并且能建立新的文件夹)

到这里vsftp已经安装好了并进行了基本配置(在这里使用的是匿名登录)

systemctl enable vsftpd  添加到开机启动

七、vsftp 配置文件翻译

anonymous_enable=YES 是否允许匿名登陆

local_enable=YES 允许本地登陆

write_enable=YES 启用任何形式的ftp 写入命令

local_umask=022 FTP上本本地的文件权限,默认是077,不过vsftp安装后的配置文件里默认是022

anon_upload_enable=YES 允许匿名ftp 用户上传文件

anon_mkdir_write_enable=YES 允许匿名用户 创建新的目录

dirmessage_enable=YES 激活目录消息,向远程用户发送消息,进入某个目录

xferlog_enable=YES 激活上传/下载 日志记录

connect_from_port_20=YES 确保RORT传输连接来自端口 20

chown_uploads=YES

chown_username=whoever

设置 匿名用户上传文件的默认用户,不推荐使用root

xferlog_file=/var/log/xferlog 日志文件路径

xferlog_std_format=YES 日志文件使用标准ftpd xferlog格式的日志文件 ,默认位置 /var/log/xferlog

idle_session_timeout=600 更改超时空闲会话的默认值

data_connection_timeout=120 超时数据连接的默认值

nopriv_user=ftpsecure 创建ftp服务器 独立的用户

async_abor_enable=YES 启用 异步 ABOR 请求

ascii_upload_enable=YES 允许ASCII模式上传文件

ascii_download_enable=YES 允许ASCII模式下载文件

ftpd_banner=Welcome to blah FTP service. 自定义登陆标题字符串

deny_email_enable=YES 指定不允许匿名登陆电子邮件

banned_email_file=/etc/vsftpd/banned_emails 默认路径

chroot_local_user=YES

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

指定 chroot 参数

CHROOT就是Change Root,也就是改变程序执行时所参考的根目录位置。CHROOT可以增进

系统的安全性,限制使用者能做的事

ls_recurse_enable=YES 启用 ls –R 选项

listen=NO 启用 listen 指令,vsftp 以独立模式运行侦听ipv4 套接字,该指令不能同时

使用 with listen_inv6 指令

listen_ipv6=YES 监听ipv6

pam_service_name=vsftpd 虚拟用户使用PAM认证方式

userlist_enable=YES 只允许userlist 文件中的账户登陆

tcp_wrappers=YES 是否允许tcp_wrappers 管理

anon_other_write_enable=YES 允许匿名用户改名和删除文件

anon_world_readable_only=YES 匿名用户可以读文件 反之就是不能读

pasv_min_port=30000

pasv_max_port=35000 PASV模式下指定端口范围

最新文章

  1. 【探索】在 JavaScript 中使用 C 程序
  2. TaskCompletionSource<TResult>
  3. Java基础之集合与泛型
  4. occ代码分析
  5. 定位form光标行
  6. dipole antenna simulation by FEKO
  7. ios程序开发杂记
  8. 将矩阵转化为LibSvm需要的格式
  9. MyEclipse10.7的 at com.genuitec.eclipse.ast.deploy.core.Deployment.<init>
  10. Maven 解决JAR包冲突
  11. BZOJ1725: [Usaco2006 Nov]Corn Fields牧场的安排
  12. Centos7架设NMP服务器笔记
  13. Win7如何分享局域网并设置共享文件夹账户和密码
  14. leetcode之Find All Numbers Disappeared in an Array
  15. Golang 入门系列(六)理解Go中的协程(Goroutine)
  16. 集合的遍历以及在Spring中的注入
  17. 在安卓手机上安装完整kali linux系统
  18. PCA实现教程
  19. flask 文件转为pdf并添加二维码
  20. python协程的简单了解

热门文章

  1. Dubbo2.7的Dubbo SPI实现原理细节
  2. 2023计算机领域顶会(A类)以及ACL 2023自然语言处理(NLP)研究子方向领域汇总
  3. springcloud 09 spring cloud gateway01 基本介绍
  4. Listen 1音乐播放器
  5. jdbc访问KingbaseES数据库SocketTimeoutException Read timed out
  6. 钓鱼攻击之:Lnk 文件钓鱼
  7. Cobalt Strike 之: Malleable C2 流量伪造与加密
  8. CCRD总目录(2007年至今,动态更新中)
  9. VScode本地搭建服务代码如何让其他人访问?
  10. 如何把已安装的nodejs高版本降级为低版本(图文教程)