一、FTP服务概述:

FTP服务器(File Transfer Protocol Server)是在互联网上提供文件存储和访问服务的计算机,它们依照FTP协议提供服务。

FTP(File Transfer Protocol: 文件传输协议)作用: Internet 上用来传送文件的协议

可以在局域网传输,当然也可以在广域网传输ftp文件。

vsftp:(Linux系统相称,也是Linux系统中的安装包名称)

VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP 从此名称可以看出来,编制者的初衷是代码的安全。

特点:

它是一个安全、高速、稳定的FTP服务器;

模式:

C/S 模式

vsftp端口:

20 (传数据)     21 (传指令)     #传数据端口为20、用户连接端口为21.

安装vsftp服务器端(vsftpd)、客户端(lftp)

[root@localhost ~]# rpm -ivh /mnt/Packages/vsftpd-2.2.2-6.el6_0.1.x86_64.rpm

或:

yum -y install vsftpd

二、安装客户端:

[root@localhost ~]# yum install -y vsftp

vsftp主配置文件位置和其他ftp相关配置文件:

/etc/vsftpd/vsftpd.conf:vsftpd 的核心配置文件

/etc/vsftpd/ftpusers:用于指定哪些用户不能访问FTP 服务器。  黑名单

/etc/vsftpd/user_list:指定允许使用vsftpd 的用户列表文件。  白名单

vim  /etc/vsftpd/user_list

# 如果userlist_deny= YES(默认),绝不允许在这个文件中的用户登录ftp,甚至不提示输入密码

#prompt 提示

/etc/vsftpd/vsftpd_conf_migrate.sh:是vsftpd 操作的一些变量和设置脚本

/var/ftp/:默认情况下匿名用户的根目录;

修改配置文件:

[root@localhost vsftpd]# cp vsftpd.conf vsftpd.conf.back        #修改配置文件先备份,失误的时候可以在做恢复;

[root@localhost ~]# vim  /etc/vsftpd/vsftpd.conf       #vsftp 配置文件;

1.允许匿名用户访问:

anonymous_enable=YES             #是否允许匿名用户访问;(默认YES)

2.允许匿名用户上传文件并可以创建目录:

anon_upload_enable=YES            #允许匿名用户上传文件;

anon_mkdir_write_enable=YES        #允许匿名用户创建目录;

3.允许匿名用户删除文件和文件命名:

anon_other_write_enable=YES        #允许匿名用户命名文件删除文件;

4.设置匿名用户所上传的文件的默认掩码值:

anon_umask=022                      #......

5.设置匿名用户的FTP根目录(默认为/var/ftp/)

anon_root=/var/ftp                  #......

给匿名用户权限最好不要太大,建议755   

注:实际生活中,匿名用户只是只读访问,写的权限也没有。

本地用户:

1.允许本地用户登录:

local_enable=YES                #允许本地用户登录

2.设置本地用户的FTP根目录(默认为用户的宿主目录)

Local_root=/var/ftp

3.本地用户上传的默认权限掩码值:

Local_umask=022

4.设置本地用户上传写入支持:

write_enable=YES                #启动上传写入支持

5.为不同的虚拟用户建立独立的配置文件:

    user_config_dir=/etc/vsftp/vusers_dir      #设置从/etc/vsftp/vusers_dir目录中查找每个用户的独立配置文件;

添加虚拟用户:

[root@localhost vsftpd]# vim /etc/vsftpd/vsftpd.conf

  pam_service_name=vsftpd.vu       //修改

userlist_enable=NO                  //修改

anon_root=/var/ftp/soft             //末尾添加

guest_enable=yes                //添加

guest_username=zhangsan          //添加

user_config_dir=/etc/vsftpd/vusers_dir    //添加

allow_writeable_chroot=YES           //添加

########################################################################

例: 为虚拟用户建立独立配置文件。

mkdir /etc/vsftpd/vusers_dir/             #创建用户配置文件夹;

cd  /etc/vsftpd/vusers_dir/               #进入/etc/vsftpd/vusers_dir/下;

    vim  john                          #为用户john建立独立的配置文件;

local_root=/var/ftp

anon_umask=022

write_enable=YES 

anon_mkdir_write_enable=YES

 

chroot_list_enable=YES:激chroot 功能

chroot_list_file=/etc/vsftpd/chroot_list:设置锁定用户在根目录中的列表文件。此文件存放要锁定的用户名

allow_writeable_chroot=YES :允许锁定的用户有写的权限

设置好本地权限:

启动服务

[root@localhost vsftpd]# systemctl start vsftpd

[root@localhost vsftpd]# systemctl enable vsftpd

##注意关闭iptables 和selinux

[root@localhost ~]# netstat -antup | grep ftp

tcp        0      0 0.0.0.0:21                  0.0.0.0:*                   LISTEN

重启vsftpd 服务使配置生效:

service  vsftpd  restart

