1. 实验环境

ubuntu14.04

2.vsftpd介绍

vsftpd 是“very secure FTP daemon”的缩写,是一款在Linux发行版中最受推崇的FTP服务器程序,安全性是它的一个最大的特点。

3.vsftpd的安装

3.1 打开终端(ctrl + alt + t)

输入:

sudo apt-get install vsftpd

4.配置vsftpd

4.1 修改vsftpd的配置文件。此类配置文件通常位于 /etc 目录下

sudo gedit /etc/vsftpd.conf

原文件中不少指令被注释,只要启用部分即可,一下是启用的命令(配置文件中对每一条都有具体说明)

listen=YES       # 服务器监听
anonymous_enable=YES # 匿名访问允许
local_enable=YES # 本地主机访问允许
write_enable=YES # 写允许
anon_upload_enable=YES
# 匿名上传允许,默认是NO,嫌麻烦的可以开起来。出了问题我不负责~
anon_mkdir_write_enable=YES # 匿名创建文件夹允许
dirmessage_enable=YES # 进入文件夹允许
xferlog_enable=YES # ftp 日志记录允许
connect_from_port_20=YES # 允许使用20号端口作为数据传送的端口
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem

保持后退出

4.2 设置ftp相关目录

安装完毕后,/srv下会增加一个ftp目录

同时系统会增加一个名为ftp的用户组,可通过如下代码查看:

sudo cat    /etc/shadow

截图如下:

我们在/srv/ftp目录下创建两个分别名为upload和download的目录,分别用于上传和下载:

cd /srv/ftp/
sudo mkdir download
sudo mkdir upload

接下来我们为刚才创建的几个目录设置权限

命令参考如下:

sudo chmod 755 /srv/ftp
sudo chmod 777 /srv/ftp/upload
sudo chmod 755 /srv/ftp/download

如此,一方面我们允许了用户组ftp访问/home/ftp (匿名访问);一方面赋予了用户组ftp对/srv/ftp/upload的写权利,因此网络上的用户可以方便地上传文件,但注意,当他们上传后,上传的 文件只有root对这些文件拥有权限,也就是说这个目录仅能用于上传,无法下载其中的文件;此外赋予了用户组ftp对 /home/ftp/download的读权利,同时我们拷贝进该目录下的文件对于用户组而言通常都有读权利,因此网络上的用户从此目录下能且仅能下载文 件。从而满足了我们预先的要求。

4.3 启动ftp:

 sudo service vsftpd start

查看当前所有进程:

ps -e

截图如下

至此服务器端vsftp的最基本配置已完成,vsftpd已开启(ubuntu默认未安装防火墙,如果有安装,请自行暂时关闭)

顺便也说一下关闭ftp的命令:

sudo service vsftpd stop

进程vsftpd查看命令:

pgrep vsftpd

4.4 vsftpd 设置用户目录,如果你设置了匿名用户也可以登录上传的话~这个可以省了~

  • 增加组
sudo groupadd ftpgroup
  • 修改vsftpd.conf
sudo gedit /etc/vsftpd.conf

将底下三行
#chroot_list_enable=YES
# (default follows)
#chroot_list_file=/etc/vsftpd/chroot_list
改为
chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd/chroot_list
  • 增加用户ftpuser并设置其目录为/home/nation/ftp/upload
sudo useradd -g ftpgroup -d /home/nation/ftp/upload -M ftpuser

(注:G:用户所在的组 d:表示创建用户的自己目录的位置给予指定M:不建立默认的自家目录,也就是说在/home下没有自己的目录)

  • 设置用户口令
passwd ftpuser
  • 编辑chroot_list文件
sudo gedit /etc/vsftpd.chroot_list
  • 重新启动vsftpd
sudo service vsftpd start

原文参考 http://blog.csdn.net/nation_chen/article/details/7066277

更多设置请参考http://blog.csdn.net/zsuguangh/article/details/6083390

