Linux中FTP服务

本文详述了在Linux环境中如何配置FTP服务,包括设置匿名用户访问的FTP服务,赋予最大权限,以及如何切换到特定目录。同时,还介绍了如何启用本地用户验证并限制其仅能在自己的家目录中活动,确保FTP服务器的安全与可控性。
摘要由CSDN通过智能技术生成


前言

ftp用于在网络上进行文件传输的一套标准协议,它工作在 OSI 模型的第七层,TCP 模型的第四层, 即应用层, 使用 TCP 传输而不是 UDP, 客户在和服务器建立连接前要经过一个“三次握手”的过程, 保证客户与服务器之间的连接是可靠的, 而且是面向连接, 为数据传输提供可靠保证


一、FTP概述

  • FTP (File Transfer Protocol:文件传输协议)作用:Internet 上用来传送文件的协议。VSFTP全称(very secure FTP)
  • VSFTP模式:C / S 模式
  • FTP服务器默认使用TCP协议的20、21端口与客户端进行通信
    20端口用于建立数据连接,并传输文件数据
    21端口用于建立控制连接,并传输FTP控制命令
  • FTP数据连接分为主动模式和被动模式
    主动模式:服务器主动发起数据连接
    被动模式:服务器被动等待数据连接
[admin@c7-1 ~]$ yum info vsftpd				//查看信息
已加载插件:fastestmirror, langpacks
Determining fastest mirrors
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
可安装的软件包
名称    :vsftpd
架构    :x86_64
版本    :3.0.2
发布    :29.el7_9
大小    :173 k
源    :updates/7/x86_64
简介    : Very Secure Ftp Daemon
网址    :https://security.appspot.com/vsftpd.html
协议    : GPLv2 with exceptions
描述    : vsftpd is a Very Secure FTP daemon. It was written completely from
         : scratch.


二、设置匿名用户访问的FTP服务(最大权限)

关闭防火墙和增强型安全功能
[root@c7-1 ~]# systemctl stop firewalld
[root@c7-1 ~]# setenforce 0

[root@c7-1 ~]# yum install vsftpd -y   //安装vsftpd服务
[root@c7-1 ~]# cd /etc/vsftpd/
[root@c7-1 ~]# cp vsftpd.comf vsftpd.comf.bak    //备份

启动服务并设置开启自启
[root@c7-1 ~]# systemctl start vsftpd
[root@c7-1 ~]# systemctl enable vsftpd


1.修改配置文件

[root@c7-1 ~]# vim /etc/vsftpd/vsftpd.conf 
anonymous enable=YES		//开启匿名用户访问,默认已开启
write_enable=YES			//开放服务器的写权限(若要上传,必须开启)。默认已开启
anon_umask=022				//设置匿名用户所上传数据的权I限掩码(反掩码)
anon_upload_enable=YES		//允许匿名用户.上传文件。默认已注释,需取消注释
anon_ mkdir_write_enable=YES	//允许匿名用户创建(上传)目录。默认已注释,需取消注释
anon_other_write_enable =YES	//允许删除、重命名、覆盖等操作。需添加
chmod 777 7var/ftp/pub/			//为匿名访问ftp的根目录下的pub子目录设置最大权限,以便匿名用户上传数据


2.匿名访问测试

在win10 win+r,输入命令打开命令提示符

建立ftp连接
ftp 192.168.3.3
#匿名访问,用户名为ftp,密码为空,直接回车即可完成登陆

ftp>pwd			//匿名访问ftp的根目录为Linux系统的/var/ftp/目录
ftp>ls			//查看当前目录
ftp>cd pub		//切换到pub目录
ftp>get文件名	//下载文件到当前windows本地目录
ftp>put文件名	//上传文件到ftp目录
ftp>quit		//退出

3.设置本地用户验证访问ftp,并禁止切换到ftp以外的目录(默认登录的根目录为本地用户的家目录)

[root@c7-1 ~]# vim /etc/vsftpd/vsftpd.conf 
local_enable=Yes			//启用本地用户
anonymous_enable=NO			//关闭匿名用户访问
write_ enable=YES			//开放服务器的写权I限(若要上传,必须开启)
local_umask=077				//可设置仅宿主用户拥有被上传的文件的权限(反掩码)
chroot_local user=YES		//将访问禁锢在用户的宿主目录中
allow_writeable chroot=YES	//允许被限制的用户主目录具有写权限

#anon_mkdir_write_enable=YES	//注释掉
#anon_other_write_enable=YES	//注释掉

[root@c7-1 ~]# systemctl restart vsftpd

ftp 192.168.3.3

ftp://zhangsan@192.168.3.3
anon_root=/var/www/html		//anon root针对匿名用户
local_root=/var/www/html	//local root针对系统用户

使用user_list用户列表文件
[root@c7-1 ~]# vim /etc/vsftpd/user_list	//末尾添加张三用户
zhangsan


[root@c7-1 ~]# vim /etc/vsftpd/vsftpd.conf
userlist_enable=YES		//启用user list用户列表文件
userlist_deny=NO		//设置白名单,仅允许user_list用户列表文件的用户访问。默认为YES,为黑名单,禁用


总结

FTP也是一个应用程序,基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。可以使用FTP进行下载和上传。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值