Centos|Rhel搭建vsftp

vsftp,在ftp传输中相对安全的

01、安装vsftpd

yum install -y vsftpd

版本信息:

Installed Packages
Name        : vsftpd
Arch        : x86_64
Version     : 2.2.2
Release     : 11.el6_4.1
Size        : 331 k
Repo        : installed
Summary     : Very Secure Ftp Daemon
URL         : http://vsftpd.beasts.org/
License     : GPLv2 with exceptions
Description : vsftpd is a Very Secure FTP daemon. It was written completely from
scratch.

service vsftpd start

匿名的家目录   /var/ftp/pub

默认匿名登录(anonymous)

02、主配置文件

/etc/vsftpd/vsftpd.conf 主配置文件

/etc/vsftpd/ftpusers 指定用户不能访问FTP服务器 依据/etc/pam.d/vsftpd判断

/etc/vsftpd/user_list 文件中指定的用户是否可以访问ftp服务器vsftpd.conf文件中的userlist_deny的取值来决定。

03、简述主配置文件参数

anonymous_enable=YES/no 是否允许匿名用户登录 

anonymous_enable=yes/no 是否允许匿名上传文件

local_enable= YES/no 是否允许本地用户登录 

write_enable= YES/no 是否允许本地用户上传

guest_enable=yes/no 是否允许虚拟用户登录;

local_mask=022 设置本地用户的文件生成掩码为022,默认值为077

dirmessage_enable= YES 设置切换到目录时显示.message隐含文件的内容

xferlog_enable= YES 激活上传和下载日志

connect_from_port_20=YES 启用FTP数据端口连接

pam_service_name=vsftpd 设置PAM认证服务的配置文件名称, 该文件存放在/etc/pam.d目录下

userlist_enable= YES 允许vsftpd.user_list文件中的用户访问服务器

userlist_deny= YES 拒绝vsftpd.user_list文件中的用户访问服务器

listen= YES/no 是否使用独占启动方式(这一项比较重要)

tcp_wrappers= YES/no 是否使用tcp_wrappers作为主机访问控制方式

ftpd_banner=welcome to ftp service 设置连接服务器后的欢迎信息

idle_session_timeout=60 限制远程的客户机连接后,所建立的控制连接,在多长时间没有做任何的操作就会中断(秒)

data_connection_timeout=120 设置客户机在进行数据传输时,设置空闲的数据中断时间

accept_timeout=60 设置在多长时间后自动建立连接

connect_timeout=60 设置数据连接的最大激活时间,多长时间断开,为别人所使用;

max_clients=200 指明服务器总的客户并发连接数为200

max_per_ip=3 指明每个客户机的最大连接数为3

local_max_rate=50000(50kbytes/sec)

anon_max_rate=30000 设置本地用户和匿名用户的最大传输速率限制

pasv_min_port=端口

pasv-max-prot=端口号 定义最大与最小端口,为0表示任意端口;为客户端连接指明端口;

listen_address=IP地址 设置ftp服务来监听的地址,客户端可以用哪个地址来连接;

listen_port=端口号 设置FTP工作的端口号,默认的为21

chroot_local_user=YES 设置所有的本地用户可以chroot 

chroot_local_user=NO 设置指定用户能够chroot

chroot_list_enable=YES 

chroot_list_file=/etc/vsftpd.chroot_list(只有/etc/vsftpd.chroot_list中的指定的用户才能执行 )

local_root=path 无论哪个用户都能登录的用户,定义登录帐号的主目录, 若没有指定,则每一个用户则进入到个人用户主目录;

chroot_local_user=yes/no 是否锁定本地系统帐号用户主目录(所有);锁定后,用户只能访问用户的主目录/home/user,不能利用cd命令向上转;只能向下;

chroot_list_enable=yes/no 锁定指定文件中用户的主目录(部分),文件:/chroot_list_file=path 中指定;

userlist_enable=YES/NO 是否加载用户列表文件;

userlist_deny=YES 表示上面所加载的用户是否允许拒绝登录;

userlist_file=/etc/vsftpd.user_list 列表文件

更多参数详情查看example

04、vsftp的登录方式

匿名帐号、本地帐号、虚拟帐号。默认配置就可以实现匿名帐号和真实帐号登录

工作中一般用到匿名用户和本地账户最多

设置虚拟用户:http://pengbotao.cn/linux-vsftp-virtual-setting.html

vsftpd相关文件

vsftpd文件 文件说明
/etc/vsftpd/vsftpd.conf 主配置文件
/usr/sbin/vsftpd Vsftpd的主程序。
/etc/pam.d/vsftpd PAM认证文件(此文件中file=/etc/vsftpd/ftpusers字段,指明阻止访问的用户来自/etc/vsftpd/ftpusers文件中的用户)
/etc/vsftpd/ftpusers 禁止使用vsftpd的用户列表文件。记录不允许访问FTP服务器的用户名单,管理员可以把一些对系统安全有威胁的用户账号记录在此文件中,以免用户从FTP登录后获得大于上传下载操作的权利,而对系统造成损坏。
/etc/vsftpd/user_list 禁止或允许使用vsftpd的用户列表文件。这个文件中指定的用户缺省情况(即在/etc/vsftpd/vsftpd.conf中设置userlist_deny=YES)下也不能访问FTP服务器,在设置了userlist_deny=NO时,仅允许user_list中指定的用户访问FTP服务器。
/var/ftp vsftpd的匿名用户登录根目录。

