阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

CentOS 6.8 ftp服务安装配置 基于本地用户和虚拟用户

188次阅读
没有评论

共计 4092 个字符,预计需要花费 11 分钟才能阅读完成。

CentOS 6.8 ftp 服务安装配置 基于本地用户和虚拟用户

一、安装 ftp 服务

1、检查是否已经安装

# rpm -qa | grep ftp

ftp-0.17-54.el6.x86_64

vsftpd-2.2.2-21.el6.x86_64            // 显示已安装

2、若未安装则进行安装

# yum -y install vsftp

# yum -y install ftp

// 如果在离线环境下 就先去网上预先下载 ftp 的 rpm 包 进行手动安装

3、ftp 服务命令

# /etc/init.d/vsftpd start      手动启动 ftp 服务

或者# service vsftpd start

# chkconfig vsftpd on          设置为开机自启动

# service vsftpd stop

# service vsftpd restart

# service vsftpd status

二、配置 ftp

1、配置 vsftpd 配置文件

# vi /etc/vsftpd/vsftpd.conf

# 禁止匿名用户 anonymous 登录

anonymous_enable=NO

# 允许本地用户登录

local_enable=YES

# 让登录的用户有写权限 (上传,删除)

write_enable=YES

# 默认 umask

local_umask=022

# 把传输记录的日志保存到 /var/log/vsftpd.log

xferlog_enable=YES

xferlog_file=/var/log/vsftpd.log

xferlog_std_format=NO

# 允许 ASCII 模式上传

ascii_upload_enable=YES

# 允许 ASCII 模式下载

ascii_download_enable=YES

# 使用 20 号端口传输数据

connect_from_port_20=YES

# 欢迎标语

ftpd_banner=Welcome to use my test ftp server.

# 接下来的三条配置很重要

# chroot_local_user 设置了 YES,那么所有的用户默认将被 chroot,

# 也就用户目录被限制在了自己的 home 下,无法向上改变目录。

# chroot_list_enable 设置了 YES,即让 chroot 用户列表有效。

# 如果 chroot_local_user 设置了 YES,那么 chroot_list_file

# 设置的文件里,是不被 chroot 的用户 (可以向上改变目录)

# 如果 chroot_local_user 设置了 NO,那么 chroot_list_file

# 设置的文件里,是被 chroot 的用户 (无法向上改变目录)

chroot_list_enable=YES

# touch /etc/vsftpd/chroot_list 新建

chroot_list_file=/etc/vsftpd/chroot_list

use_localtime=YES

# 以 standalone 模式在 ipv4 上运行

listen=YES

# PAM 认证服务名,这里默认是 vsftpd,在安装 vsftpd 的时候已经创建了这个 pam 文件,

# 在 /etc/pam.d/vsftpd,根据这个 pam 文件里的设置,/etc/vsftpd/ftpusers

# 文件里的用户将禁止登录 ftp 服务器,比如 root 这样敏感的用户,所以你要禁止别的用户

# 登录的时候,也可以把该用户追加到 /etc/vsftpd/ftpusers 里。

pam_service_name=vsftpd

* 重启 vsftpd

# service vsftpd restart

三、创建本地用户

创建用户

# useradd -d /home/ftpuser/zzp -s /sbin/nologin -M zzp123

设置用户到文件夹

# chown -R username /home/ftpuser/zzp

设置权限

# chown -R 777 /home/ftpuser/zzp

添加密码

# passwd zzp -> 密码 -> 确认密码

四、创建虚拟用户

安装基于普通文件的文件型认证数据库的生成工具

# rpm -qa | grep db4-utils

# yum -y install db4-utils

编辑虚拟用户账号和密码文件,奇数行为用户名,偶数行为密码

# vi /etc/vsftpd/vu.txt

test

1234

usernameN

passwordN

用于认证的文件型数据库生成

# db_load -T -t hash -f /etc/vsftpd/vu.txt /etc/vsftpd/vu.db

修改权限

# chmod 600 /etc/vsftpd/vu.*

