Linux配置FTP(vsftpd)
参考:CSDN
1、安装vsftpd相关
sudo yum install -y vsftpd
# 安装db工具,能够识别数据库加密文件
yum install db4 db4-utils -y
2、创建虚拟用户数据库
# 进入vsftpd配置文件 cd /etc/vsftpd # 创建虚拟用户数据 vim vusers.txt # 内容如下(奇数行是用户名,偶数行是密码) vuser1
password1 vuser2
password2
3、生成虚拟用户数据库
db_load -T -t hash -f /etc/vsftpd/vusers.txt /etc/vsftpd/vusers.db
# 仅文件拥有者可读可写
chmod 600 vusers.db
4、配置 PAM 认证
vim /etc/pam.d/vsftpd # 在底部添加以下内容,并将其他内容全部注释 auth required pam_userdb.so db=/etc/vsftpd/vusers account required pam_userdb.so db=/etc/vsftpd/vusers
5、创建系统用户
# 创建名为ftp的用户(用户家目录为/ftp,且不允许登录shell) useradd -d /ftp -s /sbin/nologin ftpuser
6、修改用户目录权限
# 设置用户只读 chmod -R 555 /ftp
7、修改vsftpd配置文件
cd /etc/vsftpd # 备份配置文件 mv vsftpd.conf vsftpd.conf.bak # 再复制一份出来去掉“#”号的配置文件 grep -v "#" vsftpd.conf.bak > vsftpd.conf # 编辑 vim vsftpd.conf
配置文件内容如下:
#允许本地用户登录FTP服务器 local_enable=YES #禁止匿名登录FTP服务器 anonymous_enable=NO #禁止匿名用户读写 anon_upload_enable=NO #启动虚拟用户功能 guest_enable=YES #虚拟用户绑定系统用户 guest_username=ftpuser #设置本地用户登录后所在目录。 local_root=/ftp #全部用户被限制在主目录 chroot_local_user=YES #禁止写 write_enable=NO # 启动ftp被动模式 pasv_enable=YES # 设置被动模式端口的范围 pasv_min_port=10000 pasv_max_port=10100 #允许chroot 环境中创建可写目录(使用虚拟用户这里一定要写YES!!) allow_writeable_chroot=YES local_umask=022 dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES xferlog_std_format=YES #监听IPv4 sockets listen=YES pam_service_name=vsftpd userlist_enable=NO tcp_wrappers=YES
8、命令
# 启动 systemctl start vsftpd # 开机自启 systemctl enable vsftpd # 重启 systemctl restart vsftpd
9、开放端口
开放21端口,以及配置文件中被动模式的端口范围10000-10100。
10、连接
使用虚拟用户进行登录访问。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库