3.1vsftpd服务的部署及优化

#########################
#
实验环境 #
#########################
#
#server 主机
# westos_node1
#
172.25.254.250
# selinux 关闭
#
火墙开启
# dnf 安装设定完成
#
#client 主机
# westos_linux
#
172.25.254.100
# selinux 关闭
# dnf 安装设定完成
#
安装 lftp #ftp 协议文本浏览器
#
#########################
#
1. ftp 介绍
#
#########################
ftp : file transfer proto
互联中最老牌的文件传输协议
#########################
# 2. vsftpd 安装及启用
#

(配置软件仓库) 

#########################
dnf install vsftpd - y

  

#server
dnf install lftp - y
#client
关闭 selinux
systemctl disable -- now firewalld

vim / etc / vsftpd / vsftpd.conf
12 anonymous_enable = YES

## 启动匿名用户的访问功能
systemctl restart vsftpd
测试安装发布 :
firefox ftp :// ip
lftp ip
## 此访问方式必须能列出资源才算访问成功
## 在使用完成后请输入 exit 推出 lftp

#########################
# 3. vsftpd 基本信息
#
#########################
服务名称 :
vsftpd.service
配置目录 :
/ etc / vsftpd
主配置文件 :
/ etc / vsftpd / vsftpd.conf
默认发布目录 :
/ var / ftp
报错信息
550
## 程序本身拒绝
553
## 文件系统权限限制
500
## 权限过大
530
## 认证失败

#########################
# 4. 匿名用户访问控制
# #########################
lftp 192.168.0.10
## 当访问 ftp 服务时没有加入用户认证为匿名访问
lftp 192.168.0.10 - u westos ## 本地用户访问
登陆控制
anonymous_enable = YES | NO

(在实验过程中一定要保证selinux处于关闭状态) 

家目录控制
anon_root =/ westosdir

上传控制
anon_upload_enable = YES | NO
chmod 775 / var / ftp / pub
chgrp ftp / var / ftp / pub
lftp 192.168.0.100
cd pub
put / etc / passwd

目录建立控制
anon_mkdir_write_enable = YES | NO

 

下载控制
anon_world_readable_only = NO ## 匿名用户可以下载不能读的文件
删除重命令控制
anon_other_write_enable = YES | NO

匿名用户上传文件权限设定
anon_umask = xxx

anon_umask = 022 ## 当设定 chown_username 之后上传文权限将不是用此参数设定
匿名用户上传文件的用户身份设定
chown_upload = YES
chown_username = lee

chown_upload_mode = 0644

登陆数量控制 :
max_clients = 2

上传速率控制
anon_max_rate = 102400

#########################
# 5. 本地用户的访问
#
#########################
登陆控制
useradd westos
useradd lee
echo lee | passwd -- stdin westos
echo lee | passwd -- stdin lee
lftp
192.168.0.10 - u westos
local_enable = NO | YES

 

家目录控制
local_root =/ software

写权限控制
write_enable = NO | YES
上传文件权限控制 local_umask = 077
用户登陆控制

 

/ etc / vsftpd / ftpusers ## 永久黑
/ etc / vsftpd / user_list ## 默认黑

 (lee无法登录)

用户登陆白名单
userlist_deny = NO # 设定 / etc / vsftpd / user_list 位白名单
# 不在名单中的用户不能登陆 ftp
锁定用户到自己的家目录中
chmod u - w / home /*
chroot_local_user = YES
锁定用户到自己的家目录中的白名单
chroot_local_user = YES
chroot_list_enable = YES
chroot_list_file =/ etc / vsftpd / chroot_list
锁定用户到自己的家目录中的黑名单
chroot_local_user = NO
chroot_list_enable = YES
chroot_list_file =/ etc / vsftpd / chroot_list
#########################
#
6. 虚拟用户访问
#
#########################
# 1. 建立虚拟用户过程 ########
1. vim / etc / vsftpd / ftp_auth_file
# 建立认证文件模板
westos1
123
westos2
123
westos3
123
2. db_load - T - t hash - f ftp_auth_file ftp_auth_file.db ## 加密认证文件 - T 转换 - t type - f 指定
转换文件
3. vim / etc / pam.d / westos
account required
pam_userdb.so db =/ etc / vsftpd / ftp_auth_file
auth required
pam_userdb.so db =/ etc / vsftpd / ftp_auth_file

 

 

4. vim / etc / vsftpd / vsftpd.conf
pam_service_name = westos
## 指定认证策略文件
guest_enable = YES
## 指定虚拟用户功能开启
guest_username = ftp
## 指定虚拟用户在 ftp 服务器上的用户身份
##### 虚拟用户家目录的独立设定 #################
mkdir - p / ftpuserdir / westos{1..3}
touch / ftpuserdir / westos1 / westos1file
touch / ftpuserdir / westos2 / westos2file
touch / ftpuserdir / westos3 / westos3file
vim / etc / vsftpd / vsftpd.conf
local_root =/ ftpuserdir / $USER
user_sub_token = $USER
systemctl restart vsftpd
######### 用户配置独立 ############## user_config_dir =/ etc / vsftpd / user_config # 在此目录中与用户名称相同的文件为用户配置文件
mkdir / etc / vsftpd / user_config
vim / etc / vsftpd / user_config / westos2
anon_upload_enable = YES
设定完成后 westos2 用户可以上传文件
westos1 westos3 不行
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值