linux离线安装ftp简易版
1.安装vsftpd服务
这是建立在你是第一次安装ftp,先下载vsftpd的rpm包(可以是其它版本)
vsftpd-3.0.2-28.el7.x86_64.rpm
执行安装rpm(-ivh表示不强制安装,遇到已经安装或错误会停止)
rpm -ivh vsftpd-3.0.2-28.el7.x86_64.rpm
2.配置vsftpd.conf
安装成功后编辑vsftpd.conf(核心配置),默认会自动安装到 /etc/vsftpd
vim /etc/vsftpd/vsftpd.conf
先将anonymous_enable=YES # 默认是YES,修改成NO,表示不允许匿名用户登录
修改完配置启动vsftpd
service vsftpd start
也可以查询其端口号判断是否启动成功
netstat -tunlp | grep 21
3.配置用户及密码
/home/ftp存储数据的目录, ftp我自己没有创建它自己会创建, ftpuser是我创建的登录用户(这个命令会自己创建该用户)
useradd -d /home/ftp -s /sbin/nologin ftpuser
输入我自己的密码
passwd ftpuser
后面还要确认一次密码
改完配置需要重启生效
service vsftpd restart
4.确认ftp可用性
在window的cmd尝试登录(我是腾讯云的服务器)
ftp 101.43.67.3
第一次登录失败报530
我这边是通过将ftpuser用户权限赋予 /bin/bash
usermod ftpuser -s /bin/bash
不需要重启就可以登录成功了
到了这里就算完了吗,显然还没有 文件的上传下载都没测
先在对应的/home/ftp目录里随便放一个文件,然后在cmd里查看该文件是否存在
cmd用 ls命令查看(已经看到文件了)
至于Consider using PASV好像是提示使用被动模式
到这一步只能证明通用cmd可以登录成功且能查看到ftp目录下的文件,还需要在文件夹中登录下
使用被动模式试下
在vsftpd.conf中末尾增加该配置并重启vsftpd
pasv_enable=YES pasv_min_port=6000 pasv_max_port=7000
重启后发现还是报一样的错
通过查询资料得知, 被动模式下相当与 我服务器的端口21是固定的,但你本地或其它服务器访问我的ftp是需要一个随机端口作为媒介的,而且生成的范围是在我配置的最大最小端口6000-7000
在被动模式下,FTP客户端随机开启一个大于1024的端口N向服务器的21号端口发起连接,发送用户名和密码进行登陆,同时会开启N+1端口。然后向服务器发送PASV命令,通知服务器自己处于被动模式。服务器收到命令后,会开放一个大于1024的端口P(端口P的范围是可以设置的,后面会说到这个是很重要的)进行监听,然后用PORT P命令通知客户端,自己的数据端口是P。客户端收到命令后,会通过N+1号端口连接服务器的端口P,然后在两个端口之间进行数据传输
基于此我在腾讯云开下我的安全组6000-7000端口开放(如果是防火墙限制就把防火墙先关掉不管是线上或是本地,先测通再考虑后续问题)
被动模式下如果有防火墙策略,则需开放ftp的21端口和pasv_min_port - pasv_max_port端口范围内的访问策略
本地window登录ftp可以正常看到文件且尝试复制文件进去在服务器中/home/ftp可以看到
5.修改ftp的默认端口21
在vsftpd.conf默认增加
listen_port=2121
修改下 /etc/service的配置将其ftp的21端口修改成你配置文件改的2121
因为修改了ftp的默认端口,在本机上还是一样的命令 ftp 127.0.0.1
在window则是 ftp://远程ip:2121
阿里云或腾讯云可能还有配置一些东西window才能访问
listen=YES listen_ipv6=NO pasv_address=172.17.2.118
其中pasv_address
需要指定弹性公网IP
还有一种报错现象是可以在本地正常访问但删除或上传文件报权限不够,这种一般是你存放ftp文件的权限不够
授权给ftpuser权限就可以了(在home目录下我没有这个问题,是我在另一台服务器 /data/ftp data目录为新建出现的)
chown -R ftpuser:ftpuser /home/ftp
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix