知方号

知方号

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

一、vsftp安装环境

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

以上自己安装vsftp系统环境

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

如果没有安装vsftp现在安装

yum -y install vsftpd 三、关闭CentOS7的防火墙 systemctl stop firewalld.service停止firewallsystemctl 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=30000pasv_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=YESchown_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=YESchroot_list_enable=YESchroot_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=30000pasv_max_port=35000 PASV模式下指定端口范围

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至lizi9903@foxmail.com举报,一经查实,本站将立刻删除。