第五章:VSFTP服务全攻略

第五章:VSFTP服务全攻略
第五章:VSFTP服务全攻略

第五章:VSFTP服务全攻略

内容简介

FTP服务的简介

FTP的工作原理

主动模式和被动模式

VSFTP服务的安装

VSFTP的三种用户形式

案例详解

FTP服务的简介

FTP是文件传输控制协议。它可以使文件通过网络从一台主机传送到另一台主机上,而不受计算机类型和操作系统类型的限制。无论是PC机、服务器、大型机,还是DOS操作系统、Windows操作系统、Linux操作系统,只要双方都支持FTP 协议,就可以方便地传送文件。

FTP的工作原理

FTP服务的具体工作过程如下(图1)。

① 当FTP客户端发出请求时,系统将动态分配一个端口(如1032)。

② 若FTP服务器在端口21侦听到该请求,则在FTP客户端的端口1032和FTP 服务器的端口21之间建立起一个FTP会话连接。

③ 当需要传输数据时,FTP客户端再动态打开一个连接到FTP服务器的端口20的第2个端口(如1033),这样就可在这两个端口之间进行数据的传输。当数据传输完毕后,这两个端口会自动关闭。

④ 当FTP客户端断开与FTP服务器的连接时,客户端上动态分配的端口将自动释放掉。

主动模式和被动模式

根据数据连接的建立方式,FTP服务的数据传输可以分为Port(主动)模式和Passive(被动)模式。

主动模式是FTP服务器向FTP客户端传输数据的默认模式。当FTP客户端请求以主动模式传输数据时,由客户端向服务端发送准备接收数据的IP地址和端口Y,该端口是大于1024的非特权端口。服务端主动发起并建立连接到指定的IP地址和端口Y,所以称为"主动"模式。

在被动模式下,客户端通过PASV命令获得服务端IP地址和数据端口,然后向服务端发起连接请求,从而建立数据连接。因此,服务器端只是被动地监听在指定端口上的请求,所以称之为"被动"模式。

主动模式和被动模式

在主动模式中,FTP客户端随机开启一个大于1024的端口X向服务器的21号端口发起控制连接请求,然后开放X+1 号端口进行监听;FTP服务器接受请求并建立控制连接会话。如果客户端在控制会话中发送数据连接请求,那么服务器在接收到命令后,会用其本地的FTP数据端口(通常是20)来连接客户端指定的端口X+1进行数据传输。(图2)

被动模式的控制连接和数据连接都是由FTP客户端发起的。

首先FTP客户端随机开启一个大于1024的端口X向服务器的21端口发起连接,同时会开启X+1端口。然后向服务器发送PASV命令,通知服务器自己处于被动模式。服务器收到命令后,会开放一个端口Y(20)进行监听,然后用 PORT Y命令通知客户端,自己的数据端口是Y。客户端收到命令后,会通过X+1号端口连接服务器的端口Y,然后在两个端口之间进行数据传输。这样就能使防火墙知道用于数据连接的端口号,而使数据连接得以建立。(图3)

vsftp服务的安装

rpm -qa |grep vsftpd

rpm -vih vsftpd-2.0.5

rpm -ivh db4-utils

Vsftpd的三种用户形式

1、匿名用户形式:在默认安装的情况下,系统只提供匿名用户访问

2、本地用户形式:以/etc/passwd中的用户名为认证方式

3、虚拟用户形式:支持将用户名和口令保存在数据库文件或数据库服务器中。相对于FTP的本地用户形式来说,虚拟用户只是FTP服务器的专有用户,虚拟用户只能访问FTP服务器所提供的资源,这大大增强系统本身的安全性。相对于匿名用户而言,虚拟用户需要用户名和密码才能获取FTP服务器中的文件,增加了对用户和下载的可管理性。

对于需要提供下载服务,但又不希望所有人都可以匿名下载;既需要对下载用户进行管理,又考虑到主机安全和管理方便的FTP站点来说,虚拟用户是一种极好的解决方案。

匿名用户名设置

anonymous_enable=YES #是否启用匿名用户

no_anon_password=YES #匿名用户login时不询问口令

下面这四个主要语句控制这文件和文件夹的上传、下载、创建、删除和重命名。anon_upload_enable=(yes/no); #控制匿名用户对文件(非目录)上传权限。anon_world_readable_only=(yes/no); #控制匿名用户对文件的下载权限anon_mkdir_write_enable=(yes/no); #控制匿名用户对文件夹的创建权限anon_other_write_enable=(yes/no); #控制匿名用户对文件和文件夹的删除和重命名

注:匿名用户下载是使用的是nobody这个用户,所以相应的O这个位置要有R

权限才能被下载。

若想让匿名用户能上传和删除权限,必需设置

write_enable=YES #全局设置,是否容许写入(无论是匿名用户还是本地用户,若要启用上传权限的话,就要开启他)

anon_root=(none) #匿名用户主目录

anon_max_rate=(0)#匿名用户速度限制

anon_umask=(077) #匿名用户上传文件时有掩码(若想让匿名用户上传的文件能直接被匿名下载,就这设置这里为073)

chown_uploads=YES #所有匿名上传的文件的所属用户将会被更改成

chown_username

chown_username=whoever #匿名上传文件所属用户名

本地用户设置

write_enable=YES #可以上传(全局控制) 删除,重命名

local_umask=022 #本地用户上传文件的umask

userlist_enable=YES #限制了这里的用户不能访问

local_root #设置一个本地用户登录后进入到的目录

download_enable #限制用户的下载权限

chown_uploads=YES #所有匿名上传的文件的所属用户将会被更改成

chown_username

chown_username=whoever #匿名上传文件所属用户名

chroot_list_enable=YES #如果启动这项功能,则所有列在chroot_list_file 之中的使用者不能更改根目录

chroot_list_file=/etc/vsftpd/chroot_list #指定限制的用户文件

user_config_dir= #后面跟存放配置文件的目录。用来实现不同用户不同权限。#在vsftpd.conf文件中加入这一句,

#在相应的目录里面,为每个用户创建自己的配置文件,用来实现不同的权限

#设置用户的单独配置文件,用哪个帐户登陆就用哪个帐户命名

虚拟用户设置

虚拟用户使用PAM认证方式

