当前位置:首页 > 云服务器 > 正文

云服务器创建ftp账号密码是什么,怎么设置?

云服务器创建FTP账号密码,本质上是为服务器系统添加一个用于FTP登录的专用用户,而非单独生成一组FTP专用凭证。简单说,你创建的FTP账号就是操作系统里的一个用户,密码就是该用户的系统密码,下面直接给出最常用的Linux环境(以CentOS/Ubuntu为例)操作全流程。

云服务器创建FTP账号密码的具体步骤

先明确一个场景:你刚买了一台云服务器,比如简米云、西西云或华为云的ECS实例,系统是Linux,现在需要给同事或客户开一个FTP账号,让对方能上传下载文件,但又不想暴露服务器root权限,这时候你需要装一个FTP服务软件,最常见的当属vsftpd

第一步:安装vsftpd服务

登录服务器(用SSH工具,比如Xshell或终端),执行:

yum install -y vsftpd # CentOS系列 apt install -y vsftpd # Ubuntu/Debian系列

装完先别急着用,先把服务跑起来:

systemctl start vsftpd systemctl enable vsftpd # 设置开机自启

第二步:创建系统用户作为FTP账号

这才是“创建账号密码”的关键动作,用useradd命令新建用户,比如要给对方开一个叫ftpuser的账号:

useradd -s /sbin/nologin ftpuser # 禁止SSH登录,只能用来FTP passwd ftpuser # 设置密码

系统会提示输入两次密码,输入时屏幕上不显示字符,这是正常的,别以为键盘坏了,密码建议用大小写字母+数字+符号的组合,长度不少于10位。

第三步:配置vsftpd允许该用户登录

默认配置下vsftpd可能禁止本地用户访问,需要改配置文件,路径在/etc/vsftpd/vsftpd.conf:

vim /etc/vsftpd/vsftpd.conf

确认或修改以下几个关键项:

local_enable=YES # 允许本地用户登录 write_enable=YES # 允许写入(上传文件) local_umask=022 # 上传文件的默认权限

改完重启服务生效:

systemctl restart vsftpd

第四步:开放防火墙端口

云服务器有双重防火墙:云控制台的安全组服务器内部的防火墙,FTP默认端口是21,你需要两处都放行。

安全组在云厂商控制台操作,服务器内部执行:

firewall-cmd --permanent --add-port=21/tcp firewall-cmd --permanent --add-service=ftp firewall-cmd --reload

云服务器创建ftp账号密码是什么,怎么设置? 第1张

这一步漏了,客户端连接时大概率报“连接超时”或“无法访问”,这是新手常踩的坑。

vsftpd和FileZilla Server两种环境怎么选

很多用户会混淆“搭建FTP服务”和“连接FTP的工具”,上面讲的是在Linux服务器上搭建FTP服务,用的是vsftpd,如果你买的是Windows云服务器,那就得换个思路。

Windows Server上的FTP搭建

Windows Server自带IIS的FTP功能,操作方法如下:

  1. 打开“服务器管理器” -> “添加角色和功能”
  2. 勾选“Web服务器(IIS)” -> “FTP服务器”
  3. 安装完成后,在IIS管理器里右键“添加FTP站点”
  4. 绑定IP和端口(默认21)
  5. 在“授权规则”里指定允许的用户,比如ftpuser或指定IP段

Windows环境下创建FTP账号,同样是在系统里创建用户,路径是“计算机管理” -> “本地用户和组” -> “用户” -> “新用户”,输入用户名和密码即可。

两种环境的适用场景对比

维度 Linux + vsftpd Windows + IIS FTP
性能 更高,适合高并发 一般,适合中小规模
安全性 配置灵活,可精细管控 依赖Windows防火墙策略
学习成本 需要命令行基础 图形界面,上手快
常见用途 网站服务器、数据备份 企业内部文件共享

行业共识认为,生产环境中的网站服务器绝大多数跑在Linux上,vsftpd是使用最广泛的FTP服务端软件,如果只是临时传几个文件,用FileZilla客户端连上就行了,不必纠结服务端是哪个。

ftp账号密码怎么设置才算安全

很多人图省事,直接把账号设成admin、密码设成123456,这相当于给服务器大门挂了个塑料锁,FTP本身是明文传输协议,密码在网络上是奔放的,所以更要注意防护。

密码策略建议

  • 长度不低于12位,混入大小写、数字、特殊字符
  • 不要和服务器root密码相同
  • 每个FTP账号单独设置密码,别共用
  • 定期更换密码,建议每90天轮换一次

