转载:http://zyjustin9.iteye.com/blog/2178943

一.安装
1.用apt-get工具安装vsftpd:

  1. $ sudo apt-get install vsftpd

2.检查FTP端口是否已经打开

  1. $ netstat -tnl

或者直接在浏览器里输入“ftp://服务器IP”

开启、停止、重启vsftpd服务的命令:

  1. service vsftpd start | stop | restart

二.配置
1.修改配置文件

  1. $ sudo vi /etc/vsftpd.conf

主要配置:

  1. listen=YES                 # 服务器监听
  2. local_enable=YES         # 是否允许本地用户访问
  3. write_enable=YES         # 是否允许上传文件,不开启会报 550 permission denied
  4. anonymous_enable=NO     # 匿名访问允许,默认不要开启,
  5. #anon_upload_enable=YES # 匿名上传允许,默认是NO
  6. #anon_mkdir_write_enable=YES # 匿名创建文件夹允许

用户访问目录的权限设置:
在默认配置下,本地用户登入FTP后可以使用cd命令切换到其他目录,这样会对系统带来安全隐患。可以通过以下三条配置文件来控制用户切换目录。

  1. chroot_local_user=YES      # 用于指定用户列表文件中的用户是否允许切换到上级目录。默认值为NO。
  2. chroot_list_enable=YES  # 设置是否启用chroot_list_file配置项指定的用户列表文件。默认值为NO。
  3. chroot_list_file=/etc/vsftpd.chroot_list
  4. #禁用的列表名单,格式为一行一个用户,用于指定用户列表文件,该文件用于控制哪些用户可以切换到用户家目录的上级目录。

通过搭配能实现以下几种效果:

  1. (1).当chroot_list_enable=YES,chroot_local_user=YES时,在/etc/vsftpd.chroot_list文件中列出的用户,可以切换到其他目录;未在文件中列出的用户,不能切换到其他目录。
  2. (2).当chroot_list_enable=YES,chroot_local_user=NO时,在/etc/vsftpd.chroot_list文件中列出的用户,不能切换到其他目录;未在文件中列出的用户,可以切换到其他目录。
  3. (3).当chroot_list_enable=NO,chroot_local_user=YES时,所有的用户均不能切换到其他目录。
  4. (4).当chroot_list_enable=NO,chroot_local_user=NO时,所有的用户均可以切换到其他目录。

其他配置解释:

  1. local_umask=022         # FTP上本地的文件权限,默认是077
  2. dirmessage_enable=YES     # 进入文件夹允许
  3. xferlog_enable=YES         # ftp 日志记录允许
  4. connect_from_port_20=YES # 启用20号端口作为数据传送的端口
  5. xferlog_enable=yes         # 激活上传和下传的日志
  6. xferlog_std_format=yes     # 使用标准的日志格式
  7. ftpd_banner=XXXXX         # 欢迎信息

相关链接:
vsftpd配置文件详解

2.重启vsftpd服务

  1. $sudo /etc/init.d/vsftpd restart
  2. 或者
  3. $ sudo service vsftpd restart

注:修改配置文件后一定要重启服务才能生效

三.FTP增加删除用户
1.增加用户
#创建目录

  1. mkdir -p /home/test

#创建用户

  1. sudo useradd -g ftp -d /home/test -m test

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

#设置用户口令

  1. sudo passwd test123

编辑/etc/vsftpd.chroot_list文件,将ftp的帐户名添加进去,保存退出

重新启动vsftpd:

  1. $ sudo service vsftpd restart

注:修改用户权限文件vsftpf.chroot_list文件后一定要重启服务才能生效

2.删除用户

  1. $ sudo userdel test

四.卸载

sudo apt-get remove --purge vsftpd

(--purge 选项表示彻底删除改软件和相关文件)