pam_service_name=vsftpd #设置PAM使用的名称,默认值为/etc/pam.d/vsftpd guest_enable= YES/NO #启用虚拟用户。默认值为NO

guest_username=ftp #这里用来映射虚拟用户。默认值为ftp

virtual_use_local_privs=YES/NO #当该参数激活(YES)时,虚拟用户使用与本地用户相同的权限。

#当此参数关闭(NO)时,虚拟用户使用与匿名用户相同的权限。

#默认情况下此参数是关闭的(NO)。

案例详解

【案例1】建立基于虚拟用户的FTP服务器,并根据以下要求配置FTP服务器。(1)配置FTP匿名用户的主目录为/var/ftp/anon,下载带宽限制为100kB/s。(2)建立一个名为abc,口令为xyz的FTP账户。下载带宽限制为500kB/s。(3)设置FTP服务器同时登录到FTP服务器的最大链接数为100;每个IP最大链接数为3;用户空闲时间超过限值为5分钟。

mkdir /var/fpt/anon

useradd abc

passwd abc

vim /etc/vsftpd/vsftpd.conf

主要内容如下

anonymous_enable=YES

anon_root=/var/ftp/anon

anon_max_rate=100000

local_enable=YES

local_max_rate=500000

max_clients=100

max_per_ip=3

connect_timeout=300

以上是本地的LOCAL用户

下面是用虚拟用户来实现

vim /etc/vsftpd/vuser

内容如下

tom

123

生成数据库文件

db_load -T -t hash -f /etc/vsftpd/vuser /etc/vsftpd/vuser.db

chmod 600 /etc/vsftpd/vuser.db

vim /etc/pam.d/vsftpd

注释掉原来的内容

然后加入

auth required pam_userdb.so db=/etc/vsftpd/vuser

account required pam_userdb.so db=/etc/vsftpd/vuser

最后编辑VSFTPD.CONF加入下面两句

guest_enable=YES

guest_username=abc

大家可以自行测试。

【案例2】

1、新建一分区,10G空间,ext3 文件系统,挂在到 /ftp下,作为 ftp服务器数据存放地方。

2、四个部门:dep1,dep2, dep3, dep4,分别对应目录 /ftp/dep1,

/ftp/dep2,/ftp/dep3,/ftp/dep4。另外设定一个公共目录 /ftp/public。3、五个用户:admin,user1,user2,user3,user4。其中:user1/2/3/4分别对应部门dep 1/2/3/4,他们只能访问自己所述部门的目录和public目录。如:user1只能访问dep1和public目录,不能访问其它目录。admin 为管理员用户,可以访问 ftp 服务器上的任何目录。4、用户访问权限限制:user1/2/3/4在所能访问的目录,具有上传文件、下载文件的功能,但是不能够删除文件、更改文件权限等功能。admin管理员用户对所有目录具有文件上传、下载、删除、权限更改等功能。5、对每个部门定制一个quota,设置该账户的文件配额为1000个;磁盘配额为2G。6、匿名用户不能访问。

第一、增加一块硬盘,然后分区,把分区挂载情况写入/etc/fstab

# fdisk /dev/hdb

# mkfs.ext3 /dev/hdb1

# mkidr /ftp

# mount /dev/hdb1 /ftp -o usrquota,grpquota

# vim /etc/fstab

加入下面一句

/dev/hdb1 /ftp ext3 defaults,usrquota,grpquota 0 0

第二、建立用户组和用户和相应的文件夹并更改权限,达到题目要求

# groupadd dep1

# groupadd dep2

# groupadd dep3

# groupadd dep4

# groupadd boobooke

# usradd -G dep1,boobooke user1

# usradd -G dep2,boobooke user2

# usradd -G dep3,boobooke user3

# usradd -G dep4,boobooke user4

# usradd -G dep1,dep2,dep3,dep4,boobooke admin

# passwd user1

# passwd user2

# passwd user3

# passwd user4

# passwd admin

# mkdir /ftp/dep1

# mkdir /ftp/dep2

# mkdir /ftp/dep3

# mkdir /ftp/dep4

# mkdir /ftp/public

# chown uesr1:dep1 /ftp/dep1

# chown uesr2:dep2 /ftp/dep2

# chown uesr3:dep3 /ftp/dep3

# chown uesr4:dep4 /ftp/dep4

# chown admin:boobooke /ftp/public

# chmod 770 /ftp/dep1

# chmod 770 /ftp/dep2

# chmod 770 /ftp/dep3

# chmod 770 /ftp/dep4

# chmod 770 /ftp/pubic

最终结果如下

-rw------- 1 root root 8192 Jul 26 11:46 aquota.group

-rw------- 1 root root 7168 Jul 26 11:46 https://www.360docs.net/doc/8717245260.html,er

drwxrwx--- 2 user1 dep1 4096 Jul 25 20:47 dep1

drwxrwx--- 2 user2 dep2 4096 Jul 25 20:47 dep2

drwxrwx--- 2 user3 dep3 4096 Jul 25 20:47 dep3

drwxrwx--- 2 user4 dep4 4096 Jul 25 20:47 dep4

drwx------ 2 root root 16384 Jul 25 20:44 lost+found

drwxrwx--- 2 admin boobooke 4096 Jul 25 20:48 public

第三、创建quota,配置磁盘配额

#mount /dev/hdb1 /ftp -o usrquota,grpquota

# quotacheck -cuvg /dev/sdb1

# quotaon -a

# edquota -g dep1

Disk quotas for group dep1 (gid 503):

Filesystem blocks soft hard inodes soft hard

/dev/hdb1 0 1024000 2048000 0 500 1000

# edquota -g -p dep1 dep2 dep3 dep4(-u -g将源用户组和群组的quota设置套用至其他用户或群组。)

第四、编辑VSFTPD.CONF

# vim /etc/vsftpd/vsftpd.conf

anonymous_enable=NO

加入

local_root=/ftp

user_config_dir=/etc/vsftpd/ftp_config_dir

开启chroot

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

第五、建立用户的独立文件

# mkdir /etc/vsftpd/ftp_config_dir

# vim /etc/vsftpd/ftp_config_dir/user1

cmds_allowed=ABOR,ACCT,APPE,CWD,CDUP,HELP,LIST,MODE,MDTM,NOOP,NLST,PA SS,PASV,PORT,PWD,QUIT,REIN,RETR,SITE,SIZE,STOR,STAT,STOU,STRU,SYST,TY PE,USER

