linux篇——CentOS7安装vsftpd3.0.2、用户权限配置
2021/5/20 7:31:09
本文主要是介绍linux篇——CentOS7安装vsftpd3.0.2、用户权限配置,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
CentOS7安装vsftpd、用户权限配置
vsftpd(very secure ftp daemon)是一款运行在Linux操作系统上的FTP服务程序,不仅完全开源而且免费,还具有很高的安全性、传输速度,以及支持虚拟用户验证。
vsftpd 允许用户以三种认证模式登录FTP服务器。
- 匿名开放模式:是一种最不安全的认证模式,任何人都可以无需密码验证而直接登录。
- 本地用户模式:是通过Linux系统本地的账户密码信息进行认证的模式,相较于匿名开放模式更安全,而且配置起来也很简单。
- 虚拟用户模式:是这三种模式中最安全的一种认证模式,它需要为FTP服务单独建立用户数据库文件,虚拟出用来进行口令验证的账户信息,而这些账户信息在服务器系统中实际上是不存在的,仅供FTP服务程序进行认证使用。这样,即使黑客破解了账户信息也无法登录服务器,从而有效降低了破坏范围和影响。
1、yum 安装
yum install -y vsftpd
2、创建一个不能登录系统的用户ftpuser用于映射虚拟用户,ftp根目录
useradd -d /home/ftpsite -s /sbin/nologin ftpuser chmod 550 /home/ftpsite/
修改配置文件 /etc/vsftpd/vsftpd.conf, 先备份一份
cd /etc/vsftpd cp -a vsftpd.conf vsftpd.conf.bak vim vsftpd.conf anonymous_enable=NO #关闭匿名开放模式 local_enable=YES #允许本地用户模式 虚拟用户模式也要开启 guest_enable=YES #开启虚拟用户模式 guest_username=ftpuser #指定用于映射虚拟用户的系统账户 #启用ASCII模式的传输ascii_upload_enable=YES ascii_download_enable=YES
#将所有用户限定在其主目录内chroot_local_user=YES chroot_list_enable=NO#如果有用户不需要限定在主目录以下设置chroot_local_user=YESchroot_list_enable=YESchroot_list_file=/etc/vsftpd/chroot_list #这个文件需要自己创建
chroot_local_user=YES #所有用户限定在其主目录内
chroot_list_enable=YES #启用例外
/etc/vsftpd/chroot_list #这里的用户名都不受限制,可以切换出主目录,用户名一行填写一个
chroot_local_user=NO #所有用户都不受限制,可以切换出主目录
chroot_list_enable=YES #启用例外
/etc/vsftpd/chroot_list #这里的用户名都受到限制,限定在其主目录内,用户名一行填写一个
3、创建虚拟用户
vim virtual_user test1 test111 test2 test222
创建了2个账户,test1、test2。第一行用户名,第二行密码,依此类推:
使用 db_load 命令生成 vsftpd 的认证文件,将用户信息文件转换为数据库并使用hash加密:
db_load -T -t hash -f virtual_user virtual_user.db chmod 600 virtual_user.db rm -f virtual_user
4、建立虚拟用户所需的PAM配置文件,对虚拟用户的安全和账户权限进行验证
vim /etc/pam.d/vsftpd.virtual auth required pam_userdb.so db=/etc/vsftpd/virtual_user #不需要填后缀 account required pam_userdb.so db=/etc/vsftpd/virtual_user
修改 /etc/vsftpd/vsftpd.conf,指定刚创建的PAM文件
pam_service_name=vsftpd.virtual
5、给不同虚拟用户设置不同权限,及主目录
前面已近创建了test1、test2两个虚拟用户,分别创建主目录
mkdir /home/ftpsite/test1 mkdir /home/ftpsite/test2 chown ftpuser:ftpuser /home/ftpsite/test1 chown ftpuser:ftpuser /home/ftpsite/test2
创建虚拟用户配置文件,及存放目录,配置文件的名称要跟之前 virtual_user.db 里用户名一致
mkdir /etc/vsftpd/virtual_user_conf vim /etc/vsftpd/virtual_user_conf/test1 local_root=/home/ftpsite/test1 #设置用户主目录 allow_writeable_chroot=YES #2.3.5之后,如果用户被限定在了其主目录下,则该用户的主目录不能再具有写权限了,可以去掉写权限或加上这项 anon_world_readable_only=NO #只要文件所有者对文件有读权限即可下载 write_enable=YES #写入开关,是下面几个权限的前提 anon_upload_enable=YES #上传 anon_mkdir_write_enable=YES #创建文件夹 anon_other_write_enable=YES #删除、覆盖、重命名
用户test2
vim /etc/vsftpd/virtual_user_conf/test2 local_root=/home/ftpsite/test2 allow_writeable_chroot=YES anon_upload_enable=YES
修改 /etc/vsftpd/vsftpd.conf,加上虚拟用户配置目录
user_config_dir=/etc/vsftpd/virtual_user_conf
6、启动vsftp,添加防火墙端口
systemctl start vsftpd systemctl enable vsftpd firewall-cmd --add-service=ftp --permanent firewall-cmd --reload
7、链接测试 test1 test2 两个权限是不一样的
这篇关于linux篇——CentOS7安装vsftpd3.0.2、用户权限配置的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-0600-macOS和Linux安装和管理多个Python版本
- 2024-03-30[译]漫画SELinux概念
- 2024-03-29linux 移动文件
- 2024-03-28linux .so file
- 2024-03-28Linux 磁盘管理
- 2024-03-28Linux学习笔记(十三)磁盘管理(一):磁盘分区
- 2024-03-26linux 创建 文件
- 2024-03-25使用SecureCRT对Linux vim进行颜色设置
- 2024-03-202019-2020-12 20199317 《Linux内核原理与分析》 第十二周作业
- 2024-03-20Linux运维的第二周总结