Ubuntu中安装配置和卸载FTP(转)的更多相关文章

  1. Ubuntu中安装配置 JDK与apache

    一,前期准备: 1.下载apach网址:https://tomcat.apache.org/download-90.cgi 3.下载:jdk网址:http://www.oracle.com/techn ...

  2. Ubuntu下安装配置和卸载Tomcat

    转载自:http://zyjustin9.iteye.com/blog/2177291 注:此处不采用apt-get安装,因为这种方式安装后,tomcat安装目录会到处都是,像天女散花一样.此处采取下 ...

  3. 在Ubuntu中安装配置java后运行java -version时提示二进制文件不能执行

    因为jdk安装包有问题,试试32位的

  4. ubuntu下安装jdk,tomcat,mysql,ftp,telnet,svn

    需求分析:自己弄了个小网站,想放到云服务器上,同时把自己积累的代码也放上去,服务器上的文件可以简单的在windows上查看,也可以方便的通过windows连接linux服务器. 解决:运行网站要用到j ...

  5. python中在ubuntu中安装虚拟环境及环境配置

    python中在ubuntu中安装虚拟环境及环境配置 1.升级python包管理工具pip pip install --upgrade pip 备注:当你想升级一个包的时候 `pip install ...

  6. 在Ubuntu 12.04系统中安装配置OpenCV 2.4.3的方法

    在Ubuntu 12.04系统中安装配置OpenCV 2.4.3的方法   对于,在Linux系统下做图像识别,不像在windows下面我们可以利用Matlab中的图像工具箱来实现,我们必须借助Ope ...

  7. # Ubuntu子系统安装配置

    目录 Ubuntu子系统安装配置 安装配置 终端美化 卸载 和win10之间的交互 Ubuntu子系统安装配置 亲测启动速度毫秒之间 安装配置 系统升级到一周年正式版及以上(1607) 依次在 设置 ...

  8. 在ubuntu中安装maven

    安装环境 操作系统:ubuntu 14.04.1 server amd64 安装jdk 在安装maven之前,必须确保已经安装过jdk. 安装jdk的方法请参考文章<在ubuntu中安装jdk& ...

  9. 在Ubuntu中安装Redis

    原文地址:http://blog.fens.me/linux-redis-install/ 在Ubuntu中安装Redis R利剑NoSQL系列文章,主要介绍通过R语言连接使用nosql数据库.涉及的 ...

随机推荐

  1. AI-终极算法-遗传算法

  2. ARM 汇编的mov操作立即数的疑问

    1. 因为对arm汇编有些指令还不能理解,特别是一些相似功能指令间的区别.偶然在网上搜到"faq ARM assembly",其中描述的几个问题还是值得好好研究一下. 2. 慢慢的 ...

  3. GIT 如何在不提交Commit的情况下切换分支

    最近遇到一个问题,事情是这样子的,刚刚接到客户说他的项目有问题,于是就打开本地的源码查看经过排查确定了问题,于是就开始进行修正工作 将问题修复好准备提交到git的时候发现当前的分支是不对的,但问题是我 ...

  4. 【转】Java四种线程池的使用

    Java通过Executors提供四种线程池,分别为:newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程.newFixe ...

  5. 【树莓派】树莓派刷Android系统

    树莓派3安装Android TV系统图文教程 http://www.mz6.net/news/android/6866.html 树莓派3 Android TV系统怎样安装?树莓派3一个重要用途就是当 ...

  6. Array相关的属性和方法

    这里只是做了相关的列举,具体的使用方法,请参考网址. Array 对象属性 constructor 返回对创建此对象的数组函数的引用. var test=new Array(); if (test.c ...

  7. 【Fanvas技术解密】HTML5 canvas实现脏区重绘

    先说明一下,fanvas是笔者在企鹅公司开发的,即将开源的flash转canvas工具. 脏区重绘(dirty rectangle)并不是一门新鲜的技术了,这在最早2D游戏诞生的时候就已经存在. 复杂 ...

  8. Spring MVC 通过 @PropertySource和@Value 来读取配置文件

    在这篇文章中,我们会利用Spring的@PropertySource和@Value两个注解从配置文件properties中读取值.先来段java代码: @Component @PropertySour ...

  9. .NET/ASP.NET/C#/WCF/SQL Server/My SQL/Java/JSP/JDBC/Spring/Spring MVC/PHP/Python/Ruby/Shell/Agile/CSS/HTML/HTTP/Unix/Linux大量PDF书籍/电子书籍下载, Effective Java 下载

    223本电子书籍,囊括了.NET/ASP.NET/C#/WCF/SQL Server/My SQL/Java/JSP/JDBC/Spring/Spring MVC/PHP/Python/Shell/A ...

  10. 【PMP】十五至尊图

    以上是PMP的10大知识领域与5个过程组,在PMP考试中属于必须记忆的知识,该知识来源于PMBOK 第6版 附件为每日练习记忆模板,可以更好的记忆上图 点击下载附件