ubuntu中安装ftp服务器的更多相关文章

  1. Ubuntu中安装FTP 服务器自己踩得坑

    12点多了,擦!做个码农真不容易呀! 系统:Ubuntu16.04 安装:FTP 步骤: 1.不管有没有一上来我先卸载: sudo apt-get purge vsftpd 2.再安装:sudo ap ...

  2. ubuntu下安装ftp服务器

    参考文献: 5.4 FTP 服务器 vsftpd - FTP 服务器安装 vsftpd 是可在 Ubuntu 中使用的 FTP 守护程序之一.它在安装.设置和维护方面十分方便.要安装 vsftpd 您 ...

  3. Ubuntu 16.04 安装ftp服务器传输文件

    最近在搞深度学习,老师比较宝贝他的服务器,要求我以后负责管理服务器.往后所有要使用服务器的人都必须向我申请账号,然后只允许客户端访问,使用文件传输软件传输文件.像我这样一个linux菜逼,这种要求不是 ...

  4. 翻译:在Ubuntu 14.04上安装FTP服务器的方法

    说明: 1.原文地址:http://www.krizna.com/ubuntu/setup-ftp-server-on-ubuntu-14-04-vsftpd/ 2.今天要做一个网络日志的迁移程序,搬 ...

  5. ubuntu安装ftp服务器

    ubuntu安装ftp服务器 1: 安装vsftpd ~$ sudo apt-get install vsftpd ubuntu10.10自己装了,这步省略. 2: 配置vsftpd 2.1 修改vs ...

  6. 第21篇 ubuntu安装ftp服务器(转载)

    ubuntu安装ftp服务器 1: 安装vsftpd ~$ sudo apt-get install vsftpd ubuntu10.10自己装了,这步省略. 2: 配置vsftpd 2.1 修改vs ...

  7. kali 安装FTP服务器-vsftpd

    参考文章:Ubuntu 14.04 FTP服务器--vsftpd的安装和配置 本文将会介绍在kali2.0上安装vsftpd,主要分成四块:更新源列表.安装和配置vsftpd服务器.使用ftp命令传输 ...

  8. Ubuntu下搭建FTP服务器

    Ubuntu下搭建FTP服务器 我装的服务器系统是Ubuntu 12.04 LTS,FTP软件当然是选择大名鼎鼎的vsftpd(very secure FTP daemon), 用系统自带的FTP还好 ...

  9. ubuntu上安装ftp

    为什么要安装ftp?为了方便在主机和虚拟机之间传文件 一般有两种做法: 一.使用VMware安装虚拟机后,可以直接继续安装VMware tools,就可以将主机上的文件拖到ubuntu虚拟机的某个目录 ...

随机推荐

  1. sqlserver自定义函数

    标量函数 RETURNS 子句指定一种标量数据类型,则函数为标量值函数. 语法 Create function 函数名(参数) Returns 返回值数据类型 [with {Encryption | ...

  2. Centos6.6下安装Python3.5

    centos6.6自带的Python2.6,如果想要安装新版本的Python例如Python2.7+或者Python3.5,不能够用yum安装,那么只能从源码编译安装. Step 1: 安装依赖库和编 ...

  3. UCOS-II学习记录

    本文主要记录使用UCOS II的相关内容.包括如何完成第一个UCOS II应用程序,和如何创建任务,如何获取系统时间,和利用i3086 驱动完成时间获取,屏幕显示,按键驱动,信号量等内容. UCOS- ...

  4. C# WinForm 跨线程访问控件

    问题出现: 在WinForm 处理多线程访问主线程的控件时候,就会出现如图所示的错误对话框:    解决方案:  方案一:去掉线程访问主线程UI控件的安全检查,使用: Control.CheckFor ...

  5. 201521123024《Java程序设计》第7周学习总结

    1. 本周学习总结 2. 书面作业 1.ArrayList代码分析 1.1 解释ArrayList的contains源代码 public boolean contains(Object o) { re ...

  6. 201521123005 《java程序设计》 第六周学习总结

    1. 本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图,对面向对象思想进行一个总结. 注1:关键词与内容不求多,但概念之间的联系要清晰,内容覆盖 ...

  7. Java 第十周总结

    1. 本周学习总结 2. 书面作业 1.finally (题目4-2) 1.1 截图你的提交结果(出现学号) 1.2 4-2中finally中捕获异常需要注意什么? finally创建一个代码块.该代 ...

  8. 201521123086 《Java程序设计》第9周学习总结

    本章学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. (1)使用try...catch语句捕获异常(try块后可跟一个或多个catch块,注意子类异常要放在父类异常前面,否则子 ...

  9. 201521123099 《Java程序设计》第11周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多线程相关内容. 2. 书面作业 本次PTA作业题集多线程 互斥访问与同步访问 完成题集4-4(互斥访问)与4-5(同步访问) 1. ...

  10. java的Date类和TimeStamp类

    Java API中有两个Date类,一个是java.util.Date,其构造方法如下: Date() Date(long date) 主要方法有: boolean after(Date when) ...