客户端登录lftp:

[root@localhost ~]# lftp  192.168.0.63  -u  team1,123456

Linux 部署vsftp服务及详解的更多相关文章

  1. Linux:SSH服务配置文件详解

    SSH服务配置文件详解 SSH客户端配置文件 /etc/ssh/ssh——config 配置文件概要 Host * #选项“Host”只对能够匹配后面字串的计算机有效.“*”表示所有的计算机. For ...

  2. Linux安装svn服务图文详解 ;出现No repository found in 'svn***问题

    Linux安装svn服务 ** 示例都是用的root权限,可选择用 sudo** 1:检查 安装条件为:Linux(centos)上未安装过svn服务,若安装过或安装失败请自行删除,这里不多介绍.检查 ...

  3. Linux编译部署vsftp服务

    部署vsftp服务   Hostname OS IP Software Vsftpsvr RHEL-5.8 10.0.0.58 yum install -y vsftpd yum install –y ...

  4. 2-4、nginx特性及基础概念-nginx web服务配置详解

    Nginx Nginx:engine X 调用了libevent:高性能的网络库 epoll():基于事件驱动event的网络库文件 Nginx的特性: 模块化设计.较好扩展性(不支持模块动态装卸载, ...

  5. Ubuntu14.04下Mongodb(离线安装方式|非apt-get)安装部署步骤(图文详解)(博主推荐)

    不多说,直接上干货! 说在前面的话  首先,查看下你的操作系统的版本. root@zhouls-virtual-machine:~# cat /etc/issue Ubuntu LTS \n \l r ...

  6. Ubuntu16.04下Mongodb(离线安装方式|非apt-get)安装部署步骤(图文详解)(博主推荐)

    不多说,直接上干货! 说在前面的话  首先,查看下你的操作系统的版本. root@zhouls-virtual-machine:~# cat /etc/issue Ubuntu LTS \n \l r ...

  7. (转)Centos7上部署openstack ocata配置详解

    原文:http://www.cnblogs.com/yaohong/p/7601470.html 随笔-124  文章-2  评论-82  Centos7上部署openstack ocata配置详解 ...

  8. Ubuntu14.04下Mongodb数据库可视化工具安装部署步骤(图文详解)(博主推荐)

    不多说,直接上干货! 前期博客 Ubuntu14.04下Mongodb(离线安装方式|非apt-get)安装部署步骤(图文详解)(博主推荐) Ubuntu14.04下Mongodb官网安装部署步骤(图 ...

  9. Linux下DNS服务器搭建详解

    Linux下DNS服务器搭建详解 DNS  即Domain Name System(域名系统)的缩写,它是一种将ip地址转换成对应的主机名或将主机名转换成与之相对应ip地址的一种机制.其中通过域名解析 ...

随机推荐

  1. 使用wait/notify/notifyAll实现线程间通信的几点重要说明

    在Java中,可以通过配合调用Object对象的wait()方法和notify()方法或notifyAll()方法来实现线程间的通信.在线程中调用wait()方法,将阻塞等待其他线程的通知(其他线程调 ...

  2. c# timestamp转换datetime

    一.Codes class Program { static void Main(string[] args) { ); } public static DateTime UnixTimeStampT ...

  3. 【原创】(二)Linux物理内存初始化

    背景 Read the fucking source code! --By 鲁迅 A picture is worth a thousand words. --By 高尔基 说明: Kernel版本: ...

  4. 使用SpringSecurity保护程序安全

    首先,引入依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId&g ...

  5. 通过CMD命令窗口获取django版本号

    通过CMD命令窗口获取django版本号 方法一: C:\Users\Administrator>python >>> import django >>> d ...

  6. ubantu下配置共享文件

    原文转自 http://blog.chinaunix.net/uid-25305993-id-3754109.html 一 samba的安装: sudo apt-get install samba   ...

  7. 工作中遇到的99%SQL优化,这里都能给你解决方案(二)

    -- 示例表 CREATE TABLE `employees` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(24) NOT NULL ...

  8. 深入Go的错误处理机制使用

    开篇词 程序运行过程中不可避免的发生各种错误,要想让自己的程序保持较高的健壮性,那么异常,错误处理是需要考虑周全的,每个编程语言提供了一套自己的异常错误处理机制,在Go中,你知道了吗?接下来我们一起看 ...

  9. MyBatis的发展和选型

    xlecho编辑整理,欢迎转载,转载请声明文章来源.欢迎添加echo微信(微信号:t2421499075)交流学习. 百战不败,依不自称常胜,百败不颓,依能奋力前行.--这才是真正的堪称强大!! 参考 ...

  10. Dart语言概览

    ## Dart特性 Dart同时支持JIT(Just In Time,即时编译)和AOT(Ahead of Time,运行前编译)两种编译模式. **JIT** 在运行时即时编译,在开发周期中使用,可 ...