# cp /etc/vsftpd/ftp_config_dir/user1 /etc/vsftpd/ftp_config_dir/user2 # cp /etc/vsftpd/ftp_config_dir/user1 /etc/vsftpd/ftp_config_dir/user3 # cp /etc/vsftpd/ftp_config_dir/user1 /etc/vsftpd/ftp_config_dir/user4 第六、测试

★★★★★★★★★★★★★★★★★视频观看地址

★★★★★★★★★★★★★★★★★★ https://www.360docs.net/doc/8717245260.html,/v/bbk3290 https://www.360docs.net/doc/8717245260.html,/v/bbk3291 https://www.360docs.net/doc/8717245260.html,/v/bbk3292 https://www.360docs.net/doc/8717245260.html,/v/bbk3293 https://www.360docs.net/doc/8717245260.html,/v/bbk3294 https://www.360docs.net/doc/8717245260.html,/v/bbk3295

centos_vsftp服务器搭建

centos_vsftp服务器搭建 1.安装CentOS release 5.4 (Final)操作系统,选中系统自带VSFTP 2.0.5服务器并安装。2.查看LINUX系统中是否存在db4。如果没有则进行安装。 #rpm –qa | grep db4 db4-tcl-4.3.29-10.el5 db4-utils-4.3.29-10.el5 db4-devel-4.3.29-10.el5 db4-4.3.29-10.el5 db4-java-4.3.29-10.el5 3.添加虚拟用户口令文件 #vi /etc/login.txt test password0 test1 password1 test2 password2 4.生成虚拟用户口令认证文件 #db_load –T –t hash –f /etc/login.txt /etc/vsftpd_login.db #chmod 600 /etc/vsftpd_login.db 5.编辑vsftpd的PAM认证文件 #vi /etc/pam.d/vsftpd 将里面其他的都注释掉,添加下面这两行: auth required /lib/security/pam_userdb.so db=/etc/vsftpd_login account required /lib/security/pam_userdb.so db=/etc/ vsftpd_login 6.建立本地映射用户并设置宿主目录权限 #useradd –d /home/ftpsite –s /sbin/nologin virtual #chmod 700 /home/ftpsite 7.配置vsftpd.conf(设置虚拟用户配置项) #vi /etc/vsftpd/vsftpd.conf guest_enable=YES #开启虚拟用户 guest_username=virtual #FTP虚拟用户对应的系统用户 pam_service_name=vsftpd #PAM认证文件 8.重启vsftpd服务 9.测试虚拟用户登录FTP #service vsftpd restart # ftp localhost Connected to localhost.localdomain. 220 (vsFTPd 2.0.5) 530 Please login with USER and PASS. 530 Please login with USER and PASS.

VSFTP配置文件详解

# 是否允许匿名登录FTP服务器,默认设置为YES允许 # 用户可使用用户名ftp或anonymous进行ftp登录,口令为用户的E-mail地址。 # 如不允许匿名访问则设置为NO anonymous_enable=YES # 是否允许本地用户(即linux系统中的用户帐号)登录FTP服务器,默认设置为YES允许 # 本地用户登录后会进入用户主目录,而匿名用户登录后进入匿名用户的下载目录/var/ftp/pub # 若只允许匿名用户访问,前面加上#注释掉即可阻止本地用户访问FTP服务器 local_enable=YES # 是否允许本地用户对FTP服务器文件具有写权限,默认设置为YES允许 write_enable=YES # 掩码,本地用户默认掩码为077 # 你可以设置本地用户的文件掩码为缺省022,也可根据个人喜好将其设置为其他值 #local_umask=022 # 是否允许匿名用户上传文件,须将全局的write_enable=YES。默认为YES #anon_upload_enable=YES # 是否允许匿名用户创建新文件夹 #anon_mkdir_write_enable=YES # 是否激活目录欢迎信息功能 # 当用户用CMD模式首次访问服务器上某个目录时,FTP服务器将显示欢迎信息 # 默认情况下,欢迎信息是通过该目录下的.message文件获得的 # 此文件保存自定义的欢迎信息,由用户自己建立 #dirmessage_enable=YES # 是否让系统自动维护上传和下载的日志文件

# 默认情况该日志文件为/var/log/vsftpd.log,也可以通过下面的xferlog_file选项对其进行设定# 默认值为NO xferlog_enable=YES # Make sure PORT transfer connections originate from port 20 (ftp-data). # 是否设定FTP服务器将启用FTP数据端口的连接请求 # ftp-data数据传输,21为连接控制端口 connect_from_port_20=YES # 设定是否允许改变上传文件的属主,与下面一个设定项配合使用 # 注意,不推荐使用root用户上传文件 #chown_uploads=YES # 设置想要改变的上传文件的属主,如果需要,则输入一个系统用户名 # 可以把上传的文件都改成root属主。whoever:任何人 #chown_username=whoever # 设定系统维护记录FTP服务器上传和下载情况的日志文件 # /var/log/vsftpd.log是默认的,也可以另设其它 #xferlog_file=/var/log/vsftpd.log # 是否以标准xferlog的格式书写传输日志文件 # 默认为/var/log/xferlog,也可以通过xferlog_file选项对其进行设定 # 默认值为NO #xferlog_std_format=YES # 以下是附加配置,添加相应的选项将启用相应的设置 # 是否生成两个相似的日志文件 # 默认在/var/log/xferlog和/var/log/vsftpd.log目录下

Linux下VsFTP配置全方案