vsftp配置参数意义

参数配置 默认值 说明
anonymous_enable=YES YES 是否用于匿名用户(ftp或anonymous)登录FTP,登录后进入/var/ftp
local_enable=YES NO 是否允许本地用户登录FTP服务器,登录后进入用户主目录
write_enable=YES NO 是否允许写入
local_umask=022 077 默认的umask码
anon_upload_enable=YES NO 是否允许匿名用户上传文件。如果此项要生效,则配置write_enable必须激活。并且匿名用户所在相关目录有写权限。
anon_mkdir_write_enable=YES NO 是否允许匿名用户创建新目录。如果此项要生效,则配置write_enable必须激活。并且匿名用户所在相关目录有写权限。
dirmessage_enable=YES NO 是否激活目录欢迎信息功能。.message文件可以通过更改message_file来调整。
xferlog_enable=YES NO 是否启动记录上传和下载日志。
connect_from_port_20=YES 20 设定PORT模式下的连接端口(只要connect_from_port_20被激活)。
chown_uploads=YES NO 设定是否允许改变上传文件的属主,与下面一个设定项配合使用
chown_username=whoever ROOT 置想要改变的上传文件的属主,如果需要,则输入一个系统用户名,例如可以把上传的文件都改成root属主。whoever:任何人
xferlog_file=/var/log/xferlog /var/log/xferlog 设置日志文件的文件名和存储路径
xferlog_std_format=YES NO 是否使用标准的ftpd xferlog日志文件格式
idle_session_timeout=600 300 设置空闲的用户会话中断时间,默认是10分钟
data_connection_timeout=120 300 设置数据连接超时时间,默认是120秒
nopriv_user=ftpsecure nobody 运行vsftpd需要的非特权系统用户
async_abor_enable=YES NO 是否允许运行特殊的ftp命令async ABOR。
ascii_upload_enable=YES

ascii_download_enable=YES

NO 是否使用ascii码方式上传和下载文件。
deny_email_enable=YES

banned_email_file=/etc/vsftpd/banned_emails

NO 禁止匿名用户通过banned_email_file定义的邮件地址做密码
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
NO 设置为NO时,用户登录FTP后具有访问自己目录以外的其他文件的权限;设置为YES时,chroot_list_file中的用户列表被锁定在自己的home目录下。此时chroot_local_user=NO,如果chroot_local_user=YES则chroot_list_file中的用户将不被锁定在home目录下。
ls_recurse_enable=YES NO 是否允许递归查询
listen=YES NO vsftpd 处于独立启动模式
listen_ipv6=YES NO 是否支持IPV6
pam_service_name=vsftpd ftp 设定vsftpd将要用到的PAM服务的名字。
userlist_enable=YES NO 设置为YES,vsftpd将读取userlist_file参数所指定的文件中的用户列表。当列表中的用户登录FTP服务器时,该用户在提示输入密码之前就被禁止了。即该用户名输入后,vsftpd查到该用户名在列表中,vsftpd就直接禁止掉该用户,不会再进行询问密码等后续步聚
userlist_deny=YES YES 决定禁止还是只允许由userlist_file指定文件中的用户登录FTP服务器。此选项在userlist_enable 选项启动后才生效。YES,默认值,禁止文件中的用户登录,同时也不向这些用户发出输入密码的提示。NO,只允许在文件中的用户登录FTP服务器
userlist_file /etc/vsftpd/user_list 当userlist_enable被激活,系统将去这里调用文件。
tcp_wrappers=YES NO 是否允许tcp_wrappers管理
listen_port 21 如果vsftpd处于独立运行模式,这个端口设置将监听的FTP连接请求。
max_clients 0 FTP的最大连接数,0为无限制。
max_per_ip 0 单个IP的最大连接数。
anon_max_rate 0 匿名用户允许的最大传输速度,单位:字节/秒
local_max_rate 0 本地认证用户允许的最大传输速度,单位:字节/秒。/td>

附上本地用户的配置,

useradd -s /sbin/nologin  ftp-mvp

passwd ftp-mvp

vi /etc/vsftpd/chroot_list

ftp-mvp

#禁止匿名,允许本地用户登录
anonymous_enable=NO
local_enable=YES  #本地用户开启
write_enable=YES
local_umask=022
#日志相关设置
dirmessage_enable=YES
xferlog_enable=YES
xferlog_file=/var/log/xferlog
xferlog_std_format=YES
#设置监听与会话时长
connect_from_port_20=YES
idle_session_timeout=600
data_connection_timeout=120
#上传
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=Welcome
#设置普通用户主目录,chroot_list用户家目录
local_root=/data/ftp
chroot_local_user=YES
chroot_list_enable=No   #不允许列表处锁定目录外!
chroot_list_file=/etc/vsftpd/chroot_list    #本地用户列表
#名字连接数
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
max_clients=24

