vsftp2.2.2部署步骤

一、vsftp简介

  vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序,vsftpd 的名字代表”very secure FTP daemon”;是一个基于GPL发布的类UNIX类操作系统上运行的服务器的名字(是一种守护进程),可以运行在诸如Linux、BSD、Solaris、HP-UX以及Irix等系统上面.
#基本需求:

 1.搭建ftp(每个人单独账号)

2.部署web服务(nginx这里不做安装说明了),访问ftp上传目录
3.实现游览器访问ftp上传目录的静态文件

二、安装vsftp

FTP的登录一般有三种方式:

1.匿名用户形式:默认安装的情况下,系统只提供匿名用户访问,只需要输入用户anonymous/ftp,并将自己的Email作为口令即可登录。

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

3.虚拟用户形式:支持将用户名和密码保存在文件或数据库中,将登录用户映射到指定的系统账号(/sbin/nologin)来访问资源,其中这些虚拟用户是FTP的用户

本文采取第三种方式:虚拟用户形式安装vsftp

1.安装vsftp、认证模块及数据库

yum install vsftpd pam* db4* -y

2.建立虚拟用户,设置该用户所要访问的目录,并设置虚拟用户访问的权限:

#useradd -d /home/ftpsite virtual_user
#chmod 700 /home/ftpsite
经过该步骤的设置,/home/ftpsite就是virtual_user用户的主目录,该用户也是ftpsite目录的拥有者。除root用户之外,只有该用户具有对该目录的读、写和执行的权限。

3.新建一个虚拟用户的PAM文件。加上如下两行内容:

#vi /etc/pam.d/ vsftp.vu
auth required /lib64/security/ pam_userdb.so db=/etc/vsftpd/account
account required /lib64/security/ pam_userdb.so db=/etc/vsftpd/account

4.备份/etc/vsftpd/vsftpd.conf,备份完成后,编辑/etc/vsftpd/vsftpd.conf文件,使其整个文件内容如下所示(去掉了注释内容):

anonymous_enable=NO
local_enable=YES
local_umask=022
anon_umask=022
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
xferlog_file=/var/log/xferlog
dual_log_enable=YES
vsftpd_log_file=/var/log/vsftpd.log
listen=YES
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
one_process_model=NO
chroot_local_user=YES
ftpd_banner=Welcom to my FTP server.
anon_world_readable_only=NO
guest_enable=YES
guest_username=virtual_user
pam_service_name= vsftp.vu
user_config_dir=/etc/vsftpd/vconf
use_localtime=YES
上面代码中,guest_enable=YES表示启用虚拟用户;guest_username=virtual则是将虚拟用户映射为本地用户,这样虚拟 用户登录后才能进入本地用户virtual的目录/ftpsite;pam_service_name= vsftp.vu指定PAM的配置文件为 vsftp.vu

5.虚拟用户个人目录设置

在/etc/vsftpd/vconf目录下新增一个以虚拟用户名命名的文件如下
#vi dk_cuishou
local_root=/home/jyapp/localCase
anonymous_enable=NO
write_enable=YES
local_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
idle_session_timeout=600
data_connection_timeout=120
max_clients=10
max_per_ip=5
local_max_rate=5000
说明:local_root=/home/jyapp/localCase这个目录必须存在,如果过不存在需要新建,新建完成后需要重新改变目录的所属用户为virtual_user,执行命令如下:
# chown virtual_user:virtual_user /home/jyapp/localCase

6.生成虚拟用户口令库文件。为了建立此口令库文件,先要生成一个文本文件。该文件的格式如下,单数行为用户名,偶数行为口令:

在/etc/vsftpd目录下新建文件account.txt
#vi account.txt
 
dk_cuishou
4321dk
说明:此处添加的用户名,一定要和第5步中添加的用户名一致!!!

7.生成口令库文件,并修改其权限:

#db_load -T -t hash -f /etc/vsftpd/account.txt /etc/vsftpd/account.db
#chmod 600 /etc/vsftpd/account.db

8.重新启动VSFTP:

#service vsftpd restart
 

注意

三、添加FTP用户的步骤

重复用5-7步即可,无需重启vsftp服务,添加完成以后可以使用账号登录一下

猜你喜欢

转载自www.cnblogs.com/pigonthetree/p/12410419.html