限制FTP用户的权限范围

默认情况下,FTP用户登录后可以切换到服务器任意目录,要把它锁定在自己的home目录里,修改vsftpd配置:

chroot_local_user=YES

这样用户登录后只能在自己目录里活动,看不到系统其他文件。

云服务器创建ftp账号密码是什么,怎么设置? 第2张

并发连接和流量限制

在vsftpd配置里加上:

max_clients=50 # 最大并发连接数 max_per_ip=5 # 单IP最大连接数 local_max_rate=1000000 # 限制传输速率1MB/s

这些参数能防止恶意用户占用过多带宽,影响服务器其他业务。

新买的云服务器怎么配置FTP账号密码

如果是刚购买服务器,还没装任何环境,建议按下面顺序操作,别跳步。

完整配置清单

  1. 系统准备:更新软件源,yum update或apt update
  2. 安装vsftpd:按前文命令安装
  3. 创建专用用户:一个业务一个账号,命名规范如web_upload、db_backup
  4. 配置目录权限:把FTP主目录设为/var/www/html这类业务目录,用chown授予该用户权限
  5. 防火墙放行:控制台安全组和内部防火墙同步开放21端口
  6. 测试连接:用FileZilla或命令行ftp 服务器IP测试

完事儿后怎么验证

用命令行登录测试:

ftp 你的服务器IP

输入用户名和密码,如果登录成功,会显示230 Login successful,再试试用ls命令能正常看到目录文件,用put命令上传一个小文件测试写入权限。

常见问题排查:连接失败或登录报错

连接不上FTP时,别慌,按照下边从高频到低频排查。

连接被拒绝或超时

先查防火墙,这是最普遍的原因,执行:

telnet 服务器IP 21

如果卡住没反应,基本可以确定是防火墙或安全组拦截,国内云厂商的安全组默认只开放22端口(SSH),21端口需要手动添加规则。

登录时报530 Login incorrect

  • 确认用户名和密码有没有输错(注意区分大小写)
  • 确认用户是否被锁定,执行passwd -S ftpuser查看状态
  • 确认vsftpd配置里local_enable=YES是否生效

云服务器创建ftp账号密码是什么,怎么设置? 第3张

登录成功但无法上传文件

  • 检查目录写权限:chmod -R 755 /var/www/html
  • 检查vsftpd配置write_enable=YES
  • 检查磁盘空间是否满了:df -h

云服务器FTP账号与普通账号有何区别

很多刚接触服务器的用户会问:FTP账号不就是系统账号吗,为什么感觉不太一样?其实从技术上来说,FTP账号消耗的就是系统账号资源,但因为登录方式的限制,使用体验上会有所区别。

  • 交互能力:普通账号能SSH登录执行任何命令,FTP账号通常设为/sbin/nologin,不能执行终端命令
  • 范围限制:FTP账号通过chroot被锁定在特定目录,普通账号默认可访问整个文件系统
  • 用途分工:一个FTP账号通常只对应一个目录或一种业务,普通账号往往管理范围更大

大多数情况下给外部合作伙伴用的都建议FTP专用账号,不给SSH权限,减少安全风险。

如何创建FTP账号密码并管理多个账号的日常整理

当服务器上FTP账号多了以后,建议把账号和对应目录、用途记录在案,在/etc/vsftpd/user_list或/etc/vsftpd/chroot_list里维护白名单或黑名单,管理多个账号时可以随时查看:

cat /etc/passwd | grep ftp使用相关

这样就能看到哪些账号是给FTP用的,方便留存记录和清理离职同事的账号。

Q&A:云服务器创建FTP账号密码的常见疑问

Q1:FTP账号可以删除吗?删了会有什么影响?

可以删除,用userdel -r ftpuser命令连同home目录一起删除,删掉后,该FTP账号即刻无法登录,正在进行的传输连接也会中断,建议删除前先备份该目录下有价值的文件。

Q2:FTP密码忘了怎么办?

直接用root身份运行passwd ftpuser重设一个新密码,不需要知道旧密码,重设后立即生效,不会影响账号其他配置。

Q3:云服务器怎么创建FTP账号密码给多个用户用?

逐个创建系统用户并设置密码,然后配置vsftpd的chroot_local_user=YES让每个用户限制在自己目录里,云服务器性能和带宽有限,单个FTP服务并发连接建议控制在50以内,大量用户同时访问时最好划分不同目录或适当限速。

0