Vsftpd官方参数详解:http://vsftpd.beasts.org/vsftpd_conf.html



引用:

http://wiki.ubuntu.com.cn/Vsftpd   #ubuntu官方介绍值得看看

http://jinjianjun.blog.51cto.com/8539251/1396758

http://www.jb51.net/LINUXjishu/81906.html

时间: 2024-10-23 11:38:40

Centos|Rhel搭建vsftp的相关文章

centos 7 搭建vsftp

1  ftp 概述                                                FTP:(file  transfer  protocol文件传输协议)是典型的C/S 结构的应用层协议,需要由服务端软件,客户端软件两个部分共同实现文件传输共能. 2  FTP连接及传输模式                                       FTP服务器默认使用TCP协议的20,21端口与客户端进行通信,20端口用于建立数据连接,并传输文件数据,21端口用

CentOS下搭建SVN Server

1. 介绍 这里想在CentOS上搭建的是基于http访问的SVN Server 2. 软件准备 安装相关软件 yum install httpd httpd-devel mod_dav_svn subversion mod_ssl .csharpcode, .csharpcode pre { font-size: small; color: black; font-family: consolas, "Courier New", courier, monospace; backgro

在CentOS中搭建自己的VPN

很多人都有买国外的VPN看视频的经历,今天我们就讲一讲如何搭建一个自己的VPN.下面是我在CentOS中搭建自己的VPN的过程,简单说来,主要分为两步: 1:购买国外的VPS 2:在购买的VPS上搭建VPN 一.购买国外VPS 1.购买国外的VPS主机[我买的时候用的是朋友推荐的链接,省了点钱,只要是8块多],这里推荐一个我的链接,https://my.frantech.ca/aff.php?aff=2099 2.打开链接以后,这里我们需要先注册一个账户. 3.选择主页[Services]下的[

Install MySQL 5.7 on Fedora 25/24, CentOS/RHEL 7.3/6.8/5.11

1. Change root user Bash su - ## OR ## sudo -i 2. Install MySQL YUM repository Fedora Bash ## Fedora 25 ## dnf install https://dev.mysql.com/get/mysql57-community-release-fc25-9.noarch.rpm ## Fedora 24 ## dnf install https://dev.mysql.com/get/mysql57

PHP 5.4 on CentOS/RHEL 7.0, 6.5 and 5.10 via Yum

PHP 5.4.36 has been released on PHP.net on 18th December 2014, and is also available for CentOS/RHEL 5.10 and 6.5 at Webtatic via Yum. Update 2013-07-21 – A new package “php54w-mysqlnd” has been added as an alternative to “php54w-mysql”. This will in

Install Oracle Java JDK/JRE 7u55 on Fedora 20/19, CentOS/RHEL 6.5/5.10

What's new in Sun/Oracle Java 7 VM Compressed 64-bit object pointers Garbage-First GC (G1) JSR 292: VM support for non-Java languages (InvokeDynamic) Lang JSR 294: Language and VM support for modular programming JSR 308: Annotations on Java types JSR

centos和redhat vsftp安装和设定

1.安装vsftp yum install vsftpd 2.配置vsftp 配置文件在 /etc/vsftpd/vsftpd.conf,建议把匿名登录关闭 anonymous_enable=NO 3.设置vsftp为开机启动 chkconfig vsftpd on 通过chkconfig –list可以查看哪些是开机启动的 4.通过useradd ftpuser 添加用户 5.建立ftp用户目录,改变目录所属用户为前面前的用户 6.修改/etc/vsftpd/vsftpd.conf, 添加 u

centos下搭建dhcp服务器

centos下搭建dhcp服务器 一.软件环境 CentOS release 6.5 dhcp-4.1.1-51.P1.el6.centos.x86_64 dhcp-common-4.1.1-51.P1.el6.centos.x86_64 二.网络拓扑 dhcp服务器--H3c交换机(7503)-- H3c交换机(5500)-- H3c交换机(3100)--dhcp客户端(办公电脑) 网段: 10.2.240.0/24 10.2.180.0/24 dhcp服务器ip:10.2.33.253 三.

CentOS/RHEL Linux安装EPEL第三方软件源

EPEL(Extra Packages for Enterprise Linux) 是由 Fedora 社区打造,为 RHEL 及衍生发行版如 CentOS等提供高质量软件包的项目.装上了EPEL,就像在 Fedora 上一样,可以通过 yum install 软件包名,即可安装很多以前需要编译安装的软件.常用的软件或一些比较流行的软件,比如现在流行的nginx, openvpn等等,都可以使用EPEL很方便的安装更新. 安装EPEL源 更新: 目前可以直接通过执行命令: yum install