Linux下VsFTP配置全方案 纲要: 一,VsFTPd的简述 二,企业Linux下vsFTPD方案 三,VsFTPD相关配置文件详解 一,VsFTPd的简述: VSFTP(Very Secure FTP Daemon,非常安全的FTP服务器)。顾名思义,VSFTPD 设计的出发点就是安全性。同时随着版本的不断升级,VSFTPD在性能和稳定性上也取得了极大的进展。除了安全和性能方面很优秀的外,还有很好的易用性。Red Hat公司在自己的FTP服务器(https://www.360docs.net/doc/8717245260.html,)上就使用了vsFTPd 二,企业Linux下vsFTPD实战方案 要求: 1. 用户:netseek_com;FTP:https://www.360docs.net/doc/8717245260.html,(19 2.168.0.21,我已经配置好了相关的DNS) 2. 禁止匿名登陆,禁止用户离开用户目录 3. 命令通道端口使用5021,数据通道端口使用5020(你可以改成你想设置的端口如1021,1020) 4. 允许使用被动模式使用端口范围为10010~10020. 5. 用户带宽设置为200kps;用户空间大小限制为300M,允许宽限期限内有10MB 的缓冲 具体操作步骤如下: 为了更完全的描述安装全过程,我在我的另一台主机(netseek)上进行配置,在台机IP:192.168.0.20上绑定了192.168.0.21,也配置好了相关的DNS解析,在这里我就不多说了请参照”Linux全能web服务器架设”。 1.配置相关服务 启动服务: [root@netseek root]# #rpm –qa | grep vsftpd ;查看是否安装vsftpd服务 #/etc/init.d/vsftpd start ;启动服务 #chkconfig vsftpd on ;让系统服务随着系统启动而启动 配置相关文档: #vi /etc/vsftpd/vsftpd.conf 禁止匿名用户访问: anonymous_enable=YES,将YES改为NO 在文件末尾加如下的设置: # new added by netseek listen_port=5021 ;命令通道端口,默认为21 listen_data_port=5020 ;数据通道端口,默认为20 pasv_enable=YES ;允许被动模式 pasv_min_port=10000 ;被动模式使用端口范围 pasv_max_port=10010 local_max_rate=200000 ;用户宽带限制 chroot_local_user=YES ;禁用户离开主目录

解决vsftp服务器root账户不能登录ftp的测试

解决vsftp服务器root账户不能登录ftp的测试 默认情况下vsftp是不允许root用户登录的,可以通过修改限制来解决这个问题。首先找到vsftp的配置目录 [root@localhost vsftpd]# pwd /etc/vsftpd [root@localhost vsftpd]# ls chroot_list ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh [root@localhost vsftpd]# 修改 [root@localhost vsftpd]# cat ftpusers # Users that are not allowed to login via ftp #root bin daemon adm lp sync shutdown halt mail news uucp operator games nobody 修改 [root@localhost vsftpd]# cat user_list # vsftpd userlist # If userlist_deny=NO, only allow users in this file # If userlist_deny=YES (default), never allow users in this file, and # do not even prompt for a password. # Note that the default vsftpd pam config also checks /etc/vsftpd/ftpusers # for users that are denied. #root bin daemon adm lp sync shutdown halt mail

VSFTP搭建 配置文件详解 实例

关于VSFTP vsftpd是目前Linux最好的FTP服务器工具之一,其中的vs就是“Very Secure”的缩写,可见它的最大优点就是安全,除此之外,它还具有体积小,可定制强,效率高的优点。 它可运行在Linux、Solaris等系统中,支持很多其他的FTP 服务器不支持的特征: 非常高的安全性需求: 带宽限制 良好的可伸缩性 创建虚拟用户的可能性 分配虚拟IP地址的可能性: 一、安装vsftpd服务 在进行安装该服务之前,必须现将linux的环境装好才行: [root@testtimeslinux root]# rpm -qa|grep vsftpd//查看是否已经安装了该软件 vsftpd-1.2.0-4 [root@testtimeslinux root]# rpm -e vsftpd-1.2.0-4//卸载已经安装的软件 warning: /etc/vsftpd/vsftpd.conf saved as /etc/vsftpd/vsftpd.conf.rpmsave [root@testtimeslinux root]# [root@testtimeslinux root]# rpm -qa|grep vsftpd //再次查看是否完全卸载 [root@testtimeslinux /]# cd /mnt [root@testtimeslinux /]# mkdir cdrom [root@testtimeslinux /]# mount /dev/cdrom /mnt/cdrom//在根目录下进行挂载 mount: block device dev/cdrom is write-protected, mounting read-only 在Linux系统中,如果要使用硬盘、光盘、软盘或MO盘等存储设备,必须先进行挂装(Mount)。当存储设备挂装完成之后,就可以将其作为一个目录来进行访问了。挂装设备需要使用mount命令。执行这一命令,至少要先确定下列三种信息: 1. 要挂装(Mount)对象的文件系统类型; 2. 要挂装(Mount)对象的设备名称(/dev/...); 3. 要将设备挂装(Mount)到哪一目录。 [root@testtimeslinux /]# cd /mnt/cdrom/package [root@testti meslinux…]# rpm -ivh vsftpd-2.2.2-6.el6_0.1.i686.rpm //进行安装vsftpd-2.2.2-6.el6_0.1.i686.rpm,此操作相当于window下的双击setup文件。信息如下: warning: vsftpd-2.2.2-6.el6_0.1.i686.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY Preparing... ########################################### [100%] 1:vsftpd ########################################### [100%] [root@testtimeslinux RPMS]# rpm -aq|grep vsftpd //查看是否安装vsftpd vsftpd-2.2.2-6.el6_0.1.i686 [root@testtimeslinux RPMS]# cd / [root@testtimeslinux /]# umount mnt/cdrom//退出挂载 [root@testtimeslinux /]# service vsftpd start//启动vsftpd 服务 为vsftpd 启动vsftpd:[ 确定]

杨海艳-主讲-linux之VsFTP配置步骤截图

vsftp的配置步骤讲解说明 主讲人:杨海艳 然后vim /etc/vsftpd/vsftpd.conf

service vsftpd restart 【案例1】建立基于虚拟用户的FTP服务器,并根据以下要求配置FTP服务器。 (1)配置FTP匿名用户的主目录为/var/ftp/anon。下载带宽限制为100kB/s (2)建立一个名为abc,口令为xyz的FTP账户。下载带宽限制为500kB/s。 (3)设置FTP服务器同时登录到FTP服务器的最大链接数为100;每个IP最大链接数为3;用户空闲时间超过限值为5分钟。 mkdir /var/ftp/anon useradd abc passwd abc vim /etc/vsftpd/vsftpd.conf 主要内容如下 anonymous_enable=YES anon_root=/var/ftp/anon anon_max_rate=100000 # Uncomment this to allow local users to log in. local_enable=YES local_max_rate=500000 max_clients=100 max_per_ip=3 connect_timeout=300 以上是本地的LOCAL用户 下面是用虚拟用户来实现 vim /etc/vsftpd/vuser 内容如下 tom 123 生成数据库文件 db_load -T -t hash -f /etc/vsftpd/vuser /etc/vsftpd/vuser.db chmod 600 /etc/vsftpd/vuser.db vim /etc/pam.d/vsftpd 注释掉原来的内容 然后加入 auth required pam_userdb.so db=/etc/vsftpd/vuser account required pam_userdb.so db=/etc/vsftpd/vuser 最后编辑VSFTPD.CONF加入下面两句 guest_enable=YES guest_username=abc

超详细linux vsftpd配置大全文档

FTP服务的配置 ftp服务器的软件——vsftpd,其全称是“Very Secure FTP Daemon”。Vsftpd的配置文件在/etc/vsftpd/目录下 1 ftpusers PAM模块 /etc/pam.d/vsftpd 所指定的那个无法登录的用户配置文件。 2 user_list 默认的情况下,写在这个文件里帐号都不允许登录vsftpd,它能否生效与vsftpd.conf中的参数userlist_enable 、userlist_deny有关。 本地用户管理: 1)selinux布尔值ftp_home_dir 改为on, setsebool -P ftp_home_dir on 2)配置文件vsftpd.conf中的local_enable=YES,即默认设置 此时,这些实体用户能可以离开他们默认的目录即/home/~,如果需要将实体用户限制在他们的默认目录下,不允许他们到其他目录需要进行一下设置: Chroot_local_user=NO,(默认此行被注释,即不启动),修改这行下面的参数 Chroot_list_enable=YES和chroot_list_file=/etc/vsftpd/chroot_list,然后 在/etc/vsftpd/目录下创建chroot_list文件,将需要限制离开默认目录的实体用户的名字写进去。 修改user_list_enable=YES user_deny=YES,则可将不允许登录的用户写入/vsftpd目录下的user_list。 实体用户能上传、下载、删除默认目录下的文件。 修改默认发布目录 1)建立发布目录。mkdir -p /share/doc 2)修改发布目录权限、属主和selinux安全上下文。

