在Linux中搭建一个ftp服务器,以供两个工作小组保管文件使用。禁用匿名。第一个小组使用ftp账号:ftp1,工作目录在:/var/ftp/ftp1;第二个小组使用ftp2,工作目录在:/var/ftp/ftp2。

  两个小组互相不能访问各自的文件,需要限制用户不能离开自己的工作目录。

【实现步骤】

1.检查安装vsftpd服务器

以root进入终端后(其他账户进入终端的可以用su root 输入密码后进入root 模式)之后,在终端命令窗口输入以下命令进行验证:# rpm –qa | grep vsftpd。如果结果显示为“vsftpd-1.1.3-8”,则说明系统已经安装vsftpd服务器。若没有回复,即系统中没有安装。

2.rhel版本的系统光盘中带有vsftpd安装包,所以接下来,是挂载系统光盘到/media下以便调取。

3.上述截图显示本系统中没有安装vsftpd服务器,则用rpm命令安装。

即在终端命令窗口中安装vsftpd的命令: #rpm -ivh vsftpd-1.1.3-8.i386.rpm。

(1)先mount光驱,在/mnt/cdrom/Server目录里有rpm,rpm -ivh vsftpd*

4.创建用户

(1)首先要启动服务

(2)创建两个用户

5.vsftpd的配置

安装完之后在/etc/vsftpd/路径下会存在三个配置文件。

vsftpd.conf: 主配置文件

ftpusers: 指定哪些用户不能访问FTP服务器,这里的用户包括root在内的一些重要用户。

user_list: 指定的用户是否可以访问ftp服务器,通过vsftpd.conf文件中的userlist_deny的配置来决定配置中的用户是否可以访问,userlist_enable=YES ,userlist_deny=YES ,userlist_file=/etc/vsftpd/user_list 这三个配置允许文件中的用户访问FTP。

(1)查看主配置文件的默认配置:
(使用:cat /etc/vsftpd/vsftpd.conf |grep -v '^#';)

(2)修改配置文件:

登录ftp后会发现,用户可以访问其他目录,并且具有mpsp组的权限,这样做是不允许的,我们需要将用户的访问范围控制在其主目录下。方法如下:

a. vi /etc/vsftpd/vsftpd.conf进入ftp配置文件目录并编辑此文件,

b.找到#chroot_list_enable=YES,删除前面的那个#号,表示开启此限制功能;

找到chroot_list_file:chroot_list_file=/etc/vsftpd/chroot_list,删除前面的那个#号,表示开启此限制功能;加入chroot_local_use=NO

(进入编辑框后按i进行开始编辑)

c.进入配置文件后,在末尾加入如下三行:

① userlist_enable=YES

userlist_deny=NO

userlist_file=/etc/vsftpd/vsftpd.user_list

d.禁止匿名用户登录

(编辑完,按esc后使用“:wq”保存并退出)

e. 对一些文件进行编辑

①  在etc目录找到vsftpd.chroot_list文件,进入编辑状态

加入你要限制的用户名,一行一个用户,比如ftp2

(编辑完,按esc后使用“:wq”保存并退出)

②进入vsftpd目录,找到vsftpd.user_list,键入ftp11,意味允许ftp11登陆ftp服务器

(编辑完,按esc后使用“:wq”保存并退出)

再在本机上,通过控制台,用ftp1通过ftp访问系统,用户成功登陆,并且成功的被限制在自己的主目录下,无法访问其他目录。

依次方法创建了2个用户,ftp1、ftp2。

查看ftp状态 sestatus -b | grep ftp:

然后输入:

关闭防火墙:

以下步骤是实现主机和虚拟机的互相ping通:


最终结果:

在Linux中搭建一个FTP服务器的更多相关文章

  1. Linux中搭建一个ftp服务器详解

    来源:Linux社区  作者:luzhi1024 详解Linux中搭建一个ftp服务器. ftp工作是会启动两个通道:控制通道 , 数据通道在ftp协议中,控制连接均是由客户端发起的,而数据连接有两种 ...

  2. linux中搭建公网ftp服务器

    Linux搭建ftp服务器汇总整理 一.检查linux中是否已经安装vsftpd服务端软件 rpm -qa |grep vsftpd 二.卸载linux中的vsftpd服务端软件 rpm -e vsf ...

  3. Linux搭建一个FTP服务器

    1.安装vsftp 2.配置vsftpd.conf, vim /etc/vsftpd.conf 下面说说里面比较重要的选项 1 anonymous_enable=NO #不允许匿名用户 2 3 loc ...

  4. 一把鼻涕一把泪 搭建公网ftp服务器

    至于为什么要搭建公网ftp服务器,就当我心血来潮吧. ftp开源工具很多,咱用的是filezilla服务器.后来为了方便搭建web服务器,就改成了集成工具xampp.客户端工具也是filezilla ...

  5. 【转】windows和linux中搭建python集成开发环境IDE

    本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...

  6. 实战:使用SVN+apache搭建一个版本控制服务器

    今天讲的内容: 实战:使用SVN+apache搭建一个版本控制服务器 每天: 10:00 晚上:21:00 服务端:xuegod63.cn   IP:192.168.10.63 服务概述: SVN(s ...

  7. 【netty】(2)---搭建一个简单服务器

    netty(2)---搭建一个简单服务器 说明:本篇博客是基于学习慕课网有关视频教学.效果:当用户访问:localhost:8088 后 服务器返回 "hello netty"; ...

  8. 基于线程开发一个FTP服务器

    一,项目题目:基于线程开发一个FTP服务器 二,项目要求: 基本要求: 1.用户加密认证   2.允许同时多用户登录   3.每个用户有自己的家目录 ,且只能访问自己的家目录   4.对用户进行磁盘配 ...

  9. Linux中如何安装Apache服务器

    Linux中如何安装Apache服务器 由于学习的需要,所有手动安装了一下Apache源码包,安装过程中的问题千奇百怪,但是如果弄清楚了问题出在哪里,那么也不是太难.如果有学习者出现安装中的问题,可仔 ...

随机推荐

  1. Sql Server REPLACE函数的使用;SQL中 patindex函数的用法

    Sql Server REPLACE函数的使用 REPLACE用第三个表达式替换第一个字符串表达式中出现的所有第二个给定字符串表达式. 语法REPLACE ( ''string_replace1'' ...

  2. Linux怎么使用添加的新硬盘

    一.磁盘分区 装过系统后第一块磁盘的设备号是/dev/sda,在你添加一个新的磁盘后一般情况下是/dev/sdb *******进入fdisk界面***** # fdisk /dev/sdbDevic ...

  3. postfix之dovecot

    dovecot-1.0.rc14安装 注:我的系统是RHEL4一.RPM格式1.安装RPM包:2.编辑/etc/dovecot.conf其中,修改protocols = imap pop3 passd ...

  4. Charlie's Change_完全背包&&路径记录

    Description Charlie is a driver of Advanced Cargo Movement, Ltd. Charlie drives a lot and so he ofte ...

  5. C++11 | 正则表达式(4)

    C++11还支持正则表达式里的子表达式(也叫分组),用sub_match这个类就行了. 举个简单的例子,比如有个字符串"/id:12345/ts:987697413/user:678254& ...

  6. 四则运算<3>单元测试

    经过分析图一的结果正确,因为输出到文件是为了打印,不要求在线答题功能,因此为实现答题功能. 经过分析,结果正确,满足了选择要求. 选择这六组测试用例的原因是这六组用例将有无乘数法,有无括号,有无负数, ...

  7. 利用windows系统ftp命令编写的BAT文件上传[转]

    利用windows系统ftp命令编写的BAT文件上传[转] 利用windows系统ftp命令编写的BAT文件上传[转] 在开发中往往需要将本地的程序上传到服务器,而且用惯了linux命令的人来说.在w ...

  8. JavaScript数据结构——数组

    参考书籍:<学习JavaScript数据结构与算法>

  9. 【Avalon】获取隐藏元素的尺寸

    保存原来的属性 设置成显示的属性 获取尺寸 设置回原来的属性 var cssShow = { position: "absolute", visibility: "hid ...

  10. Day04_JAVA语言基础第四天

    1.循环(掌握) 1.什么时候使用(理解) 如果我们发现有很多重复内容的时候就要使用循环 2.好处(理解) 让我们的代码看起来更精炼了 3.循环的组成(理解) 1 初始化条件:一般定义的是一个初始变量 ...