linux上安装配置vsftpd(转)

简介: 转自:http://www.webarch.org/category/linux生产环境是Centos5.6,由于需要提供ftp服务,就找了一款比较小巧的ftp服务器端软件,vsftpd(vsftpd 的名字代表”very secure FTP daemon”.vsftpd在安全性、高性能及稳定性三个方面有上佳的表现。

 

转自:http://www.webarch.org/category/linux
生产环境是Centos5.6,由于需要提供ftp服务,就找了一款比较小巧的ftp服务器端软件,vsftpd(vsftpd 的名字代表”very secure FTP daemon”.
vsftpd在安全性、高性能及稳定性三个方面有上佳的表现。
它提供的主要功能包括虚拟IP设置、虚拟用户、Standalone、inetd操作模式、强大的单用户设置能力及带宽限流等。

安全是它的开发者 Chris Evans 考虑的首要问题之一。在这个 FTP 服务器设计开发的最开始的时候,高安全性就是一个目标。

 
 1.查看是否安装vsftp
 rpm -qa | grep vsftpd
 如果出现vsftpd-2.0.5-21.el5,说明已经安装 vsftp
 
 安装vsftp
 yum -y install vsftpd
 
 2.测试 是否安装成功 (ip 改成自己啊,不要用俺的此次登录为匿名登录 user: anonymous 密码为空 如果成功登录会有下面内容 这说明vsftpd安装成功)
 [root@localhost ~]#service vsftpd start
 为 vsftpd 启动 vsftpd:[确定]
 
 3,配置vsftpd
 # whereis vsftpd
 vsftpd: /usr/sbin/vsftpd /etc/vsftpd /usr/share/man/man8/vsftpd.8.gz
 yum安装的主要目录为上述的3个目录,其中配置文件vsftpd.conf在/etc/vsftpd中,下面看下怎么配置vsftpd.conf
 
 # 默认配置文件: /etc/vsftpd.conf
 #     下面是配置的选项及说明
 ######### 核心设置 ###########
 
 # 允许本地用户登录
 local_enable=YES
 # 本地用户的写权限
 write_enable=YES
 
 # 使用FTP的本地文件权限,默认为077
 # 一般设置为022
 local_umask=022
 
 # 切换目录时
 # 是否显示目录下.message的内容
 dirmessage_enable=YES
 dirlist_enable = NO
 #验证方式
 #pam_service_name=vsftpd
 
 # 启用FTP数据端口的数据连接
 connect_from_port_20=YES
 
 # 以独立的FTP服务运行
 listen=yes
 
 # 修改连接端口
 #listen_port=2121
 
 ######### 匿名登录设置 ###########
 
 # 允许匿名登录
 anonymous_enable=NO
 
 # 如果允许匿名登录
 # 是否开启匿名上传权限
 #anon_upload_enable=YES
 
 # 如果允许匿名登录
 # 是否允许匿名建立文件夹并在文件夹内上传文件
 #anon_mkdir_write_enable=YES
 
 # 如果允许匿名登录
 # 匿名帐号可以有删除的权限
 #anon_other_write_enable=yes
 
 # 如果允许匿名登录
 # 匿名的下载权限
 # 匿名为Other,可设置目录/文件属性控制
 #anon_world_readable_only=no
 
 # 如果允许匿名登录
 # 限制匿名用户传输速率,单位bite
 #anon_max_rate=30000
 
 ######### 用户限制设置 ###########
 
 #### 限制登录
 
 # 用userlist来限制用户访问
 #userlist_enable=yes
 
 # 名单中的人不允许访问
 #userlist_deny=no
 
 # 限制名单文件放置的路径
 #userlist_file=/etc/vsftpd/userlist_deny.chroot
 
 #### 限制目录
 
 # 限制所有用户都在家目录
 #chroot_local_user=yes
 
 # 调用限制在家目录的用户名单
 chroot_list_enable=YES
 
 # 限制在家目录的用户名单所在路径
 chroot_list_file=/etc/vsftpd/chroot_list
 
 ######### 日志设置 ###########
 
 # 日志文件路径设置
 xferlog_file=/var/log/vsftpd.log
 
 # 激活上传/下载的日志
 xferlog_enable=YES
 
 # 使用标准的日志格式
 #xferlog_std_format=YES
 
 ######### 安全设置 ###########
 
 # 用户空闲超时,单位秒
 #idle_session_timeout=600
 
 # 数据连接空闲超时,单位秒
 #data_connection_timeout=120
 
 # 将客户端空闲1分钟后断开
 #accept_timeout=60
 
 # 中断1分钟后重新连接
 #connect_timeout=60
 
 # 本地用户传输速率,单位bite
 #local_max_rate=50000
 
 # FTP的最大连接数
 #max_clients=200
 
 # 每IP的最大连接数
 #max_per_ip=5
 
 ######### 被动模式设置 ###########
 
 # 是否开户被动模式
 pasv_enable=yes
 
 # 被动模式最小端口
 pasv_min_port=5000
 
 # 被动模式最大端口
 pasv_max_port=6000
 
 ######### 其他设置 ###########
 # 欢迎信息
 ftpd_banner=Welcome to Ftp Server!
 
 
 4 添加ftp防火墙规则:
 /sbin/iptables -I INPUT -p tcp --dport 21 -j ACCEPT
 /etc/rc.d/init.d/iptables save
 /etc/init.d/iptables restart

在文件/etc/sysconfig/iptables中添加以下记录,后执行service iptables restart重启
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 21 -j ACCEPT
 
 5 添加用户(注意,该处添加nologin类型用户ftpuser):
 useradd -d /home/ftp -s /sbin/nologin ftpuser
 如果已启动vsftpd,重新启动
 pkill vsftpd /usr/sbin/vsftpd &
 
 6 到此,整个小巧的ftp服务器搭建成功。可以使用FileZilla FTP或FlashFXP等客户端软件登陆ftp server了。

http://www.cnblogs.com/itech/archive/2012/09/16/2687378.html

 http://blog.csdn.net/bluishglc/article/details/42398811

sftp ncftp

 

 

常见问题及解决办法:
1、root 用户220拒绝
解决办法:
在/etc/vsftpd.ftpusers和/etc/vsftpd.user_list中将root注释掉,保存文件后立即生效
原因:
[root@test ums-client]# more /etc/vsftpd.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


2.设定ftp登陆时的默认目录
修改vsftp默认用户访问目录在配置文件目录 /etc/vsftpd/下的 vsftpd.conf文件中。
找到并打开/etc/vsftpd/vsftpd.conf, 设置添加以下代码:
local_root=/home/xxx
那么ftp用户访问的默认目录就是xxx这个目录了。
ftp用户访问的默认目录设置好了, 还可以单独设置这个目录的访问权限如(777,755等权限), 方法请参考文章: vsftp 设置ftp用户访问目录权限的命令
注意设置好了需要重启vsftp服务器:
service vsftpd restart
重启后你再在客户端连接看看是不是指定的目录呀。

3、vsftpd下显示的时间与系统时间不一致
ftp上来显示的时间与系统时间不一致,是因为默认情况下,vsftpd 是用GMT做为它的时间的,所以和系统的时间(GMT+8会会相差8个小时)能会不一致。
修改也很简单:
vi /etc/vsftpd/vsftpd.conf
在最后加入一行:
use_localtime=YES
存盘后,重启vsftpd:
service vsftpd restart
这样就行了

http://www.chinaunix.net/old_jh/4/347483.html

 按上述设置并重启vsftpd后,时间显示正常:

 

4、如何有选择的把用户限制在家目录中呢?
我们要自己建一个文件,在/etc目录中或/etc/vsftpd目录中(假如您的vsftpd配置文件都是放在这个目录的话);
#touch /etc/vsftpd.chroot_list
以beinan和nanbei这两个用户限制在他们所在的家目录中,而其它的FTP用户不做此限制。
在vsftpd.chroot_list这个文件中,把beinan和nanbei添上去就行,注意,每个用户占一行。
beinan
nanbei
然后改/etc/vsftpd/vsftpd.conf文件,找如下的两行
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
如果没有这样的两行,就可以自己添加上去也是一样的。
设置好后,重新vsFTPD服务器。
补充一之补充:如何把系统内所有的FTP用户都限制在家目录中呢??经juliaugong兄的提示,我查找了vsFTPd的洋文说明,证明这个选项是一刀切的解决所有的用户都能限制在家目录中
我们可以通过更改vsftpd.conf文件,加入如下的一行
chroot_local_user=YES
改完配制文件,不要忘记重启vsFTPd服务器;

5、如何让绑定IP到vsFTPd?
如何让绑定IP到vsFTPd?也就是说,如何让用户只能通过某个IP来访问FTP。其实这个功能很有意思。如果绑定的是内网的IP,外部是没有办法访问的。如果绑定的是对外服务的IP,内网也只能通过对外服务的IP来访问FTP
在vsftpd.conf中加一行,以我的局域网为例,请看第一帖中的操作环境,这样外网就不能访问我的FTP了,内网也可能通过192.168.0.2来访问FTP;
listen_address=192.168.0.2
http://os.51cto.com/art/201102/245528.htm

 

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
16天前
|
Oracle Java 关系型数据库
Linux环境安装配置JDK11
Linux环境安装配置JDK11
47 0
|
23小时前
|
Ubuntu Linux 编译器
【Linux】详解动静态库的制作和使用&&动静态库在系统中的配置步骤
【Linux】详解动静态库的制作和使用&&动静态库在系统中的配置步骤
|
2天前
|
Unix Shell Linux
在 Linux 上把 Vim 配置为默认编辑器
在 Linux 上把 Vim 配置为默认编辑器
|
3天前
|
存储 Web App开发 Ubuntu
整理16款适用于较旧低配置电脑的最佳Linux发行版
在本指南中,趣云笔记(https://www.ecscoupon.com/)介绍了一些最好的Linux发行版,你可以将它们安装在旧PC上并为其注入新的活力。
20 0
|
3天前
|
Linux 数据安全/隐私保护
Linux 读写权限的配置
Linux 读写权限的配置
10 0
|
4天前
|
Web App开发 安全 Unix
Linux 配置FTP服务器 + vsftpd服务安装配置 (Good篇)
Linux 配置FTP服务器 + vsftpd服务安装配置 (Good篇)
|
4天前
|
网络协议 Linux 开发工具
Linux中 /etc/sysconfig/network-scripts/ifcfg-<interface> 网络接口配置 详解 看这一篇够用
Linux中 /etc/sysconfig/network-scripts/ifcfg-<interface> 网络接口配置 详解 看这一篇够用
|
4天前
|
存储 Linux
Linux 本地yum源配置 (详简篇)
Linux 本地yum源配置 (详简篇)
|
11天前
|
存储 关系型数据库 MySQL
linux安装MySQL8.0,密码修改权限配置等常规操作详解
linux安装MySQL8.0,密码修改权限配置等常规操作详解
|
12天前
|
存储 安全 数据管理
【专栏】指导在Rocky Linux 8上安装配置Elasticsearch,包括添加仓库等
【4月更文挑战第28天】本文指导在Rocky Linux 8上安装配置Elasticsearch,包括添加仓库,运行`yum install elasticsearch`进行安装,修改配置文件如`cluster.name`和`network.host`,启动服务并验证其正常运行。同时,文章提及了内存、文件描述符设置及安全配置,并列出常见问题及解决方法,帮助用户成功搭建Elasticsearch。