linux vsftp安全配置

Linux vsftp安全配置 FTP服务器面临的安全隐患 FTP服务器面临的安全隐患主要包括:缓冲区溢出攻击、数据嗅探、匿名访问缺陷和访问漏洞。 VSFtp一些安全配置: 1. 修改Vsftpd服务器的默认端口和修改其他设置 基于安全考虑,将预设的21端口改为2123。修改配置文件/etc/vsftpd/,在文件最后增加如下一行内容: listen_port=2123 ftp_data_port=2020 在实际应用中,为了增加安全性,会将FTP服务器置于防火墙之后。修改Vsftpd 服务器的默认端口后要及时修改防火墙的端口设定。现在服务器FTP端口为2123,数据传输端口为2020。 #iptables -A INPUT -p tcp -m multiport --dport 2123,2020 -j ACCEPT #iptables -A INPUT -p tcp -j REJECT --reject-with tcp-reset 修改其他设置 ls_recurse_enable=NO #关闭“ls -R"命令,该命令常被用于DoS攻击,非常浪费系统资源# ascii_download_enable=NO #关闭ASCII模式下载,防止被用于DoS 攻击,ASCII下载很消耗CPU负担 2.使用BlockHosts软件防范暴力破解 BlockHosts软件就是利用通过分析日志文件帮助tcp_wrappers实现工作自动化。例如在30秒钟内一个IP地址()连续30次登录sshd服务器而且全部因为密码错误登录失败。那么这个IP地址无疑是非法或者恶意主机。这时BlockHosts 会自动将该IP地址写入/etc/文件。首先编辑你的/etc/文件,一般修改 security.* /var/log/security条目内容如下: security.*; /var/log/security

RedHat 配置与安装vsftp服务

RedHat 配置与安装vsftp服务 (综合他人和自己实践所得,若有冲突还请见谅) 1. vsftp要求功能: a) 不允许匿名登录,只允许特定用户登录 b) 文件上传到指定目录,不允许进入其它目录 2. 在RedHat下安装ftp rpm -qavsftpd #查询是否已安装vsftpd服务,若没有则安装 方式一:找到rpm包安装:rpm -ivhvsftpd.*****.rpm 方式二:搭建yum本地光盘源安装:yum install vsftp 3. 手动配置ftp 的配置文件:/etc/vsftpd/vsftpd.conf vsftp的/etc/vsftp/vsftp.conf相关默认设置 anonymous_enable=YES local_enable=YES write_enable=YES local_umask=022 dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES xferlog_std_format=YES ascii_upload_enable=YES ascii_download_enable=YES listen=YES pam_service_name=vsftpd userlist_enable=YES tcp_wrappers=YES 自己设置(和默认的差不多,有的默认的没打开则打开,已经打开的按需求修改属性) anonymous_enable=NO #禁止匿名用户登录 local_enable=YES#允许本地实体用户登录 write_enable=YES #允许用户上传数据 local_umask=022 #建立新目录(755)与文件(644)的权限 dirmessage_enable=YES#若登录目录下有.message则会显示该文件内容可以自己在登录目录下创建.message文

FTP服务器配置说明_2010.11.17(完整版)

FTP服务器配置说明 使用版本:Fedora 12 修订日期:2010年11月

目录 前言 (3) 1.FTP服务器的安装和配置 (4) 1.1 实验拓扑 (4) 1.2 安装vsftpd (4) 1.3 配置FTP服务器 (5) 2.FTP服务器的验证 (8) 2.1 在Linux下验证FTP服务器 (8) 2.1.1 从FTP server上下载文件 (8) 2.1.2 向FTP server上传文件,并创建文件夹 (10) 2.2 在XP下验证FTP服务器 (15) 2.2.1 从FTP server上下载文件 (15) 2.2.2 向FTP server上传文件,并创建文件夹 (17)

前言 FTP(File Transfer Protocol)是互联网上典型的文件传输协议,用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。用户可以通过它把自己的PC机与世界各地所有运行FTP协议的服务器相连,访问服务器上的大量程序和信息。FTP的主要作用,就是让用户连接上一个远程计算机(这些计算机上运行着FTP服务器程序)察看远程计算机有哪些文件,然后把文件从远程计算机上拷到本地计算机,或把本地计算机的文件送到远程计算机去。 本次实验介绍vsftp的安装和配置。vsftp是一个基于GPL发布的类Unix 系统上使用的FTP服务器软件,它的全称是very secure ftp的缩写。顾名思义,这是一个比较安全的FTP服务器软件。实际上它提供的一些机制确实在一定程度上提高了安全性,例如程序权限、chroot软件的使用等。

