CentOS安装并配置vsftpd服务
2021/12/1 7:06:29
本文主要是介绍CentOS安装并配置vsftpd服务,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、操作系统环境
本例中将在CentOS 7.6中安装FTP服务,具体安装的版本为vsftpd x86_64 3.0.2-29.el7_9,并进行配置。
# cat /etc/redhat-release CentOS Linux release 7.6.1810 (Core)
二、通过yum安装vsftpd
# yum install vsftpd
三、设置vsftpd配置文件(基本配置)
vsftpd的配置文件位于/etc/vsftpd/vsftpd.conf。如果对配置文件进行了更改,需要重启vsftpd服务后配置才会生效。
//禁止匿名用户登陆 Anonymous_enable=NO //是否将所有用户限制在主目录 //当设置为YES表示限制FTP用户跳出自己的家(根)目录(该项默认值是NO,即在安装vsftpd后不做配置的话,FTP用户是可以向上切换到要目录之外的) Chroot_local_user=YES //是否启用chroot_list_file配置项指定的用户列表文件来限制用户 //YES为启用,NO禁用(包括注释掉也为禁用) //如果启用此项配置,需同时新建一个chroot_list,内容为空即可 chroot_list_enable=YES //用于指定用户列表文件 chroot_list_file=/etc/vsftpd/chroot_list //允许用户有写的权限 allow_writeable_chroot=YES
四、常用的操作命令
1. 查看vsftpd服务运行状态
# systemctl status vsftpd
2. 启动vsftpd服务
# systemctl start vsftpd
3. 停止vsftpd服务
# systemctl stop vsftpd
4. 重启vsftpd服务
# systemctl restart vsftpd
5. 查看vsftpd的安装位置
# whereis vsftpd vsftpd: /usr/sbin/vsftpd /etc/vsftpd /usr/share/man/man8/vsftpd.8.gz
6. 查看vsftpd的监听端口
# netstat -npal|grep vsftpd
7. 开机自动启动(作为服务运行)
chkconfig vsftpd on
五、创建FTP用户
//创建用户(没有登录权限) //-d 新账户的主目录 //-g 新账户主组的名称或ID //-s 新账户的登陆shell //执行此命令会同步对应的创建文件夹(如果不存在) # useradd ftpusername -d /ftp_upload -g ftp -s /sbin/nologin //设置密码 # passwd ftpusername
六、修改FTP服务的端口号
1. 对配置文件/etc/vsftpd/vsftpd.conf进行调整。
//修改vsftpd监听端口 listen_port=9021 //启用PASV被动模式 pasv_enable=YES //修改vsftpd传递数据的最小端口 pasv_min_port=9001 //修改vsftpd传递数据的最大端口 pasv_max_port=9020 //用于检测PASV的安全检查,YES为关闭安全检查 pasv_promiscuous=YES
2. 修改linux services
# vim /etc/services
//找到下面的行改成9021端口 ftp 9021/tcp ftp 9021/udp
3. 修改防火墙配置,开放所需的端口
# firewall-cmd --permanent --add-port=9001-9021/tcp
七、可能遇到的问题
1. 使用FTP客户端连接时提示错误530,原因为SELINUX对FTP的限制,解决方法如下:
(1) 设置关闭SELINUX对FTP的限制
# getsebool -a |grep ftp
需要将其中的tftp_home_dir和ftpd_full_access 设置为on,回车以后,要等很久才会有反应。
#setsebool -P ftp_home_dir 1 #setsebool -P allow_ftpd_full_access 1
(2) 暂时关闭SELINUX
set enforce 0
(3) 永久关闭SELINUX(不推荐,且需要重新启动服务器)
vim /etc/selinux/config,修改为 SELINUX = disabled,保存退出。
如果碰到550拒绝访问,请执行sudo setsebool -P ftp_home_dir 1,然后重启服务器,执行reboot命令
(4) pam认证文件配置错误
修改/etc/pam.d/vsftpd
将auth required pam_shells.so 改为 auth required pam_nologin.so
八、参考资料
https://www.jianshu.com/p/225b291bc4a9
https://www.cnblogs.com/ismallboy/p/6785270.html
https://www.jianshu.com/p/9b6389a26336
https://blog.csdn.net/sinat_30802291/article/details/81706152
https://blog.csdn.net/jiecy/article/details/109450397
https://blog.csdn.net/qq_40606798/article/details/82286273
http://www.51gjie.com/linux/1002.html
https://blog.csdn.net/bluishglc/article/details/42398811
这篇关于CentOS安装并配置vsftpd服务的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-16在电脑上怎么模拟手机的运行环境?-icode9专业技术文章分享
- 2024-11-16接收socket数据,莫名其妙socket就关闭了是怎么回事?-icode9专业技术文章分享
- 2024-11-16ts nightly是什么?-icode9专业技术文章分享
- 2024-11-16如何升级vscode版本?-icode9专业技术文章分享
- 2024-11-16如何设置vscode默认的node版本?-icode9专业技术文章分享
- 2024-11-16shell 如何创建一个文件夹?-icode9专业技术文章分享
- 2024-11-16useReducer案例详解:从零开始理解与应用
- 2024-11-15聊聊用LangChain4J构建聊天机器人的那些事儿
- 2024-11-15LangChain 和 LlamaIndex 在检索增强生成(RAG)中的大比拼:全面对比评测
- 2024-11-15平台工程不只是配置管理:超越CFEngine的方法