【Linux】FTP服务

Table of Contents

1.FTP协议

2.实验环境

3.ftp服务的基本信息

3.1 搭建ftp服务器

3.2 ftp服务测试

3.2.1匿名用户

3.2.2 本地用户

4.ftp虚拟用户的设定


1.FTP协议

FTP(File Transfer Protocol,文件传输协议) 是 TCP/IP 协议组中的协议之一
FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端
其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源
在开发网站的时候,通常利用FTP协议把网页或程序传到Web服务器上
由于FTP传输效率非常高,在网络上传输大的文件时,一般也采用该协议
默认情况下FTP协议使用TCP端口中的 20和21这两个端口,其中20用于传输数据,21用于传输控制信息
但是,是否使用20作为传输数据的端口与FTP使用的传输模式有关
如果采用主动模式,那么数据传输端口就是20;如果采用被动模式,则具体最终使用哪个端口要服务器端和客户端协商决定

2.实验环境

首先我们决定用server虚拟机作为ftp服务端,所以首先我们要检查他的网络配置

然后我们配置对应版本的yum源

内核及防火墙关闭

3.ftp服务的基本信息

/var/ftp                  默认发布目录
/var/ftp/pub/             默认发布目录的子目录
/etc/vsftpd/vsftpd.conf   服务配置文件

报错id:

500文件系统权限过大
530用户认证失败
550服务本身功能为开放
553本地文件系统权限过小

3.1 搭建ftp服务器

一台主机可以同时做客户端,也可以做服务端

第一步:安装 ftp服务

第二步:打开ftp服务

第三步:查看该服务的安装目录

第四步:查看该服务的配置文件

第五步:防火墙通过ftp服务

3.2 ftp服务测试

3.2.1匿名用户

1)匿名用户登陆限制

anonymous_enable=YES|NO

2)匿名用户上传

anon_upload_enable=YES|NO

3)匿名用户家目录修改

anon_root=/westos

4)匿名用户上传文件默认权限修改

anon_umask=xxx

5)匿名用户建立目录

anon_mkdir_write_enable=YES|NO

6)匿名用户下载

anon_world_readable_only=YES|NO 设定参数值为no表示匿名用户可以下载

7)匿名用户删除

anon_other_write_enable=YES|NO

8)匿名用户使用的用户身份修改

chown_uploads=YES

chown_username=student

9)最大上传速率

anon_max_rate=102400

dd if=/dev/zero of=/mnt/bigfile bs=1M count=1000 截取一个1G大的文件

10)最大链接数

max_clients=2最多链接两台主机

在这里插入图片描述

在这里插入图片描述

3.2.2 本地用户

1)本地用户限制登陆

local_enable=YES|NO

2)本地用户写权限

write_enable=YES|NO

3)本地用户家目录更改

local_root=/westos   将本地用户登陆家目录更改为/westos

4)本地用户上传文件权限

local_umask=xxx

5)限制本地用户浏览目录

chroot_local_user=YES

chmod u-w /home/*

6)本地用户黑名单建立

chroot_local_user=NO

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

 

7)本地用户白名单建立

chroot_local_user=YES

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

8)限制本地用户登陆黑名单

vim /etc/vsftpd/ftpusers 只能为黑名单

9)用户临时黑名单

vim /etc/vsftpd/user_list

10)用户临时白名单

userlist_deny=NO

vim /etc/vsftpd/user_list

4.ftp虚拟用户的设定

1)给ftp服务器创建虚拟帐号身份,更加安全。

vim /etc/vsftpd/loginusers (虚拟账户名单)

2)虚拟用户帐号身份指定

guest_username=ftpuser

chmod u-w /home/ftpuser

3)虚拟账户家目录独立设定

使虚拟用户的登陆进去不再是ftp用户的默认家目录

vim /etc/vsftpd/vsftpd.conf

local_root=/ftpuserhome/$USER

user_sub_token=$USER

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

mkdir /ftpuserhome

chgrp ftpuser /ftpuserhome

chmod g+s /ftpuserhome

mkdir /ftpuserhome/ftpuser{1…3}

在这里插入图片描述

验证:lftp 172.25.254.111 -u user1

ls 可以看到此时user1的家目录是他自己的家目录

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值