Loading

vsftpd 配置.md

vsftpd 配置

相关文件

主配置文件

  • /etc/vsftpd/vsftpd.conf

用户控制列表文件(默认黑名单)

  • /etc/vsftpd/ftpusers
  • /etc/vsftpd/user_list

相关用户

匿名用户

  • ftp

  • anonymous

本地用户

  • linux系统用户

虚拟用户

  • 模拟用户

配置文件

默认配置文件

anonymous_enable=NO #禁止匿名用户登录

local_enable=YES #本地用户允许登录
local_umask=022

dirmessage_enable=YES # .message文件信息,欢迎信息
message_file=.message
xfcerlog_enable=YES # 日志
connect_from_port_20=YES #主动模式
xferlog_std_format=YES # 使用标准的ftp日志格式
ftpd_banner #banner
listen=YES
pam_service_name=vsftpd # 设置PAM模块提供的认证服务使用的配置文件名,即/etc/pam.d/vsftpd

userlist_enable=YES
tcp_wrappers=YES

# 常用全局配置
listmen_address=XXX.XXX.XXX.XXX
listen_port=21
download_enable=YES # 允许下载文件
max_clients=0 #限制客户端连接数
max_per_ip=0 #限制同一IP地址的并发连接数

# 被动模式
pasv_enable=YES
pasv_min_port=XXXX
pasv_max_port=XXXXX

# 安全配置
accept_timeout=60 # 被动模式,超时
connect_timeout=60 #主动模式,超时
idle_seesion_timeout=600 #600s,无操作,断开
data_connection_timeout=500 # 传输文件超过500s,断开传输

匿名用户访问

anno_upload_enable=YES # 上传(新建文件)
anno_mkdir_write_enable=YES # (新建目录)
anno_umask=600 # 默认上传文件权限
  1. 默认上传目录:/var/ftp/pub/
  2. 如果允许上传,服务权限与系统目录权限要同时允许
  3. vsftpd服务的伪用户是ftp

本地用户访问

# 基本配置在默认配置里已经包括
local_root=/var/ftp # 设置本地用户的ftp根目录(注意权限)
local_max_rate=0 #限制最大传输速率 字节/秒
chroot_local_user=YES # 将用户限制在家目录中,不允许向上切换

# 不限制部分用户切换上层目录
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
# 在/etc/vsftpd/chroot_list用户不会被限制

# 访问控制
user_list_enable=YES #开启访问控制
# 
userlist_deny=YES #使得user_list为黑名单
userlist_file=/etc/vsftpd/user_list #

虚拟用户访问

# 1.添加虚拟用户口令
vim /etc/vsftpf/vuser.txt
	username_1
	passwd_1
	username_2
	passwd_2
# 2.生成虚拟用户口令认证文件
yum -y install db4-utils
db_load -T -t hash -f /etc/vsftpd/vuser.txt /etc/vsftpd/vuser.db

#3.编辑vsftpd的PAM认证文件,注释掉其他行,可以禁止掉其他本地用户登录,因为本地用户登录依赖此文件
vi /etc/pam.d/vsftpd
 auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vuser
 account required /lib/security/pam_userdb.so db=/etc/vsftpd/vuser
 
# 4.建立本地映射用户并设置宿主目录权限
useradd -d /home/vftproot -s /sbin/nolohin vuser
chmod 755 /home/vftproot

# 5.修改配置文件
guest_enable=YES # 开启虚拟用户
guest_username=vuser # Ftp虚拟用户对应的系统用户
pam_service_name=vsftpd #PAM认证文件

# 6.重启vsftpd服务
# 此时虚拟用户可以登录,下载,查看,但不能上传
# 默认位置是宿主家目录

# 7.调整虚拟用户权限
vi /etc/vsftpd/vsftpd.conf
 anonymous_enable=NO
 anon_upload_enable=YES
 anon_mkdir_write_enable=YES
 anon_other_write_enable=YES
 #允许所有虚拟用户上传
posted @ 2022-05-28 17:40  nsfoxer  阅读(30)  评论(0编辑  收藏  举报