vsftpd服务详解
一、vsftpd基本使用
VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP,从此名称可以看出来,编制者的初衷是代码的安全。安全性是编写VSFTP的初衷,除了这与生俱来的安全特性以外,高速与高稳定性也是VSFTP的两个重要特点。
在速度方面:使用ASCII代码的模式下载数据时,VSFTP的速度是Wu-FTP的两倍,如果Linux主机使用2.4.*的内核,在千兆以太网上的下载速度可达86MB/S。
在稳定方面:VSFTP就更加的出色,VSFTP在单机(非集群)上支持4000个以上的并发用户同时连接,根据RedHat的Ftp服务器(ftp.redhat.com)的数据,VSFTP服务器可以支持15000个并发用户
rpm -qa | grep vsftpd
如果出现vsftpd-2.2.2-14.el6.x86_64,说明已经安装 vsftp
yum -y install vsftpd
# whereis vsftpd
vsftpd: /usr/sbin/vsftpd /etc/vsftpd /usr/share/man/man8/vsftpd..gz
tcp_wrappers=YES
useradd -d /home/ftp -s /sbin/nologin ftpuser
/etc/init.d/vsftpd restart
二、配置vsftpd支持虚拟用户
1、安装vsftpd支持虚拟用户需要的包
yum -y install db4-utils db4 #安装是U.C Berkeley的小型数据库服务器及其工具
yum -y install pam pam-* #安装pam认证模块
2、建立虚拟用户
#vim /home/loginuser.txt
user1
password1
user2
password2
user3
password4
格式为第一行为用户名名,第二行为密码,然后类推。
# db_load -T -t hash -f /home/loginuser.txt /etc/vsftpd/vsftpd_login.db #把文本转成Berkeley数据库格式
# chmod /etc/vsftpd/vsftpd_login.db #设定权限
# vim /etc/pam.d/vsftpd.vu (64位系统)
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login # vim /etc/pam.d/vsftpd.vu (32位系统)
auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
useradd ftpvirtual -s /sbin/nologin
3、修改vsftpd配置文件
# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
# vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
local_enable=YES
#write_enable=NO
dirmessage_enable=YES
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
listen_port=
userlist_enable=YES
chroot_local_user=YES
tcp_wrappers=YES
pasv_min_port=
pasv_max_port=
pasv_enable=yes
max_clients=
max_per_ip=
idle_session_timeout=600 # 启用虚拟用户增加配置选项说明
guest_enable=YES #设定启用虚拟用户功能
guest_username=ftpvirtual #指定虚拟用户的宿主用户(即是linux上的本地用户)
pam_service_name=vsftpd.vu #设定PAM服务下Vsftpd的验证配置文件名。因此,PAM验证将参考/etc/pam.d/下的vsftpd.vu文件配置。
user_config_dir=/etc/vsftpd/vsftpd_user_conf #设定虚拟用户个人Vsftp的配置文件存放路径。也就是说,这个被指定的目录里,将存放每个Vsftp虚拟用户个性的配置文件。(一个需要注意的地方就是这些配置文件名必须和虚拟用户名相同)
# touch /var/log/vsftpd.log
# chown www.www /var/log/vsftpd.log
5、建立虚拟用户对应家目录
#mkdir /home/ftpvirtual/user1
#mkdir /home/ftpvirtual/user2
#mkdir /home/ftpvirtual/user3
6、建立虚拟用户配置文件
# mkdir /etc/vsftpd/vsftpd_user_conf 创建虚拟用户配置文件存放目录
配置不同权限的虚拟用户设置
所有权限
# vim /etc/vsftpd/vsftpd_user_conf/user1 #虚拟用户配置,CentOS下yes或者no必须为小写字母 write_enable=yes
anonymous_enable=no
anon_world_readable_only=no
anon_upload_enable=yes
anon_mkdir_write_enable=yes
anon_other_write_enable=yes
local_umask=
download_enable=yes
local_root=/home/ftpvirtual/user1
上传权限
# vim /etc/vsftpd/vsftpd_user_conf/user2
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_umask=
download_enable=NO
local_root=/home/ftpvirtual/user2
下载权限
# vim /etc/vsftpd/vsftpd_user_conf/user3 write_enable=NO
anon_world_readable_only=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
local_umask=
download_enable=yes
local_root=/data/user3
7、重启服务即可生效
# service vsftpd restart
注:如果你喜欢对配置文件有详细的了解,欢迎查看另一文章http://www.cnblogs.com/cto6608/p/4816267.html
vsftpd服务详解的更多相关文章
- vsftpd配置文件详解 ---配置解说
vsftpd配置文件详解 1.默认配置: 1>允许匿名用户和本地用户登陆. anonymous_enable=YES local_enable=YES 2>匿名 ...
- vsftpd配置文件详解(转)
vsftpd配置文件详解 1.默认配置: 1>允许匿名用户和本地用户登陆. anonymous_enable=YES local_enable=YES 2> ...
- winxp计算机管理中服务详解
winxp计算机管理中服务详解01 http://blog.sina.com.cn/s/blog_60f923b50100efy9.html http://blog.sina.com.cn/s/blo ...
- Android中Service(服务)详解
http://blog.csdn.net/ryantang03/article/details/7770939 Android中Service(服务)详解 标签: serviceandroidappl ...
- WCF中队列服务详解
WCF中队列服务详解 一.引言 在前面的WCF服务中,它都要求服务与客户端两端都必须启动并且运行,从而实现彼此间的交互.然而,还有相当多的情况希望一个面向服务的应用中拥有离线交互的能力.WCF通过服务 ...
- 【转】SSH服务详解
[转]SSH服务详解 第1章 SSH服务 1.1 SSH服务协议说明 SSH 是 Secure Shell Protocol 的简写,由 IETF 网络工作小组(Network Working Gro ...
- (转)SSH服务详解
SSH服务详解 原文:http://www.cnblogs.com/clsn/p/7711494.html 第1章 SSH服务1.1 SSH服务协议说明SSH 是 Secure Shell Proto ...
- HTTPD之二————HTTPD服务详解————httpd的配置文件常见设置
HTTPD之二----HTTPD服务详解----httpd的配置文件常见设置 HTTP服务器应用 http服务器程序 httpd apache nginx lighttpd 应用程序服务器 IIS,a ...
- angular-ngSanitize模块-$sanitize服务详解
本篇主要讲解angular中的$sanitize这个服务.此服务依赖于ngSanitize模块. 要学习这个服务,先要了解另一个指令: ng-bing-html. 顾名思义,ng-bind-html和 ...
随机推荐
- What's the difference between all the Selection Segues
relationship -A "relationship" segue is the segue between a container view controller and ...
- CodeForces 540E - Infinite Inversions(离散化+树状数组)
花了近5个小时,改的乱七八糟,终于A了. 一个无限数列,1,2,3,4,...,n....,给n个数对<i,j>把数列的i,j两个元素做交换.求交换后数列的逆序对数. 很容易想到离散化+树 ...
- 问题-Delphi编译到最后Linking时总是出现与ntdll.dll有关的错误还有Fatal Error Out of memory错误
1.跳出错误法 ===================================================在主界面的implementation {$R *.dfm} 下放入以下代码: ...
- 教程-Delphi7 自带控件安装对应表
原来的控件delphi7里何处寻? 经常有朋友提这样的问题,“我原来在delphi5或者delphi6中用的很熟的控件到哪里去了?是不是在delphi7中没有了呢?这是不是意味着我以前写的代码全都不能 ...
- 2015AppStore 上传步骤及常见问题
——————辛苦手写,转载请注明出处!—————— *************华丽分割线***************** 一.注意开发者账号:注意格式不能有一点错. 二.下载证书:生成描 ...
- Spring Bean Scope 有状态的Bean 无状态的Bean
http://blog.csdn.net/anyoneking/article/details/5182164 在Spring的Bean配置中,存在这样两种情况: <bean id=" ...
- Cactus入门
这是一个WebProject,有关Cactus用法详见本文测试用例 首先是web.xml <?xml version="1.0" encoding="UTF-8&q ...
- Android SDK Manager无法更新问题解决
有时候在网络不好的情况下,android sdk manager更新可能一直报错.原因跟国内对于google相关服务的访问受限有关系,需要设置代理访问. 最近也遇到了这个问题.解决方法如下. 启动An ...
- Java中各种排序算法
package org.rut.util.algorithm.support; import org.rut.util.algorithm.SortUtil; /** * @author treero ...
- RPM vs SRPM
RPM 全名是『 RedHat Package Manager 』简称则为 RPM 啦!顾名思义,当初这个软件管理的机制是由 Red Hat 这家公司发展出来的. RPM 是以一种数据库记录的方式来将 ...