转载: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. SQL Server 数据库性能优化

    分析比较执行时间计划读取情况 1. 查看执行时间和cpu set statistics time on select * from Bus_DevHistoryData set statistics ...

  2. memcache的资料集

    1. 安装与查看过程(完整) https://www.cyberciti.biz/faq/rhel-fedora-linux-install-memcached-caching-system-rpm/ ...

  3. [Algorithm] Print 2-D array in spiral order

    The idea to solve the problem is set five variable, first direction, we need to switch direction aft ...

  4. IJPay 让支付触手可及-文中有视频

    IJPay 让支付触手可及 GitHub:https://github.com/Javen205/IJPay Gitee:http://gitee.com/Javen205/IJPay JPay 是对 ...

  5. “服务器推”技术【转载+整理】

    原文地址 本文内容 "服务器推(server-push)"技术的应用 基于客户端套接口的"服务器推"技术 基于 HTTP 长连接的"服务器推" ...

  6. Spring Integration概述

    1.   Spring Integration概述 1.1     背景 Spring框架的一个重要主题是控制反转.从广义上来说,Spring处理其上下文中管理的组件的职责.只要组件减轻了职责,它们同 ...

  7. css调整图片位置布局

    <?xml version="1.0" encoding="utf-8"?><!DOCTYPE wml PUBLIC "-//WAP ...

  8. var, object, dynamic的区别以及使用

    var, object, dynamic的区别以及使用 阅读目录: 一. 为什么是它们三个 二. 能够任意赋值的原因 三. dynamic的用法 四. 使用dynamic的注意事项 拿这三者比较的原因 ...

  9. CheeseZH: Stanford University: Machine Learning Ex5:Regularized Linear Regression and Bias v.s. Variance

    源码:https://github.com/cheesezhe/Coursera-Machine-Learning-Exercise/tree/master/ex5 Introduction: In ...

  10. Zoning and LUN Masking

    In a SAN ( Storage Area Network ), if all the hosts are allowed to access all the drives in the SAN, ...