目录

一、FTP协议

1.介绍

2.用处

3.FTP原理

4.FTP工作模式

(1)主动模式

(2)被动模式

5.FTP实现

(1)wuftpd

(2)proftpd

(3)vsftpd

二、FTP服务的安装与配置

1.安装vsftpd软件包

2.安装FTP协议

3.重启FTP服务

4.防火墙规则

三、搭建匿名用户的FTP服务器

1.匿名用户

2.本地用户

3.虚拟用户模式

4.查看相关配置文件

5.和匿名用户有关的配置

6.配置实例

四、本地用户的FTP服务

1.添加账户

2.修改配置文件

(1)禁止匿名用户登录

(2)允许本地用户登录

(3)设置本地用户根目录

(4)本地用户权限是否限制

(5)激活chroot功能,锁定用户

(6)认证设置

3.重启服务

五、FTP服务器搭建实训

1.实训目的

2.项目背景

3.操作

(1)设置匿名帐号具有上传、创建目录权限

(2)设置禁止本地user1用户登录ftp服务器。

(3)设置本地用户user2登录FTP服务器之后,在进入dir目录时显示提示信息“welcome to user's dir!

(4)设置将所有本地用户都锁定在家目录中

(5)设置只有指定本地用户user1和user2可以访问FTP服务器

(6)配置基于主机的访问控制

(7)使用PAM实现基于虚拟用户的FTP服务器的配置。


一、FTP协议

1.介绍

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

FTP在文件传输的一个重要特定是支持断点续传

2.用处

进行web服务器的数据更新

经常需要共享软件或文件资料等信息

需要在不同的OS之间传输数据

文件尺寸较大,无法通过邮箱等工具传递的时候

3.FTP原理

一个完整的FTP文件传输需要要建立两种类型的连接

一种是控制连接21应用层端口识别,用于在服务器与客户端之间传输控制信息,如用户标识、口令、传输与操作,另一种是数据连接20,用于实际传输文件数据

4.FTP工作模式

主要解决防火墙对于数据阻塞的问题,在C-S,C端一般处于内网,处于防火墙隔离区域

(1)主动模式

S端主动向C端发送数据,不符合规则,可能会被拒绝,一般情况下不用。

(2)被动模式

C端主动向S端发送21邀请,S端向C端以随机端口来发送数据,是最常用的

5.FTP实现

(1)wuftpd

历史最悠久的非商业FTP服务器之一,安全性较差,但是稳定性好

(2)proftpd

易配置,速度快,源代码干净,安全性较高,但是不够稳定

(3)vsftpd

安全,告诉,稳定(集群),配置简单

二、FTP服务的安装与配置

1.安装vsftpd软件包

使用yum命令安装vsftpd

yum install -y vsftpd

在ftp-server节点虚拟机中配置本地yum仓库,yum源中使用的centos7系统镜像源

mkdir /iso

mount /dev/cdrom(sr0) /iso

vi /etc/yum.repos.d/local.repo

[local]

name = local

baseur = life:///iso

gpgcheck = 1

enable = 1

yum clean all

yum repolist

2.安装FTP协议

yum install -y ftp

3.重启FTP服务

systemctl restart vsftpd

systemctl enable vsftpd

4.防火墙规则

firewall-cmd --permanet --add-service=ftp

firewall-cmd --reload

firewall-cmd --list-add

三、搭建匿名用户的FTP服务器

权限设置问题——那些用户有访问ftp资源的权限

1.匿名用户

登录FTP服务器不需要任何口令和密码,一般只能下载资源,不能上传

FTP服务器上的资源主目录/var/ftp,匿名账账号为anonymous或FTP,密码为空或者FTP,账号和密码共用,对用户来讲不用设置

2.本地用户

需要本地的账号和密码认证,可以上传资源也可以下载资源,一旦密码被攻破,资源可以畅通无阻的使用

3.虚拟用户模式

认证用户和密码使用的专门FTP数据库映射临时性账号,可以上传可以下载,生产环境常用

4.查看相关配置文件

cd /etc/vsftpd

ls

ftpusers:用户的黑名单 把用户加入黑名单就不能够使用ftp服务user_list 登录控制用户列表userlist_deny=NO允许列表中的用户访问ftp服务userlist_deny=YES(default,默认), 拒绝文件列表中的用户访问ftp服务器vsftpd.conf ftp的主配置文件 用户登录权限控制 服务器功能 超时设置等配置

cat -n vsftpd.conf |grep -v "#"

5.和匿名用户有关的配置

