配置基于虚拟用户的FTP服务器并测试

配置前需要配好网络、yum源及关闭防火墙

一、服务端

1、安装vsftpd软件包

[root@node1 ~]# yum -y install vsftpd

2、创建/ftp目录,并在这创建用户文本文件ftpuser.txt,并添加两个虚拟用户分别为ftpuser1和ftpuser2

[root@node1 ~]# mkdir /ftp
[root@node1 ~]# vim /ftp/ftpuser1.txt
ftpuser1
00000000
ftpuser2
00000000

3、安装vsftpd虚拟用户依赖软件包

[root@node1 ftp]# yum install -y psmisc net-tools systemd-devel libdb-devel perl-DBI

4、使用db_load命令生成db数据库

[root@node1 ~]# db_load -T -t hash -f /ftp/ftpuser1.txt /ftp/ftpuser.login.db

5、配置PAM文件

[root@node1 ~]# vim /etc/pam.d/vsftpd.pam

配置基于虚拟用户的FTP服务器并测试
6、创建虚拟用户和系统用户,并建立测试文件

[root@node1 ftp]# useradd -d /var/ftp/user1 user1
[root@node1 ftp]# useradd -d /var/ftp/user2 user2
[root@node1 ftp]# chown user1:user1 /var/ftp/user1
[root@node1 ftp]# chown user2:user2 /var/ftp/user2
[root@node1 ftp]# chmod 555 /var/ftp/user1
[root@node1 ftp]# chmod 755 /var/ftp/user2
[root@node1 ~]# touch /var/ftp/user1/user1.txt
[root@node1 ~]# touch /var/ftp/user2/user2.txt

7、修改vsftpd.conf文件

[root@node1 vsftpd]# mv vsftpd.conf vsftpd.conf.bak
[root@node1 vsftpd]# vim vsftpd.conf
listen=YES
listen_port=21
anonymous_enable=NO
local_enable=YES
chroot_local_user=YES
guest_enable=YES
max_clients=100
max_per_ip=10
pam_service_name=vsftpd.pam
user_config_dir=/ftpconfig
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES

8、在vsftpd.conf文件中"user_config_dir"指定的目录下,建立与虚拟账号同名的配置文件。配置文件名分别为ftpuser1和ftpuser2

[root@node1 ~]# mkdir /ftpconfig
[root@node1 ~]# vim /ftpconfig/ftpuser1
guest_enable=YES
guest_username=user1
anon_world_readable_only=YES
anon_max_rate=30000

[root@node1 ~]# vim /ftpconfig/ftpuser2
guest_enable=YES
guest_username=user2
anon_world_readable_only=NO
write_enable=YES
allow_writeable_chroot=YES
anon_upload_enable=YES
anon_max_rate=30000

9、重启vsftpd服务

[root@node1 ~]# systemctl restart vsftpd

二、客户端

1、安装vsftpd软件包

[root@node2 ~]# yum -y install ftp

2、测试

[root@node2 ~]# mkdir /ftp
[root@node2 ~]# touch test.txt

配置基于虚拟用户的FTP服务器并测试
配置基于虚拟用户的FTP服务器并测试

上一篇:Linux 操作作业


下一篇:传输文件的方法太多了吧,这次是FTP服务