修改 VSFTP 默认的认证方式,改为基于刚才生成的文件型数据库

# vi /etc/pam.d/vsftpd.vu

auth      required  /lib64/security/pam_userdb.so db=/etc/vsftpd/vu    #vu 文件无后缀

account  required  /lib64/security/pam_userdb.so db=/etc/vsftpd/vu

** 注意 **:

1. 系统默认读取的文件是 /etc/pam.d/vsftpd  也可以直接在这里面添加上面的内容

2.64 位的系统可能会识别不出 pam_userdb.so db 的路径,所以要写出完整的路径,否则在登录 ftp 的时候会报 530 login incorrect 错误

创建映射虚拟用户的系统用户

# useradd  -d /home/vsftp/ftp -s /sbin/nologin -M vsftp

创建虚拟用户配置文件目录

# mkdir /etc/vsftpd/conf.vu

修改 VSFTP 配置文件

# vi /etc/vsftpd/vsftpd.conf
anon_umask=022                                #文件 644,文件夹 755
anonymous_enable=NO                      #关闭匿名登录
pam_service_name=vsftpd.vu              #修改 PAM 认证模块 (系统默认的是 vsftpd)
guest_enable=YES                                #允许虚拟用户登录
guest_username=vsftp                        #映射虚拟用户的系统用户
user_config_dir=/etc/vsftpd/conf.vu    #虚拟用户配置文件目录
pasv_enable=YES                                  #被动模式
pasv_max_port=20999                        #最大端口
pasv_min_port=20000                          #最小端口
xferlog_enable=YES
xferlog_std_format=YES
xferlog_file=/var/log/xferlog                #日志:记录上传、下载、删除、创建
dual_log_enable=YES
vsftpd_log_file=/var/log/vsftpd.log      #日志:服务器传输日志

创建虚拟用户各自的目录及配置文件

# mkdir /home/vsftp/ftp/username
# chmod 700 /home/vsftp/ftp/username
# chown vsftp.vsftp /home/vsftp/ftp/username
# vi /etc/vsftpd/conf.vu/username
write_enable=YES                        #当前虚拟用户写权限
anon_world_readable_only=NO              #当前虚拟用户下载权限
anon_upload_enable=YES                  #当前虚拟用户上传权限
anon_mkdir_write_enable=YES              #当前虚拟用户创建目录权限
anon_other_write_enable=YES              #当前虚拟用户删除和重命名权限
local_root=/bigdisk/ftp/username1        #当前虚拟用户家目录
# chmod 600 /etc/vsftpd/conf.vu/*

最后重启 vsftpd

# service vsftpd restart

FTP 协议详解与 vsftpd 在 Linux 上的安装配置 http://www.linuxidc.com/Linux/2016-09/134831.htm

玩转 vsftpd 服务器的四大高级配置:http://www.linuxidc.com/Linux/2013-09/90565.htm

vsFTPd 配置教程:http://www.linuxidc.com/Linux/2013-09/90562.htm

Ubuntu 实用简单的 FTP 架设 http://www.linuxidc.com/Linux/2012-02/55346.htm

Ubuntu 上架设 FTP 服务器和 Apache 服务器 http://www.linuxidc.com/Linux/2011-04/35295.htm

Ubuntu 13.04 安装 LAMP\vsftpd\Webmin\phpMyAdmin 服务及设置 http://www.linuxidc.com/Linux/2013-06/86250.htm

RHEL6 平台下 SeLinux 和 vsftpd 的匿名上传的简单案例 http://www.linuxidc.com/Linux/2013-04/82300.htm

Linux 系统 vsftpd 源码安装 http://www.linuxidc.com/Linux/2013-03/81475.htm

openSUSE 13.2/13.1 下安装配置 FTP 服务器 vsftpd  http://www.linuxidc.com/Linux/2014-12/110070.htm

CentOS7 基于虚拟用户的 vsftpd  http://www.linuxidc.com/Linux/2016-11/137150.htm

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2016-12/138913.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计4092字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中