vsftp的三種使用者詳解

啊里个东發表於2024-10-26

vsfp上有三種使用者型別:

annoymous 匿名使用者

local_user 本地使用者

virtual_user 虛擬使用者

1、使用匿名使用者

不需要認證

配置檔案中配置:anonymous_enable=YES

2、使用本地使用者

本地使用者,就是linux上的系統使用者,滿足下面兩點就可以使用。

1、使用者的bash是/bin/bash

2、主配置檔案中配置:local_enable=YES

3、使用虛擬使用者

為什麼要使用虛擬使用者呢?

如果ftp是提供給公司100多號員工的,豈不是要給每個使用者都新建一個系統使用者?

這100多個系統使用者,還都可以登陸到伺服器,對伺服器安裝增加隱患。

建立虛擬使用者的賬號、密碼檔案,用於下一步生成認證資料庫檔案。

cat virtual_user.list 
ftpcitc
112233

生成資料庫

 db_load -T -t hash -f /etc/vsftpd/virtual_user.list  /etc/vsftpd/virtual_user.db

修改許可權

chmod 700 /etc/vsftpd/virtual_user.db

增加使用者

cat virtual_user.list 
ftpcitc
112233
vuser
112233

增加使用者後要重新生成資料庫

 db_load -T -t hash -f /etc/vsftpd/virtual_user.list  /etc/vsftpd/virtual_user.db

配置使用者認證

cat /etc/pam.d/vsftpd
auth    required        pam_userdb.so   db=/etc/vsftpd/virtual_user
account required        pam_userdb.so   db=/etc/vsftpd/virtual_user

配置虛擬使用者對映

ps:1、所有的虛擬使用者都要對映到一個本地系統使用者

2、這個本地系統使用者,不要有登陸伺服器的許可權,不要配置密碼,只做虛擬使用者的對映。

[root@hdp01 vsftpd]# useradd  -s /sbin/nologin ftpuser

修配主配置檔案

[root@hdp01 vsftpd]# grep ^[a-zA-Z] vsftpd.conf
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
pam_service_name=vsftpd
guest_enable=YES
guest_username=ftpuser
user_config_dir=/etc/vsftpd/vsftpd_user_conf
virtual_use_local_privs=YES

建立虛擬使用者的配置目錄、配置檔案

ps: 配置檔案要和虛擬使用者的名字一致

mkdir -p /etc/vsftpd/vsftpd_user_conf

[root@hdp01 virtual_user_dir]# cd /etc/vsftpd/virtual_user_dir

[root@hdp01 virtual_user_dir]# cat ftpcitc 
local_root=/data/ftp/ftpcitc
write_enable=YES
non_upload_enable=YES
anon_mkdir_write_enable-YES
anon_other_write_enable=YES
You have new mail in /var/spool/mail/root

[root@hdp01 virtual_user_dir]# cat vuser 
local_root=/data/ftp/vuser
write_enable=YES
non_upload_enable=YES
anon_mkdir_write_enable-YES
anon_other_write_enable=YES

建立虛擬使用者的家目錄

ps:要把虛擬使用者家目錄的屬主屬組給,代理使用者ftpuser

mkdir -p /data/ftp/vuser
mkdir -p /data/ftp/ftpcitc
chown  ftpuser:ftpuser /data/ftp/vuser   /data/ftp/ftpcitc

配置完成,重啟vsftp,測試虛擬使用者。

vsftp的三種使用者詳解

相關文章