anonymous_enable=YES # 开启匿名用户登录local_enable=YES # 开启本地用户登录write_enable=YES # 允许本地用户写入local_umask=022 # 设置本地用户创建文件的umask值为022dirmessage_enable=YES # 激活消息目录xferlog_enable=YES # 是否启用日志connect_from_port_20=YES # 主动模式端口为20xferlog_std_format=YES # 将日志格式设置为标准格式listen=NO # 不可同时将listen与listen_ipv6都设置为YESlisten_ipv6=YES # 允许IPv4或IPv6客户端的连接pam_service_name=vsftpd # PAM(可插拔认证)服务的名称为vsftpduserlist_enable=YES # 允许用户列表生效tcp_wrappers=YES # 使用tcp_wrappers作为主机访问控制方式anonymous_enable=YES # 开启匿名用户登录anon_root=/var/ftp 共享目录指定anon_upload_enable=YES 是否可以下载anon_mkdir_write_enable=YES 是否可以创建文件目录anon_other_write_enable=YES 是否可以删除或者重命名

6.配置实例

op1.修改主机用户名为你自己名字
[root@whp ~]# setenforce 0
[root@whp ~]# vi /etc/selinux/config
SELINUX=disabledop2.创建共享目录与文件 /var/ftp/pub
[root@whp ~]# mkdir /var/ftp/pub
[root@whp ~]# cd /var/ftp/pub
[root@whp pub]# ls
[root@whp pub]# touch sample.tar
[root@whp pub]# echo "welcome to ftp server" > hello.txt
[root@whp pub]# ls
hello.txt  sample.tarop3:修改配置文件 /etc/vsftpd/vsftpd.conf
不能有重复参数,有的就修改 没有就在末行添加
不要复制 手动输入
anonymous_enable=YES
anon_root=/var/ftp
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YESop4:应用层firewall防火墙放行ftp服务
[root@whp vsftpd]# firewall-cmd --permanent --add-service=ftp
Warning: ALREADY_ENABLED: ftp
success
[root@whp vsftpd]# firewall-cmd --reload
success
[root@whp vsftpd]# firewall-cmd --list-all
public (active)target: defaulticmp-block-inversion: nointerfaces: ens33sources: services: ssh dhcpv6-client ftpports: protocols: masquerade: noforward-ports: source-ports: icmp-blocks: rich rules:
[root@whp vsftpd]# systemctl restart vsftpdop5:修改权限
[root@whp ~]# ll -ld /var/ftp/pub
drwxr-xr-x. 2 root root 41 Oct  9 17:30 /var/ftp/pub
[root@whp ~]# chmod o+w /var/ftp/pub
[root@whp ~]# ll -ld /var/ftp/pub
drwxr-xrwx. 2 root root 41 Oct  9 17:30 /var/ftp/pub
[root@whp ~]# systemctl restart vsftpdop6:验证
serverip 本机火狐浏览器 查看 ftp://server ip

四、本地用户的FTP服务

需求分析:禁止匿名用户登录仅允许本地用户登录,账号1和账号2锁定在目录/web/www/html

1.添加账户

useradd -s /sbin/nologin 用户名

2.修改配置文件

(1)禁止匿名用户登录

anonymous_enable=NO

(2)允许本地用户登录

local_enable=YES

(3)设置本地用户根目录

local_root=/web/www/html

(4)本地用户权限是否限制

chroot_local_user=NO

chroot_list_enable=YES

(5)激活chroot功能,锁定用户

chroot_list_file=/etc/vsftpd/chroot_listallow_writeable_chroot=YES

vi chroot_list

(6)认证设置

write_enable=YES

pam_service_name=vsftpd # PAM(可插拔认证)服务的名称为vsftpd

3.重启服务

systemctl restart vsftpd

五、FTP服务器搭建实训

1.实训目的

掌握vsftpd服务器的配置方法。 熟悉FTP客户端工具的使用。掌握常见的FTP服务器的故障排除。

2.项目背景

某企业网络拓扑图如下图所示,该企业想构建一台FTP服务器,为企业局域网中的计算机提供文件传送任务,为财务部门、销售部门和OA系统提供异地数据备份。要求能够对 FTP 服务器设置连接限制、日志记录、消息、验证客户端身份等属性,并能创建用户隔离的FTP站点。

3.操作

(1)设置匿名帐号具有上传、创建目录权限

(2)设置禁止本地user1用户登录ftp服务器。

(3)设置本地用户user2登录FTP服务器之后,在进入dir目录时显示提示信息“welcome to user's dir!

(4)设置将所有本地用户都锁定在家目录中

(5)设置只有指定本地用户user1和user2可以访问FTP服务器

(6)配置基于主机的访问控制

实现如下功能:

拒绝192.168.6.0/24访问。

对域jnrp.net和192.168.2.0/24内的主机不做连接数和最大传输速率限制。

对其他主机的访问限制每IP的连接数为1,最大传输速率为20KB/S

(7)使用PAM实现基于虚拟用户的FTP服务器的配置。

7. 1使用PAM实现基于虚拟用户的FTP服务器的配置。

7.2生成虚拟用户所需的PAM配置文件/etc/pam.d/vsftpd。

