CentOS7 vsftp 配置虚拟用户
1、安装
yum install vsftpd db4-utils
2、备份配置文件
cd /etc/vsftpd/
cp vsftpd.conf vsftpd.src.conf
3、修改配置文件如下
vim vsftpd.conf
listen=YES anonymous_enable=NO dirmessage_enable=YES xferlog_enable=YES xferlog_file=/var/log/vsftpd.log xferlog_std_format=YES chroot_list_enable=YES chroot_list_file=/etc/vsftpd/chroot_list chroot_local_user=YES guest_enable=yes guest_username=vsftpd user_config_dir=/etc/vsftpd/vsftpd_user_conf pam_service_name=vsftpd local_enable=YES pasv_enable=YES pasv_min_port=5090 pasv_max_port=6000
4、创建虚拟用户账户文件
vim /etc/vsftpd/userfile
user1 123456 user2 123456
5、根据虚拟用户账户文件生成虚拟用户配置文件 vsftpd_login.db
db_load -T -t hash -f /etc/vsftpd/userfile /etc/vsftpd/vsftpd_login.db
chmod 600 /etc/vsftpd/vsftpd_login.db
6、配置虚拟用户登录认证,注释掉全部内容,新增下面的两行,最终效果如下:
vim /etc/pam.d/vsftpd
#%PAM-1.0 auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login #session optional pam_keyinit.so force revoke #auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed #auth required pam_shells.so #auth include password-auth #account include password-auth #session required pam_loginuid.so #session include password-auth
7、限制虚拟用户切换主目录
vim /etc/vsftpd/chroot_list
user1
user2
8、创建配置文件目录
mkdir /etc/vsftpd/vsftpd_user_conf
9、按用户名为每个用户写配置内容
仅下载权限
vim /etc/vsftpd/vsftpd_user_conf/user1
anon_world_readable_only=NO
local_root=/home/vsftpd/user1
上传、下载权限,不能删除、不能重命名
anon_world_readable_only=NO write_enable=YES anon_upload_enable=YES anon_mkdir_write_enable=YES local_root=/home/vsftpd/user1
全部权限:可上传、下载、删除和改名
write_enable=YES anon_world_readable_only=NO anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES local_root=/home/vsftpd/user1
10、创建vsftpd用户(与vsftpd.conf 文件中的:guest_username=vsftpd 一致)
useradd -d /home/vsftpd -s /sbin/nologin vsftpd chown -R vsftpd:vsftpd /home/vsftpd
11、重启vsftpd服务
systemctl vsftpd restart.service
注意:建议使用filezilla等工具进行登录,如果出现问题,有明确的问题提示。
分类:
研发管理
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术