【FTP】二、Linux下FTP的搭建、排错与配置

发布于:2022-10-21 ⋅ 阅读:(474) ⋅ 点赞:(0)

关于FTP的三篇文章整理:

😉【FTP】一、什么是FTP?
😉【FTP】二、Linux下FTP的搭建与配置
😉【FTP】三、FTP指令–实现FTP文件共享


在这里插入图片描述

一、安装FTP

1、安装vsftpd

- 查看是否安装
rpm -qa|grep vsftpd
#若安装版本较低的话,可yum remove xxx卸载
- 安装
yum -y install vsftpd

2、创建登录ftp的账号,-d指定了用户ftp_user的主目录(刚登陆成功所在的目录即主目录)

useradd -d /home/ftp ftp_user

3、修改一下配置文件

vi /etc/vsftpd/vsftpd.conf

修改以下这个参数:

anonymous_enable=NO   # 不允许匿名用户登录

4、重启vsftpd服务

systemctl restart vsftpd
或
service vsftpd restart

5、查看ftp服务器防火墙,开放相关端口

systemctl status firewalld

其状态若不是running,则直接用客户端连接或访问ftp://IP即可出现登录界面。若防火墙则running,则需要开放21端口

firewall-cmd --zone=public --add-port=21/tcp --permanent
firewall-cmd --reload
firewall-cmd --zone=public --list-ports 

到此,使用客户端就可访问ftp了,比如下图使用weindows自带的ftp命令行、或IE浏览器
在这里插入图片描述
在这里插入图片描述

二、常见的坑

1、输入了正确的用户名和密码,但IE一直跳转登录页面(IE当ftp客户端粗糙到不说失败原因)

2、连接登录成功了,但 ls 提示 ” ftp: connect: No route to host ”

就这两个问题,坑了我好久,弄明白问题前的心态如图:
在这里插入图片描述
原因还是第一章说的FTP主动模式、被动工作模式的选择。不同的生产环境下,并不是两个模式都能通。
😉
😉
先说解决办法--切换FTP工作模式

  • windows的ftp命令默认是使用的主动模式连接FTP serer
  • linux默认是PASV模式,即被动模式,要通过 passive on | off来进行切换
    在这里插入图片描述
  • IE浏览器作为FTP客户端时,默认是主动模式,可在设置–Internet选项–高级中勾选或取消
    在这里插入图片描述

你要是不了解两种模式的原理,可以看这篇文章。反正就两种工作模式,不想分析就直接切到对立模式就好。

注意:
选择用PASV方式还是PORT方式登录FTP服务器,选择权在FTP客户端,而不是在FTP服务器。


下面是错误的理论原因分析,不想看的跳过
在这里插入图片描述

三、相关配置文件详解

安装完之后在/etc/vsftpd/路径下会存在三个配置文件:

  • vsftpd.conf: 主配置文件
cat /etc/vsftpd/vsftpd.conf |grep -v '^#'
本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到