Linux1 FTP服务器 vsFTP的启动模式

Linux1 FTP 服务器 vsFTP 的启动模式 vsFTPd 拥有两种启动的模式,分别是一直在监听的stand alone (独立安全模式),一种则是通过xinetd 这个super daemon (超级服务)来管理的方式。两种方式所使用的启动程序不太相同,而Red Hat Linux5.4则默认是以stand alone 来启动的。那么什么情况下应该选择stand alone 或者是super daemon 呢?如果你的FTP 服务器在整个因特网上是用来完成大量的下载任务,比如各大院校的FTP 服务器,则建议使用独立安全模式,服务器的速度会比较快。如果仅是提供给内部人员使用的FTP 服务器,那么使用super daemon 来管理即可。 1.独立安全模式启动vsFTPd 采用独立安全模式时,Red Hat Enterprise Linux5.4不用做任何设置就能够启动vsFTPd (因为它通过利用系统本身提供的脚本来进行)。只需在终端下,输入“/etc/init.d/vsFTPd start ”命令,并按【回车】键即可,如图8-29所示。 图8-29 启动vsFTPd 服务 另外,如果需要让vsftpd 服务随系统启动而自动加载,可以在终端内执行“ntsysv ”命令启动服务配置程序,从服务列表中找到“vsftpd ”服务,并按【空格】键在其前面加上星号(*),然后选择【确定】选项,如图8-30所示。 提 示 Stand alone 字面为“独立的启动”,该模式的进程系统后,常驻内存,占用系统资源,但相应快,一有请求来就立刻响应。Super daemon 相对于Stand alone ,这种服务的启动由统一的一个进程负责响应该服务,此进程就是xinet 。 提 示 若要停止vsFTPd 服务,使用/etc/init.d/vsftpd stop 命令;重启vsFTPd 服务,使用/etc/init.d/vsftpd restart 命令。

linux下FTP服务器安装配置(VSftp)

环境: RedHat AS4 说明: 如果不做说明,一般安装命令均使用ROOT权限,用 # 表示 特别说明:无 以下文章介绍Liunx 环境下vsftpd的三种实现方法 一、前言 Vsftp(Very Secure FTP)是一种在Unix/Linux中非常安全且快速稳定的 FTP服务器,目前已经被许多大型站点所采用 Vsftpd的实现有三种方式 1、匿名用户形式:在默认安装的情况下,系统只提供匿名用户访问 2、本地用户形式:以/etc/passwd中的用户名为认证方式 3、虚拟用户形式:支持将用户名和口令保存在数据库文件或数据库服 务器中。相对于FTP的本地用户形式来说,虚拟用户只是FTP服务器 的专有用户,虚拟用户只能访问FTP服务器所提供的资源,这大大增 强系统本身的安全性。相对于匿名用户而言,虚拟用户需要用户名和密 码才能获取FTP服务器中的文件,增加了对用户和下载的可管理性。 对于需要提供下载服务,但又不希望所有人都可以匿名下载;既需要对 下载用户进行管理,又考虑到主机安全和管理方便的FTP站点来说, 虚拟用户是一种极好的解决方案。

默认情况下vsftp上传之后文件的权限是600,目录权限是700 想要修改上传之后文件的权限,有两种情况 如果使用vsftp的是本地用户 则要修改配置文件中的 local_umask的值 如果使用vsftp的是虚拟用户 则要修改配置文件中的 anon_umask的值 二、vsftp配置大全-三种方式的实现 1、匿名用户形式: 任务实现匿名用户上传,下载,删除,重命名,新建目录,删除目录,重命名目录; 第一步:在/var/ftp/下,新建一个目录share; chmod –R 777 /var/ftp/share/ chown –R nobody:nobody /var/ftp/share/ 第二步:更改/etc/vsftpd/vsftpd.conf anonymous_enable=YES local_enable=YES

VSFTP配置说明

VSFTP配置说明 文档作者:黎芝维日期:2012-9-7 PDT经理:日期:2012-9-7 审核:日期: 批准:日期: 市风向标信息技术所有 部资料注意

目录 1. Vsftp简介 (3) 2. Vsftp安装配置 (3) 2.1 实验环境 (3) 2.2 安装vsftp (3) 2.2.1 检查vsftp是否已安装 (3) 2.2.2 安装vsftp (3) 3. Vsftp基本操作 (4) 3.1 启动、停止、重启vsftpd (4) 3.2 其它操作 (5) 4. Vsftp相关配置文件说明 (5) 5. vsftpd.conf配置详解 (6) 5.1 匿名用户相关设置 (6) 5.2 FTP服务端口的指定 (7) 5.3 上传模式的设置 (7) 5.4 Vsftp服务器指定IP地址 (7) 5.5 锁定用户,禁止用户离开用户主目录 (7) 5.6 用户访问目录设置 (8) 5.7 FTP服务器的流量控制 (9) 5.8 定制欢迎信息设置 (9) 5.9 本地用户权限设置 (10) 5.10 ascii设置 (10) 5.11 特殊安全设置 (11) 5.12 日志文件设置 (11) 5.13 超时时间设置 (12) 5.14 新增档案权限设置 (12) 5.15 Port设置 (13) 5.16 更换档案权限 (13) 5.17 Standalone选项 (13) 5.18 IPV6设置 (14) 5.19 其它配置项 (14)