7.3修改vsftpd.conf文件。

Linux系统中的FTP服务配置与管理相关推荐

  1. Linux系统下安装FTP服务

    Linux系统下安装FTP服务 1. 简介 2. 工作原理 3. FTP的安装与配置 1. 下载vsftp安装包 2. 检查是否已经安装了vsftp,后面会介绍怎样卸载 3. 安装vsftpd 4. ...

  2. linux redis数据库安装配置,Linux系统中redis的安装配置步骤

    Linux系统中redis的安装配置步骤 发布时间:2020-06-23 10:13:36 来源:亿速云 阅读:87 作者:Leah 这篇文章将为大家详细讲解有关Linux系统中redis的安装配置步 ...

  3. linux系统如何启用ftp服务

    在linux操作系统中,ftp功能是最常用的服务之一,平常写代码都是在windows下完成再通过ftp传到linux下.由此ftp服务必不可少. 但在刚安装的linux操作系统中,ftp服务一般是不启 ...

  4. Linux网络服务(中)FTP服务配置

    FTP服务 1. FTP简介 FTP文件传输协议,是Internet上用来传送文件的协议,由一系列规格说明文档组成,通过FTP协议,就可以完成两台计算机之间的复制.FTP标准命令TCP端口号为21,P ...

  5. 【Linux系统中的】虚拟机的安装管理及虚拟机快照的建立

    前言: 当我们在Linux系统中进行有关操作时,为了避免错误操作引起的系统崩溃, 我们经常选择在虚拟机上完成相关实验,那么虚拟机是如何安装的,今天我将分 享一下有关虚拟机的安装知识,以及1虚拟机的快照 ...

  6. linux中的FTP服务配置详解

    本文主要内容有:linux中安装vsftpd(也就是FTP服务). 1.使用匿名用户上传和下载文件. 2.使用身份验证的方式上传和下载文件. 3.建立虚拟用户(步骤比较多). 4.为单独的用户建立单独 ...

  7. linux系统中apache虚拟目录配置

    在搭建网站的时候,我们会经常在同一台服务器上面搭建多个站点,这时候就需要用到apache的虚拟机知识.下面就linux系统下apache虚拟目录的配置说简要说明: 1.源代码安装apache + PH ...

  8. Linux系统中的日志服务管理

    目录 1.日志介绍 1.1 什么是日志 1.2 Linux系统使用的两种系统日志服务 1.3 ELK 2.rsyslog的管理 2.1 系统日志术语 1.2 实验 1.日志介绍 1.1 什么是日志 网 ...

  9. Linux系统中的日志及时间时区管理超实用

    目录 一.journal 1.journalctl命令的用法 2.用journald服务永久存放日志 二.rsyslog 1.自定义日志采集 2.日志的远程同步 3.更改日志采集格式 三.timeda ...

最新文章

  1. 欠拟合、过拟合及其解决方法
  2. Spring Boot使用Druid和监控配置
  3. python三层装饰器-python三大神器===》装饰器
  4. leetcode算法题--球会落何处
  5. Ubutu16.04+Cuda9.2/9.0+Cudnn7.12/7.05+TensorFlow-gpu-1.8/1.6
  6. 算法导论笔记:17摊还分析
  7. SICStus Prolog 3.10.0正式版下载
  8. Django REST framework+Vue 打造生鲜超市(五)
  9. brew php mysql_MAC下用homebrew安装及配置apache、php和mysql
  10. JAVA通过JCO连接SAP例子
  11. 陶陶摘苹果(洛谷-P1046)
  12. Puppet安装部署篇(一)
  13. [BZOJ] 1712: [Usaco2007 China]Summing Sums 加密
  14. CF 246E. Blood Cousins Return [dsu on tree STL]
  15. nltk 中的 sents 和 words
  16. hdu 1085 Holding Bin-Laden Captive! (母函数)
  17. Spring Cloud Sleuth 使用教程
  18. EXCEL VLOOKUP函数的使用(二)
  19. python迭代遍历目录下所以文件(Iterating through directories with Python)
  20. IDEA的TODO的使用

热门文章

  1. 幻方是一种很神奇的N*N矩阵 问题 A: 神奇的幻方
  2. 打造集成SATA/SCSI驱动程序的XP SP3系统盘
  3. 【计算机网络】异步传输与同步传输
  4. 转:[MSSQL] - SQL Server 2000 系统表详细说明
  5. 直播预告:Cocos 董事长陈昊芝论道云游戏高峰论坛
  6. system+执行mysql命令_Windows环境下通过MySQL以SYSTEM身份执行系统命令 -电脑资料
  7. java开发程序员辛苦吗,震撼来袭免费下载!
  8. Linux文件内容显示
  9. tightvnc由于目标计算机积极拒绝,TightVNC的连接可以作出,因为目标机器积极地拒绝它...
  10. 安装minikube网络访问问题解决