实验简介
实验所属系列:Linux服务器搭建

实验对象: 本科/专科信息安全专业

相关课程及专业:计算机基础,计算机网络

实验时数(学分):2学时

实验类别:实践类

预备知识
本实验要求实验者具备如下的相关知识

也许您对FTP不陌生,但是您是否了解FTP到底是个什么玩意? FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为 “文传协议” 用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。用户可以通过它把自己的PC机与世界各地所有运行FTP协议的服务器相连,访问服务器上的大量程序和信息。FTP的主要作用,就是让用户连接上一个远程计算机(这些计算机上运行着FTP服务器程序)查看远程计算机有哪些文件,然后把文件从远程计算机上拷到本地计算机,或把本地计算机的文件送到远程计算机去。FTP用的比NFS更多,所以请您一定要熟练配置它。

其实在CentOS或者RedHat Linux上有自带的ftp软件叫做vsftp, 但我们今天介绍的并不是它,如果您有兴趣可以自行查阅资料,本次实验我们使用pure-ftpd搭建ftp服务器,因为这个软件比vsftp配置起来更加灵活和安全。

pure-ftpd 官网是 http://www.pureftpd.org/project/pure-ftpd

下载:

wget http://download.pureftpd.org/pure-ftpd/releases/obsolete/pure-ftpd-1.0.32.tar.bz2

客户端测试使用lftp

实验目的

1、安装pure-ftp;

2、配置pure-ftp;

3、测试pure-ftp。

实验环境

CentOS6.5 试验台
网络拓扑见下。图:

NS1: centos6.x  IP:10.1.1.125

Client:centos6.x  IP:10.1.1.124

查看本机的IP请使用:ifconfig 命令

实验步骤一

安装 Pure-ftp

之前我们都是说 用 yum 安装,这次我们使用源代码编译安装。编译安装所需要的软件:

软件的准备:

cmake :用来编译的 ;

gcc编译器;

gcc-gcc++编译器;

bison:一个通用的解析器;

可以用yum安装完成:yum install -y cmake gcc gcc-gcc++ bison

首先我们切换到 /opt目录 ,然后解压pure-ftp压缩包,然后进入 pure-ftp目录。

然后进行编译安装:

0x1 :

./configure \

--prefix=/usr/local/pureftpd \

--without-inetd \

--with-altlog \

--with-puredb \

--with-throttling \

--with-peruserlimits  \

--with-tls

./configure 是源代码安装的第一步,主要的作用是对即将安装的软件进行配置,检查当前的环境是否满足要安装软件的依赖关系。一步一般用来生成 Makefile,为下一步的编译做准备。你可以通过在 configure 后加上参数来对安装进行控制。我们可以用 ./configure -help 查看可以添加哪些参数。

0x2 make :编译

make工具最主要也是最基本的功能就是通过makefile文件来描述源程序之间的相互关系并自动维护编译工作。
0x3 make install,这条命令来进行安装。

通常我们可以将 make 和make install 一起输入。像这样:

小提示:每执行一条命令,我们可以用 echo $? 来检测是否正确执行,而没有错误。

此命令的作用是显示上一条命令的返回结果。0代表命令执行成功。1-255都表示不成功。

实验步骤二

配置pure-ftp

pure-ftpd 编译安装很快就完成了,而且极少有出现错误的时候,下面就该配置它了:

在启动pure-ftpd之前需要先修改配置文件,配置文件为/usr/local/pureftpd/etc/pure-ftpd.conf。

0x1 我们需要手工建立配置文件目录,和将配置文件复制到配置文件目录,并修改权限

0x2 修改配置文件:/usr/local/pureftpd/etc/pure-ftpd.conf

我们要修改的很好,修改puredb的存储路径就行了,大概在126行,去掉前面的 # 注释,路径改成  /usr/local/pureftpd/etc/pureftpd.pdb


保存并退出。

0x3 建立pure-ftp账号