1.Vsftp简介 VSFTP(Very Secure FTP Daemon,非常安全的FTP服务器)。顾名思义,VSFTPD设计的出发点就是安全性。同时随着版本的不断升级,VSFTPD在性能和稳定性上也取得了极大的进展。除了安全和性能方面很优秀的外,还有很好的易用性。Red Hat公司在自己的FTP服务器(ftp.redhat.)上就使用了vsFTPd。 2.Vsftp安装配置 2.1实验环境 OS版本:Red Hat Enterprise Linux Server release 5.1。 2.2安装vsftp 2.2.1检查vsftp是否已安装 2.2.2安装vsftp 第一步,从官方(https://www.360docs.net/doc/8717245260.html,)下载vsftp安装包,或者从RedHat 5安装盘里获得vsftp 安装包。

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

服务器上建立基二多个ip的多个 vsftp站点 在服务器上建立多个 ftp站点,每个站点相互独立,拥有独立的配置文件。当然服务器必须有两个以上的IP地址。站点一用本地用户访问,站点二用虚拟用户访问。 下面是两个站点的信息: 站点 IP地址主配置文件匿名用户匿名用户主目录站点一 10.1.5.120 /etc/vsftpd/vsftpd.conf ftp /var/ftp 站点二 10.1.5.121 /etc/vsftpd/vsftpd2.conf ftp2 var/ftp2 一、安装vsftp包: db4-4.6.21-1.fc8.i386.rpm和db4-utils-4.6. 21-7.0.140asp.i386.rpm这两个rpm包,db4-4……这个包安装光盘里面有,但后面这个包光盘里面没有,要在网上下载安装。 进入光盘目录下安装: [root@localhost Packages]# rpm -ivh db4-4.6.21-1.fc8.i386.rpm [root@localhost pub] # rpm -ivh - -force - -nodeps db4-utils-4.6.21-7.0.140asp.i386.rpm 二、添加虚拟IP地址: [root@localhost ~]# cd /etc/sysconfig/network-scripts/ [root@localhost network-scripts]# cp ifcfg-eth0 ifcfg-eth0:1 #添加虚拟网卡[root@localhost network-scripts]# vim ifcfg-eth0:1 #打开刚建立的虚拟网卡DEVICE=eth0:1 #改为0:1 BOOTPROTO=none HWADDR=00:0c:29:d6:c1:53 ONBOOT=yes NETMASK=255.255.255.0 IPADDR=10.1.5.121 #ip地址改为站点2的ip地址 GATEWAY=10.1.5.254 TYPE=Ethernet 保存重启网络配置:service network restart 三、添加本地用户: useradd qiu useradd tang useradd rong 然后设置这三个用户的密码: passwd qiu passwd tang passwd rong 四、关闭防火墙: [root@localhost ~]# lokkit

Linux下vsftp配置笔记!!!

这些咚咚只是我在看书时记录下来的一些简单的配置命令和说明,有些地方也许写的不是很详细,大家可以在参考其他资料来学习! 1.vsftpd 服务软件包 vsftpd-2.0.5-10.el5.i386.rpm:vsftpd 主程序包 2.vsftpd 相关文档 /etc/vsftpd/vsftpd.conf:vsftpd 的核心配置文件 /etc/vsftpd/ftpusers:用于指定哪些用户不能访问FTP 服务器 /etc/vsftpd/user_list:指定允许使用vsftpd 的用户列表文件 /etc/vsftpd/vsftpd_conf_migrate.sh:是vsftpd 操作的一些变量和设置脚本/var/ftp/:默认情况下匿名用户的根目录 (1)配置vsftpd.conf 主配置文件(服务器配置支持上传) 允许匿名用户访问 anonymous_enable=YES 允许匿名用户上传文件并可以创建目录 anon_upload_enable=YES anon_mkdir_write_enable=YES 大家注意,默认匿名用户家目录的权限是755,这个权限是不能改变的。切记!切记!! 2FTP 常规配置应用案例: 需求: 公司内部现在有一台FTP和WEB 服务器,FTP 的功能主要用于维护公司的网站内容,包括上传文件、创建目录、更新网页等等哈~公司现有两个部门负责维护任务,他们分别适用team1和team2帐号进行管理。先要求仅允许team1和team2 帐号登录FTP 服务器,但不能登录本地系统,并将这两个帐号的根目录限制为/var/www/html,不能进入该目录以外的任何目录。 分析: 将FTP和WEB服务器做在一起是企业经常采用的方法,这样方便实现对网站的维护,为了增强安全性,首先需要使用仅允许本地用户访问,并禁止匿名用户登录。其次使用chroot 功能将team1和team2 锁定在/var/www/html目录下。如果需要删除文件则还需要注意本地权限~ 解决方案: (1)建立维护网站内容的ftp 帐号team1 和team2 并禁止本地登录,然后设置其密码useradd -s /sbin/nologin 用户名 (2)配置vsftpd.conf 主配置文件并作相应修改 vim /etc/vsftpd/vsftpd.conf anonymous_enable=NO:禁止匿名用户登录

中标麒麟下sambat和vsftp配置

中标麒麟自带samba和vsftpd服务器配置 Samba服务器配置: 1.在控制中心打开samba配置界面—》首选项-》添加samba用户 2.在samba配置界面点击加号来添加共享 3.重启smb和nmb服务service smb/nmb restart vsftpd服务器配置: 查看系统有没有安装vsftpd : rpm –qa|grep vsftpd 如果有结果返回则已经安装。Servicee vsftpd start Chkconfig vsftpd on 禁用匿名用户 Vi /etc/vsftpd/vsftpd.conf 将“anonymous_enable=NO” 添加虚拟用户 Useradd –s /sbin/nologin -d /目录路径用户名 Chown –R 用户名:用户名/用户路径(注:将用户目录及子目录的所有和所属的组设置为用户)

我应该在vsftpd.conf中加上如下的两行: max_clients=100 max_per_ip=5 如何限制传输速度? anon_max_rate=数字 注:这是匿名的速度 local_max_rate=数字 注:这是vsFTP服务器上本地用户的速度 注:这个数字的单位是byte,所以我们要计算一下。 比如我想让匿名用户和vsFTP上的用户都以80KB下载,所以这个数字应该是 1024×80=81920 所以我们要在vsftpd.conf中加入下面的两行 anon_max_rate=81920 local_max_rate=81920 下面是一些常用的命令: 管理用户组(group)的工具或命令; groupadd 注:添加用户组; groupdel 注:删除用户组; groupmod 注:修改用户组信息 grou ps注:显示用户所属的用户组 用户管理命令 useradd 注:添加用户 userdel 注:删除用户 adduser 注:添加用户 passwd 注:为用户设置密码 usermod 注:修改用户命令,可以通过usermod 来修改登录名、用户的家目录等等;

实验6-FTP服务器的安装和配置

【实验6】FTP服务器的安装和配置 一、实验目的: 1.掌握红帽企业版下vsftpd服务器的安装和配置。 二、【实验环境】 1.虚拟机软件VM Ware 6.0,Redhat Enterprise Linux虚拟机或光盘镜像文 件。 2.2台以上机器组成的局域网。 三、【实验原理】 (一)FTP服务简介 Transfer Procotol,文件传输协议)是专门用来传输文件的协议。实现了服务器和客户机之间的文件传输和资源再分配,是普遍采用资源共享方式之一。 (二)Vsftpd简介 Linux下实现FTP服务的软件很多,最常见的是vsftpd、Wu-和Proftp等。在Red Hat Enterprise Linux 5 中默认安装的FTP软件是vsftpd。 (三)Vs说明 Vsftpd服务的配置文件有:/etc/vs、/etc/vs和/etc/vs。 /etc/vs是FTP服务的主配置文件。主要参数的意义如下: Anonymous_enable=yes (允许匿名登陆) Dirmessage_enable=yes (切换目录时,显示目录下.message的内容)Local_umask=022 (FTP上本地的文件权限,默认是077) Connect_form_port_20=yes (启用FTP数据端口的数据连接)*

