`
myqhit
  • 浏览: 64621 次
社区版块
存档分类
最新评论

vsftp

 
阅读更多

[ZT]搭建FTP服务器可选用的软件很多,在这里介绍一款Very Secure FTP daemon(VSFTPD)。
1. 安装
$sudo apt-get install vsftpd
2. 启动
$sudo /etc/init.d/vsftpd start
关闭
$sudo /etc/init.d/vsfptd stop
重启
$sudo /etc/init.d/vsfptd.restart
3. 配置
配置文件在/etc/vsftpd.conf。关于配置解释转载自文章:用vsftp建立个ftp站点。

首先是最基本的配置,请看我的/etc/vsftpd/vsftpd.conf

###############################################################################
#接受匿名用户
anonymous_enable=YES
#匿名用户login时不询问口令
no_anon_password=YES
#接受本地用户
local_enable=YES

#可以上传(全局控制).若想要匿名用户也可上传则需要设置anon_upload_enable=YES,若想要匿名用户可以建立目录则需要设置anon_mkdir_write_enable=YES.这里禁止匿名用户上传,所以不设置这两项.
write_enable=YES
#本地用户上传文件的umask
local_umask=022

#使用上传/下载日志,日志文件默认为/var/log/vsftpd.log,可以通过xferlog_file选项修改
xferlog_enable=YES
#日志使用标准xferlog格式
xferlog_std_format=YES

#login时的欢迎信息
ftpd_banner=Welcome to KingArthur's FTP service.
#设置的话将覆盖上面的ftpd_banner设置,用户login时将显示/etc/vsftpd/banner中的内容
banner_file=/etc/vsftpd/banner
#为YES则进入目录时显示此目录下由message_file选项指定的文本文件(,默认为.message)的内容
dirmessage_enable=YES
#本地用户login后所在目录,若没有设置此项,则本地用户login后将在他的home目录(/etc/passwd的第六个字段)中.匿名用户的对应选项是anon_root
local_root=/var/ftp

#设置为YES则下面的控制有效
chroot_list_enable=YES
#若为NO,则记录在chroot_list_file选项所指定的文件(默认是/etc/vsftpd.chroot_list)中的用户将被chroot在登录后所在目录中,无法离开.如果为YES,则所记录的用户将不被chroot.这里选择YES.
chroot_local_user=YES

#若设置为YES则记录在userlist_file选项指定文件(默认是/etc/vsftpd.user_list)中的用户将无法login,并且将检察下面的userlist_deny选项
userlist_enable=YES
#若为NO,则仅接受记录在userlist_file选项指定文件(默认是/etc/vsftpd.user_list)中的用户的login请求.若为YES则不接受这些用户的请求.
userlist_deny=NO
#注意!!!vsftpd还要检察/etc/vsftpd.ftpusers文件,记录在这个文件中的用户将无法login!!

#服务器以standalong模式运行,这样可以进行下面的控制
listen=YES
#匿名用户的传输比率(b/s)
anon_max_rate=51200
#本地用户的传输比率(b/s)
local_max_rate=512000
#可接受的最大client数目
max_clients=100
#每个ip的最大client数目
max_per_ip=5

connect_from_port_20=YES
tcp_wrappers=YES
pam_service_name=vsftpd

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

下面是我的/etc/vsftpd.user_list
##############################################################################

ftpuser
anonymous

##############################################################################
/etc/vsftpd.ftpusers可以使用系统自带的文件
/etc/vsftpd.chroot_list内容为空
接着建立系统用户ftpuser,将他加入ftp组并将/etc/passwd中他的记录的最后一个字段改成/sbin/nologin(禁止本地登录).
设置/var/ftp的所有者和所有组为root,权限为755
设置/var/ftp/pub的所有者为root,所有组为ftp,权限为775

至 此vsftpd的基本配置就完成了.这里我们接受匿名用户anonymous和本地用户ftpuser的请求.anonymous只能下载, ftpuser可以下载和上传.他们登录后均在/var/ftp目录下且无法离开这个目录(被chroot了).ftpuser可以在 /var/ftp/pub目录中建立目录和上传文件,上传文件的权限为755(设置了local_umask=022).匿名用户的传输比率为 50kb/s,ftpuser的传输比率为500kb/s.可联接的最多客户数为100,每ip可联接的最多客户数为5.
如果需要使本地用户ftpput可以login,只需要将他加入/etc/vsftpd.user_list,要使他可以上传,只需将他加入ftp组.
接 着我们可以在/var/ftp下的各个目录(包括/var/ftp)下建立.message文件,这样用户进入这个目录时vsftpd将显示. message的内容,你可以在这里面写上欢迎信息或者注意事项等等.另外可以编辑/etc/vsftpd/banner,建立login时的欢迎信息, 让你的ftp更加个性化.

下面我们使用quota为ftpuser加入磁盘限额,避免恶意用户用垃圾数据塞满你的硬盘.
假设/var/ftp在根分区/(/dev/hda5)中,则将/etc/fstab中根分区的记录的第4个字段改成defaults,usrquota,这样这条记录看起来类似这样:
LABEL=/ / ext3 defaults,usrquota 1 1
接着重启系统后输入下列命令:
quotacheck -acu #检查启用了配额的文件系统,并为每个文件系统建立一个当前磁盘用来的表
quotacheck -avu #生成每个启用了配额的文件系统的当前磁盘用量表
edquota ftpuser #为用户ftpuser设置磁盘配额
这时系统会在默认文本编辑器(vi)中打开配额文件,显示类似这样:
Disk quotas for user ftpuser (uid 501):
Filesystem blocks soft hard inodes soft hard
/dev/hda5 0 0 0 0 0 0
第 一列是启用了配额的文件系统的名称。第二列显示了用户当前使用的块数。随后的两列用来设置用户在该文件系统上的软硬块限度。inodes 列显示了用户当前使用的i节点数量。最后两列用来设置用户在该文件系统上的软硬i节点限度.硬限是用户或组群可以使用的磁盘空间的绝对最大值。达到了该限 度后,磁盘空间就不能再被用户或组群使用了。软限定义可被使用的最大磁盘空间量。和硬限不同的是,软限可以在一段时期内被超过。这段时期被称为过渡期 (grace period)。过渡期可以用秒钟、分钟、小时、天数、周数、或月数表示。如果以上值中的任何一个被设置为 0,那个限度就不会被设置.按你的需要修改后存盘推出.
要校验用户的配额是否被设置,使用以下命令:
quota testuser
接着使用edquota -t来设置过渡期(grace period)
和另一个 edquota 命令相似,这个命令也会在文本编辑器中打开当前的文件系统配额:
Grace period before enforcing soft limits for users:
Time units may be: days, hours, minutes, or seconds
Filesystem Block grace period Inode grace period
/dev/hda5 7days 7days
按你的需要修改后存盘退出。

分享到:
评论

相关推荐

    vsftp-ipk.tgz

    【vsftp-ipk.tgz】是一个压缩包文件,其主要包含的是针对VSFTP(Virtual Secure File Transfer Protocol)软件的IPK格式安装包。IPK是OpenWrt/LEDE(Linux Embedded Development Environment)项目中使用的软件包...

    vsftp启动失败解决办法

    ### vsftp启动失败解决办法 在使用vsftp服务器过程中,可能会遇到vsftp服务无法正常启动的问题。这种情况往往会给用户带来不少困扰,特别是对于那些依赖FTP服务进行文件传输的业务场景。本文将详细介绍vsftp启动...

    vsftp 的安装

    VSFTP 的安装和配置 VSFTP(Very Secure FTP)是一种基于 Linux 的 FTP 服务器软件,它提供了强大的 FTP 服务功能。在 Linux 系统中,VSFTP 是一种非常流行的 FTP 服务器解决方案。下面将详细介绍 VSFTP 的安装和...

    linux服务器上建立基于多个ip的vsftp站点.docx

    Linux 服务器上建立基于多个 IP 的 vsFTP 站点 本文将指导您在 Linux 服务器上建立基于多个 IP 的 vsFTP 站点,每个站点相互独立,拥有独立的配置文件。该文档将详细介绍安装 vsFTP 包、添加虚拟 IP 地址、添加本地...

    vsftp.tat.gz以及ftp的配置过程

    `vsftp.tat.gz`是安装vsftp的源文件,而`Linux下FTP服务器vsftp配置大全超完整版.doc`和`vsftp.pdf`提供了详细的配置步骤和指南。 首先,让我们了解一下`vsftp`。全称是"Very Secure FTPd",它是一个高度可配置且...

    linux 下的vsftp配置

    ### Linux下的vsftp配置 #### 一、Vsftp简介与安装 **Vsftp**(Very Secure FTP)是一款在Linux系统中广泛使用的FTP服务器软件。它提供了高性能、可扩展且安全的文件传输服务。Vsftp的设计重点在于安全性,适用于...

    vsftp虚拟用户详细介绍

    vsftp 虚拟用户详细介绍 在这篇文章中,我们将详细介绍 vsftp 虚拟用户的实现和配置过程。vsftp 是一个基于虚拟用户的 FTP 服务器软件,支持多种认证方式,包括基于 DB 库存储用户名及密码的认证方式。 编译安装 ...

    Linux上vsftp安装包和安装说明

    Linux上的vsftp(Very Secure FTP Daemon)是一款广泛使用的FTP服务器软件,因其安全性高而得名。在Linux系统中,vsftp提供了多种安全特性,如支持SSL/TLS加密、强制用户在指定目录下登录、限制匿名用户的访问权限等...

    Vsftp For Linux.zip

    Vsftp(Visual Secure File Transfer Protocol)是一款专门为Linux和Unix系统设计的开源FTP服务器软件,以其易用性和安全性而受到广大用户的欢迎。Vsftp v2.0.6是该软件的一个版本,提供了高度定制化和安全的文件...

    vsftp简单安装文档

    ### VSFTP简单安装文档知识点详解 #### 一、VSFTP简介及作用 - **FTP (File Transfer Protocol)**:文件传输协议是一种用于在网络上进行文件传输的标准协议。它的主要目的是让用户能够从远程计算机系统获取所需的...

    vsFTP服务器初步管理

    **vsFTP服务器初步管理** vsFTP(Very Secure FTP)是一个高度可配置且广泛使用的FTP(File Transfer Protocol)服务器,尤其适用于Linux和Unix-like系统。它以其安全性和性能而备受推崇,是许多网络管理员首选的...

    vsftp安装及配置

    VSFTP (Virtual Server FTP Daemon) 是一款非常流行的开源FTP服务器软件,特别适合配置虚拟用户和权限控制。在Linux系统中,VSFTP提供了多种安全特性,包括PAM(Pluggable Authentication Modules)支持,使得我们...

    FileZilla linux 上传 vsftp putty

    在IT行业中,FileZilla、vsftp和PuTTY是三个重要的工具,它们分别在Linux环境下的文件传输、服务器管理和远程连接方面发挥着关键作用。让我们深入探讨这些工具及其使用场景。 首先,FileZilla是一款开源的FTP(文件...

    删除 vsftp FTP用户 以及添加用户全过程

    ### 删除与添加vsftp FTP用户全过程详解 #### 一、前言 在IT运维工作中,FTP服务是非常重要的组成部分之一,特别是在文件传输与管理方面。本文将详细介绍如何在vsftp(Very Secure FTP daemon)环境中进行FTP用户...

    CentOS5中vsftp虚拟用户配置

    CentOS5中vsftp虚拟用户配置 CentOS5中vsftp虚拟用户配置是一种常见的文件服务器配置方式,本文将介绍在CentOS5.3下vsftp虚拟用户配置的实例,该配置方式可以在CentOS5中通用。 vsftp虚拟用户配置的主要步骤 1. ...

    vsftp的安装包以及安装方法

    VSFTP(Visual Secure File Transfer Protocol)是一款非常流行的开源FTP服务器软件,尤其在Linux系统中被广泛应用。它提供了安全、高效且可配置的文件传输服务。本文将详细介绍如何在Linux系统中安装VSFTP,并涵盖...

    linux下vsftp的搭建及quota的使用

    ### Linux下vsftp的搭建及quota的使用 #### 一、vsftp的搭建与配置 在Linux环境下构建vsftp服务器并实现quota限制是一项常见的网络管理任务。以下是对给定文件内容的深入解析与扩展。 ##### 1. 安装vsftp工具 在...

    Vsftp v2.0.6 For Linux

    **Vsftp v2.0.6 For Linux** Vsftp(Very Secure FTP)是一款在Linux操作系统上广泛使用的FTP服务器软件。它的设计目标是提供一个安全、高效且易管理的FTP服务解决方案。Vsftp v2.0.6是该软件的一个特定版本,它...

Global site tag (gtag.js) - Google Analytics