3.Vsftpd服务的部署及优化

                        
    实验环境   
                        
 
 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           此访问方式必须能列出资源才算访问成功
              在使用完成后请输入quit推出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

家目录控制
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     默认黑

用户登陆白名单
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不行

猜你喜欢

转载自blog.csdn.net/qq_47714288/article/details/110181225
今日推荐