/usr/local/pureftpd/bin/pure-pw useradd ftp_test01  -u www -d /data/www/

其中,-u将虚拟用户ftp_test01与系统用户www关联在一起,也就是说使用ftp_test01账号登陆ftp后,会以www的身份来读取文件或下载文件。-d 后边的目录为ftp_user1账户的家目录,这样可以使ftp_test01只能访问其家目录/data/www/。password 是要你设置ftp_test01的密码。

到这里还未完成,还有最关键的一步,就是创建用户信息数据库文件:

/usr/local/pureftpd/bin/pure-pw mkdb

pure-pw还可以列出当前的ftp账号,当然也可以删除某个账号, 我们再创建一个账号:


列出账号:


删除账号:

0x4 启动 pure-ftp :

/usr/local/pureftpd/etc/pure-config.pl /usr/local/pureftpd/etc/pure-ftpd.conf


如果是启动成功,会显示一行长长的以Running开头的信息,否则那就是错误信息。

实验步骤三

 测试pure-ftp

0x1 :我们在客户端用lftp进行测试。在linux系统中,lftp是个功能强大的文件传输工具,支持命令补全、历史记录、多任务后台执行,还有书签、排队、镜像、断点续传、多进程下载等功能。

我们可以现在服务器上创建一个文档。

在本机上测试:

在客户端测试:

我们可以敲 help ,看看有哪些能用的命令哦~:

具体的命令帮助我们可以用 help command 来看。比如 put命令

0x2 lftp常用命令:

显示工作目录:lpwd,pwd ;分别是显示本地工作目录,和远程ftp工作目录。

切换目录:lcd,cd;分别是切换本地工作目录,和远程目录。

切换远程目录,我们可以先创建一个,再试试。当然你得有权限创建。权限限制可以通过修改配置文件实现

下载命令:get ,mget,pget;分别对应的是下载单个文件,多个文件,和多线程下载。

当我get 了一个文件,默认情况下会下载到当前目录(即你执行lftp 命令的那个目录,不是远程上的目录哦)。

显示本地工作目录的文件列表:!ls

其中, ! 表示执行本地命令,lftp中没有与 ls 对应的本地命令 lls, 所以要使用 !ls 显示本地目录文件。

上传命令:put,mput;分别是上传单个文件,和多个文件

更多命令用法,自行查阅资料。(manpage不要忘了哦~)

退出使用 exit :

具体实验步骤:

