栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Centos搭建FTP完整版

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Centos搭建FTP完整版

CentOS搭建FTP

捣鼓了一天的ftp,满百度查也没查到能完整说清楚和解决中间可能出现的问题。痛定思痛,自己写一个吧。

环境:CentOS Linux release 7.7.1908 (Core)

一、安装FTP
#先检查系统中是否有ftp
rpm -q vsftpd
#要删除ftp
rpm –e vsftpd
#安装ftp
yum -y install vsftpd
#设置为开机启动
systemctl enable vsftpd.service
二、防火墙相关
#百度上看说ftp分主动被动模式,反正只开放21端口肯定不行,至少是21和22两个端口,如果嫌麻烦可以关闭防火墙
#直接关闭防火墙
systemctl stop firewalld.service
#禁止firewall开机启动
systemctl disable firewalld.service
#-----------------或者开启21和22端口-----------------
firewall-cmd --zone=public --add-port=21/tcp --permanent
firewall-cmd --zone=public --add-port=22/tcp --permanent

#重启防火墙
firewall-cmd --reload

#防火墙开启ftp及http服务
#查看防火墙支持那些协议通过
firewall-cmd --list-services
#开启http协议
firewall-cmd --permanent --add-service=http
#开启ftp协议
firewall-cmd --permanent --add-service=ftp
三、配置文件相关

真的很累,百度上奇奇怪怪一大堆,心累

3.1 /etc/vsftpd/vsftpd.conf配置文件
#如果你想匿名登录,不需要配置用户名及密码的话,到这里就完成了,直接启动ftp(命令在五中),使用Anonymous登录就行,不需要密码
#如果需要配置一个用户登录使用的话,请往下看
#1、关闭匿名登录
vim /etc/vsftpd/vsftpd.conf
将anonymous_enable设置为NO
anonymous_enable=NO
#2、设置chroot_local_user为Yes
chroot_local_user=YES
#3、开启chroot_list_enable
chroot_list_enable=YES
#4、设置chroot_list配置文件的路径
chroot_list_file=/etc/vsftpd/chroot_list
#5、如果ftp的版本大于2.3.5的话,在配置文件末尾添加
allow_writeable_chroot=YES
#6、我也没看明白是什么的配置,先配置上,直接控制台输入下面两句话就可以了
setsebool -P allow_ftpd_full_access on
setsebool -P tftp_home_dir on
3.1 /etc/pam.d/vsftpd配置文件
#此处不配置会导致无法登录、登录后无法获取文件列表等
vim /etc/pam.d/vsftpd
#将auth       required    pam_shells.so注释掉
#然后将下面这行插入到上面这行配置的下方
auth       required	pam_nologin.so

四、增加可以访问和连接FTP的用户
#1、新增一个ftpuser01的用户,且不能登录系统
useradd ftpuser01 -s /sbin/nologin
#2、设置密码	设置成123456就可以了,输入两遍
passwd ftpuser01
#3、将新增的用户添加到chroot_list配置文件中
vim /etc/vsftpd/chroot_list
#4、添加后保存即可
wq!
五、重点来了。。。。。。

注:后面我重新还原虚拟机又配置了几次,这里好像可以忽略。。。。。

如果出现账号登录不上的问题可以尝试使用

cd到home路径下,查看用户名命名的文件夹的权限

必须保证这个文件夹没有写的权限

chmod 555 ftpuser01
六、现在可以启动FTP了
#启动
systemctl start vsftpd.service
#停止
systemctl stop vsftpd.service
#重启
systemctl restart vsftpd.service
大功告成
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/395806.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号