linux 下安装 vsftpd

vsftpd

简介

vsftpd是"very secure FTP daemon" 的缩写,是一个完全免费的、开放源代码的ftp服务器软件。

特点

vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序,小巧轻快,安全易用,支持虚拟用户、支持带宽限制等功能。

安装系统环境: CentOS 6.8 64位

vsftpd版本:vsftpd-2.2.2-21.el6.x86_64

1.安装

执行命令:

yum -y install vsftpd

注:(1)是否使用sudo权限执行请根据您具体环境来决定

       (2)检查是否已经安装过vsftpd的命令:

rpm -qa  |  grep vsftpd

另外,默认的配置文件路径为: /etc/vsftpd/vsftpd.conf

2.创建虚拟用户

(1)选择在根或者用户目录下创建ftp文件夹,如:/ftpfile:

cd /
sudo mkdir /ftpfile 

(2)添加匿名用户

useradd ftpuser -d /ftpfile/ -s /sbin/nologin

创建的用户没有登录linux机器的权限

 参数说明 : -d 意为该用户应该使用的文件路径

                       -s 意为该创建的用户没有登录linux系统的权限

(3)查看和修改ftpfile权限

cd /
ll | grep ftp

chown -R ftpuser.ftpuser /ftpfile/
ll | grep ftp

参数说明: -R 注意,是大写的R,意为遍历参数中所有的路径,统统都赋权限给ftpuser

(4)重设ftpuser密码

passwd ftpuser 

(博主设置的密码是123456所以提示密码太简单了,这个不影响,只是警告)

 (4)在ftpfile目录下写一个文件

cd ftpfile/
vim index.html

插入并保存wq:

here is ftpfile
/ftpfile

3.vsftpd配置

(1)进入  /etc/vsftpd  目录

cd /etc/vsftpd

(2) 创建文件名为 chroot_list 的文件

sudo vim chroot_list

(3)把刚才新增的虚拟用户添加到此配置文件中,后续要引用

(4):wq 保存并退出

5)修改文件: /etc/selinux/config  ,修改SELINUX=disabled

sudo vim /etc/selinux/config

(6):wq 保存并退出

注:如果一会验证的时候碰到550拒绝访问请执行:然后重启linux服务器,执行reboot命令

sudo setsebool -P ftp_home_dir 1

 (7)配置   /etc/vsftpd/vsftpd.conf【重点】

sudo  vim /etc/vsftpd/vsftpd.conf

1)修改banner: 命令模式下输入  /ban  回车即可搜索banner,按n搜索下一个。

ftpd_banner=Welcome to LiKang FTP service.

local_root=/ftpfile    (当本地用户登入时,将被更换到定义的目录下,默认值为各用户的家目录) 

#anon_root=/ftpfile (匿名了可以注释)

 2)打开chroot_list_enable=YES(设置是否启用chroot_list_file配置项指定的用户列表文件)
        chroot_list_file=/etc/vsftpd/chroot_list(用于指定用户列表文件)

3)增加use_localtime=YES(默认是GMT时间,改成使用本机系统时间)

4)修改anonymous_enable=NO(不允许匿名用户登录)

pasv_min_port=61001(被动模式使用端口范围最小值)
pasv_max_port=62000(被动模式使用端口范围最大值)

(8)添加或更新配置

详细说明请访问:http://learning.happymmall.com/env.html

本项目中用到的配置说明:http://learning.happymmall.com/vsftpdconfig/vsftpd.conf.readme.html

更多配置学习: http://download.happymmall.com/vsftpdconfig.doc

4.防火墙配置

(1)编辑防火墙配置文件

sudo vim /etc/sysconfig/iptables

(2)将以下配置添加到防火墙配置中

-A INPUT -p TCP  --dport 61001:62000  -j  ACCEPT
-A OUTPUT -p TCP  --sport 61001:62000  -j  ACCEPT
-A INPUT -p TCP  --dport 20  -j  ACCEPT
-A OUTPUT -p TCP  --sport 20  -j  ACCEPT
-A INPUT -p TCP  --dport 21  -j  ACCEPT
-A OUTPUT -p TCP  --sport 21  -j  ACCEPT

(3):wq保存并退出

(4)执行以下命令重启防火墙

sudo service iptables restart

5.vsftpd验证

(1)执行以下命令,重启vsftpd

sudo service vsftpd restart

注:第一次启动时Shutting down vsftpd 是failed 不用理会,因为这是重启命令,保证Starting vsftpd 是OK 即代表vsftpd服务成功

(2)执行 ifconfig 查看运行vsftpd服务器的ip地址

(3)打开浏览器访问:  ftp://10.211.55.6

 

(4)输入之前创建的ftp匿名用户账号和密码,例如:

用户名: ftpuser
密  码: 123456

(5)看到如图所示代表访问成功

(6)通过ftp客户端软件

例如:cuteftp、filezilla、viperftp、flashftp、leadftp等进行连接ftp服务器,进行文件上传、下载验证

6.vsftpd常用命令

(1)启动:

sudo service vsftpd start

(2)关闭:

sudo service vsftpd stop

(3)重启:

sudo service vsftpd restart
原文地址:https://www.cnblogs.com/proper128/p/11169041.html