Xferlog_enable=yes (激活上传和下传的日志) Xferlog_std_format=yes (使用标准的日志格式) Xperlog_file = /var/log/vs (设置日志文件的名称和路径) (欢迎信息) Pam_service_name=vsftpd (验证方式)* Listen=yes (独立的VSFTPD服务器)* Anon_upload_enable=yes (是否允许匿名用户上传) Anon_mkdir_write_enable=yes (可创建目录的同时可以在此目录中上传文件) Write_enable=yes (开放本地用户写的权限) Anon_other_write_enable=yes (匿名帐号可以有删除的权限) Anon_world_readable_only=no (放开匿名用户浏览权限) Ascii_upload_enable=yes (启用上传的ASCII传输方式) Ascii_download_enable=yes (启用下载的ASCII传输方式) Banner_ (用户连接后欢迎信息使用的是此文件中的相关信息)

vsFtp参数设置大全

vsftpd设置参数详细整理篇(应该比较全了)? -------------------------------------------------------------------------------- 坛子里参数设置的帖子很多,但没有一个全,现在大部分的兄弟熟悉了基本的设置,于是我想把所有的参数都重新整理一下,一来自己回顾一下,二来也可以让新手们有一个参考资料,其中有一些选项自己也不是很理解,错误之处还请各位斑竹和高手指点批改.如果还有遗漏的也请一并补上,谢啦. 也希望把所有vsftpd的设置相关信息贴在下面大家都有一个共同参考的地方. ###############################用户登陆控制########################### #接受匿名用户 anonymous_enable=YES #匿名用户login时不询问口令 no_anon_password=YES #匿名用户主目录 anon_root=(none) #接受本地用户 local_enable=YES #本地用户主目录 local_root=(none) #如果匿名用户需要密码,那么使用banned_email_file里面的电子邮件地址的用户不能登录deny_email_enable=YES #仅在没有pam验证版本时有用,是否检查用户有一个有效的shell来登录 check_shell=YES #若启用此选项,userlist_deny选项才被启动 userlist_enable=YES #若为YES,则userlist_file中的用户将不能登录,为NO则只有userlist_file的用户可以登录userlist_deny=NO #如果和chroot_local_user一起开启,那么用户锁定的目录来自/etc/passwd每个用户指定的目录(这个不是很清楚,很哪位熟悉的指点一下) passwd_chroot_enable=NO #定义匿名登入的使用者名称。默认值为ftp。 ftp_username=FTP ###############################用户权限控制########################### #可以上传(全局控制).

FTP服务器优缺点分析

FTP服务器优缺点分析 1、FTP协议: a)FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称 为“文传协议”。用于Internet上的控制文件的双向传输。同时,它也是 一个应用程序(Application)。用户可以通过它把自己的PC机与世界各 地所有运行FTP协议的服务器相连,访问服务器上的大量程序和信息。 FTP的主要作用,就是让用户连接上一个远程计算机(这些计算机上运 行着FTP服务器程序)察看远程计算机有哪些文件,然后把文件从远程 计算机上拷到本地计算机,或把本地计算机的文件送到远程计算机去。 b)原理:FTP采用“客户机/服务器”方式,用户端要在自己的本地计算机上 安装FTP客户程序。FTP客户程序有字符界面和图形界面两种。字符界 面的FTP的命令复杂、繁多。图形界面的FTP客户程序,操作上要简洁 方便的多。以文件下载为例:一台计算机上面开启一个FTP客户端,输 入FTP服务器地址后,开始连接,服务器响应连接并返回端口信息,连 接成功后,服务器返回你所拥有权限能够看到的文件列表,你可以通过 FTP命令下载想要的文件,而FTP服务器就响应你下载文件的命令,然 后将文件传输到你的客户端,客户端将其保存到电脑里面。 2、FTP能做什么? a)是自己的电脑通过FTP客户端和互联网能连接到世界各地的FTP服务器, 实现文件共享及资源共享。 b)别人也可以通过互联网访问你电脑上面搭建的FTP服务器,使你的信息 及资料能够传播到世界各地。 c)是不同类型、不同系统、不同格式的电脑之间能够互换文件。 3、FTP的优点: a)完全基于网络,覆盖范围广,操作更加灵活,能让更多的人知晓和获益。 b)完善的用户权限管理,能指定每个登陆的用户能看到什么、做什么事情, 如某个用户只能查看和下载A目录,但是某个用户不仅可以查看、下载, 还可以删除、新建等。 c)数据传输可以通过SSL、SSH2进行安全性加密,保证数据不被非法截取, 安全性高。 d)使用TCP/IP协议,保证数据的准确到达。 e)传输速度快。当文件大于1M的时候,FTP的传输速率比HTTP更快,文 件越大,速度越快。 4、FTP服务器种类: a)IIS FTP:Windows系统自带,能实现简单的功能; b)Serv-U:Windows下最强大、使用最广泛的FTP服务器; c)VsFTP:Linux下使用最广泛的FTP服务器; d)ArGoSoft FTP:Windows平台下的FTP服务器,可控制; e)Secure FTP:主要在安全传输方面做的比较好; f)CesarFTP:免费的、适用于一般用户的FTP服务器。 g)……

相关文档
最新文档