CentOS 7安装配置vsftp并搭建FTP(一)

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: CentOS 7安装配置vsftp并搭建FTP(一)

一、vsftp安装环境

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

1

以上自己安装vsftp系统环境

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

2

如果没有安装vsftp现在安装

yum -y install vsftpd

三、关闭CentOS7的防火墙

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

四、启动vsftp服务

systemctl restart vsftpd.service # 重启服务
systemctl start vsftpd.service # 启动服务
systemctl status vsftpd.service # 服务状态查看

3

我的服务器已经装好了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

4

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

5

到这里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模式下指定端口范围

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
2天前
|
消息中间件 Linux API
centos7 安装rabbitmq自定义版本及配置
centos7 安装rabbitmq自定义版本及配置
|
1天前
|
弹性计算 关系型数据库 MySQL
centos7 mysql安装及配置
本文详细介绍了在阿里云服务器ECS上通过yum源安装MySQL 8.0.12的过程,包括更新yum源、下载并安装MySQL源、解决安装过程中可能遇到的问题等步骤。此外,还介绍了如何启动MySQL服务、设置开机自启、配置登录密码、添加远程登录用户以及处理远程连接异常等问题。适合初学者参考,帮助快速搭建MySQL环境。
15 8
centos7 mysql安装及配置
|
10天前
|
Ubuntu 网络协议 Linux
liunx各大发行版(centos,rocky,ubuntu,国产麒麟kylinos)网卡配置和包管理方面的区别
本文对比了Linux主要发行版CentOS、Rocky Linux、Ubuntu及国产Kylin在网卡配置与包管理上的差异。
|
15天前
|
Linux 开发工具
成功解决:CentOS 7中如何配置修改Vim
这篇文章介绍了如何在CentOS 7系统中配置和修改Vim编辑器的设置。文章首先指导读者如何检查Vim是否已经安装,如果未安装完全,提供了安装Vim的命令。接着,文章详细说明了如何编辑`/etc/vimrc`文件来配置Vim,包括设置显示行号、显示当前模式、光标位置信息、自动缩进和语法高亮等。最后,文章通过对比展示了配置前后使用vi和vim打开相同文本的效果差异,强调了Vim配置后的优势。
成功解决:CentOS 7中如何配置修改Vim
|
17天前
|
存储 安全 Linux
新 CentOS 7 服务器的基本配置
新 CentOS 7 服务器的基本配置
21 1
|
20天前
|
Java Linux Docker
CentOS7 Docker 安装,配置国内镜像
CentOS7 Docker 安装,配置国内镜像
401 2
|
24天前
|
监控 安全 Linux
centos7安全防护配置
centos7安全防护配置
|
2月前
|
网络协议 Linux Python
Python脚本配置Centos静态ip地址
这是一个Python脚本,用于自动化配置CentOS系统的静态IP地址。脚本创建或修改文件,填写接口名(如ens33)、IP地址、子网掩码、网关和DNS。运行时需替换变量值并使用`sudo`以管理员权限执行。完成配置后,它会重启网络服务。注意,用户应根据实际网络环境调整参数。
109 4
Python脚本配置Centos静态ip地址
|
16天前
|
网络协议 Linux 网络安全
Hyper-v 如何配置 Centos7 虚拟机网络?
Hyper-v 如何配置 Centos7 虚拟机网络?
|
16天前
|
存储 安全 Java
在CentOS 7上安装和配置Elasticsearch的方法
在CentOS 7上安装和配置Elasticsearch的方法
50 0
下一篇
云函数