实验:实现基于db文件验证的ftp虚拟用户
cd /etc/vsftpd
vim fpusert.txt 存放虚拟账户
ftp1
centos1
ftp2
centos2
ftp3
centos3
db_load -T -t hash -f ftpuser.txt ftpuser.db 转换为db格式
chmod 666 ftpuser.db
useradd -s /sbin/nologin -r -m -d /app/ftpsite ftpuser 系统账户
cd /etc/vsftpd
cd /etc/pam.d 验证用户身份
vim vsftpd.db
ppt上
ftpuser
vim vsftpd.conf
pam_service_name=vsftpd.db
guset_username=ftpuser
guest_enable=YES
user_config_dir=/etc/vsftpd/conf.d
cd /app/ftpsite
touch ftp
chomd -w /app/ftpsite
chmod 555 /app/ftpsite
cd /app/ftpsite
mkdir upload
chmod ftpuser upload
mkdir /etc/vsftpd/conf.d
cd /etc/vsftpd/conf.d
vim ftp1可以上传并创建文件夹
anon_upload_enable=yes
anon_mkdir_write_enable=yes
cd /app
mkdir ftpsite2
mkdir ftpsite3
touch ftpsite2/ftpsite2
touch ftpsite3/ftpsite3
chmod -w *
cd /etc/vsftpd/conf.d
vim ftp2
local_root=/app/ftpsite2
vim ftp3
local_root=/app/ftpsite3
anon_upload_enable=yes
anon_mkdir_write_enable=yes
cd ftpsite3
mkdir up
chown ftpuser up
cd ftpsite2
mkdir up
chown ftpuser up
systemctl restart vsftpd
101:测试
ftp 192.168.223.166
ftp1
cd upload
put f1.txt
实验:实现基于mysql的ftp虚拟用户
过程如下:
环境:两台主机,一台A:mairadb server 101 一台B ftp server 107 客户端106
1 A:安装mariadb yum install mariadb-server
syatemctl strat mariadb
mysql_secure_insatll_db
mysql -uroot -pcentos
create database vsftpd;
use vsftpd
create table ftpusers(name char(30),pass char(50));
insert ftpusers values('ftp1',password('centos')),('ftp2',password('magedu'));
grant select on vs ftpd.ftpusers to 'ftp'@'192.168.37.107' identified by 'centos';
2 B:
yum install vsftpd
下载pam_mysql的bap
rz
tar xvf pam_mysql-0.7rcl.tar.gz
yum insatll pam_mysql
yum groupinstall "development tools"
yum install mariadb-devel pam-devel
cd pam_mysql-0.7
./configure --with-pam-mods-dir=/lib64/security --with-pam=/usr
make && make install
ftp工具
axel 下载安装 centos6
yum insatll axel-2.4-1.e16.rf.x86_64.rpm
rpm -ql axel
service vsftpd start
cd /var/www/html
dd if=/dev/zero of=f1 bs=1M count=1024
mv f1 /var/ftp/pub