更安全的ftp服务器Pure-FTP搭建(4)相关推荐

  1. Android中FTP服务器、客户端搭建以及SwiFTP、ftp4j介绍

    本文主要内容: 1.FTP服务端部署---- 基于Android中SwiFTP开源软件介绍: 2.FTP客户端部署 --- 基于ftp4j开源jar包的客户端开发 : 3.使用步骤 --- 如何测试我 ...

  2. win7局域网自建ftp服务器,win7系统搭建FTp服务器局域网内传输文件的解决教程

    win7系统使用久了,好多网友反馈说win7系统搭建FTp服务器局域网内传输文件的问题,非常不方便.有什么办法可以永久解决win7系统搭建FTp服务器局域网内传输文件的问题,面对win7系统搭建FTp ...

  3. suse系统搭建ftp服务器,linux suse 搭建ftp服务器

    linux suse 搭建ftp服务器 内容精选 换一换 设置HECS登录密码设置Windows云服务器登录密码设置Linux云服务器登录密码登录HECS了解Windows云服务器的登录方式了解Lin ...

  4. linux ftp做yum源,Linux YUM以ftp服务器为源搭建

    Linux YUM对于电脑使用的玩家的常用软件,然后我就学习及深入的研究Linux YUM,在这里和大家一起探讨Linux YUM的使用方法,希望对大家有用.以ftp服务器为源. 一. 准备工作 1. ...

  5. win10搭建FTP服务器和FTP的使用

    文章目录 一. FTP简介 二. win10环境搭建FTP服务器流程 1. 安装FTP服务和IIS管理控制台 2. 添加FTP站点 3. 测试 4. FTP客户端下载 三. python执行FTP上传 ...

  6. android建ftp服务器,Android 快速搭建FTP服务器的方法

    一.概述 打开你的手机,找到文件管理->分类->远程管理,点击启动服务,这样大家可以在局域网内使用电脑访问你手机上的文件了,当然你也可以设置账号和密码,防止"小人"共享 ...

  7. 如何同步FTP服务器文件,ftp服务器文件同步

    ftp服务器文件同步 内容精选 换一换 安装完Mind Studio并进入相关工程页面后,如果用户使用算子工程或应用工程开发了相关程序,需要进行工程的编译和运行,用于生成相关二进制文件,进行工程编译前 ...

  8. ftp服务器型号,ftp服务器的类型及其特点

    ftp服务器的类型及其特点 内容精选 换一换 用户在华东区创建了一个保护组及其保护实例,如表1所示.删除该保护实例,但不删除容灾站点服务器.然后在弹性云服务器页面,卸载容灾站点服务器的云硬盘,并将该云 ...

  9. 修改ftp服务器地址,ftp服务器的地址修改

    ftp服务器的地址修改 内容精选 换一换 您可以通过华为云的域名注册服务管理您的域名,如表1所示. 环境搭建完成后,若您需要修改Atlas 200 DK的IP地址,请参考以下步骤操作.在Ubuntu服 ...

  10. iphone文件访问ftp服务器,ipad ftp服务器 iPhone/iPad访问FTP服务器设置步骤

    ipad ftp服务器 iPhone/iPad访问FTP服务器设置步骤 2013-02-27 15:35:39 脚本之家 有时候出门在外需要用到电脑中的文件,但是却没有携带电脑或者U盘,那么该怎么办呢 ...

最新文章

  1. Java中 实体类 VO、 PO、DO、DTO、 BO、 QO、DAO、POJO的概念
  2. 【 FPGA 】关于FPGA中复位的设计问题(包含异步复位,同步释放方案)
  3. Linux下多网卡MAC配置问题
  4. SAP Hybris和ABAP Netweaver里的DAO(Data access object)
  5. 使用java将字符串写入到指定的文件中
  6. 【转载】C++知识库内容精选 尽览所有核心技术点
  7. 大话数据结构第一章理解
  8. 截图截取各种右键菜单的方法
  9. idea怎么和mysql连接并执行_IDEA配置mysql数据库的操作
  10. 数据工作本质:从业务中来,到业务中去
  11. datatable排序:DataTable的排序、检索、合并
  12. 如何用 Nginx 禁止国外 IP 访问网站 ?
  13. c#.net配置mysql数据库连接池_c# 创建 mysql数据库连接池
  14. 计算机金融学校排名2015,金融学院2015级各专业排名情况统计表
  15. js中字符串截取函数及其方法
  16. 手把手教你使用Java生成助记词、私钥、地址|Java区块链钱包生成助记词、地址
  17. 每日一课 | 如何用Python编写一个Lisp解释器
  18. APP进行微信分享,提示签名不一致解决方案
  19. 数据库系统概论 第七章设计数据库
  20. No.102-HackTheBox-Linux-Joker-Walkthrough渗透学习

热门文章

  1. 中国科学院大学重庆学院继续教育学院学前教育专业
  2. 宏观低速物理 '牛顿篇'
  3. slite的一些基本介绍
  4. 工业机器人组成结构【拆卸 / 组装 KUKA 工业机器人】
  5. 【毕设项目】基于单片机的遥控小车设计与实现 - 嵌入式 物联网 stm32 c51
  6. Java云同桌学习系列(十五)——MySQL数据库
  7. 软件部件仿真测试平台的设计与实现(计算机工程与设计2017-11)
  8. crackme.chm之Chafe1
  9. java基础(11)函数重载以及函数递归求和
  10. io端口与ion内存