云服务器安装ftp服务端,客户端无法访问

这篇博客介绍了如何在配置有弹性公网IP的Linux云服务器上搭建FTP服务端。通过安装vsftpd,创建FTP登录用户,并详细配置vsftpd.conf文件,包括禁止匿名访问、设置可写权限、开启被动模式等,以解决公网访问FTP时可能出现的问题。同时,博主提到了需要开放21和60000-60005端口以确保正常访问。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

安装ftp

创建ftp登录用户

设置vsftpd.conf文件


简介

配置有弹性公网IP的Linux云服务器搭建FTP服务端后,FTP客户端访问FTP服务端可能会报错显示云服务器的内网IP或没响应,也会出现登录成功,但是list目录和文件的时候卡住,我用阿里云ECS配置好vsftpd.conf文件里面的配置后实现了FTP公网上传下载文件

安装ftp


yum  -y  install  vsftpd

创建ftp登录用户


useradd testftp
passwd testftp


设置vsftpd.conf文件


vim /etc/vsftpd/vsftpd.conf

# 禁止匿名访问模式
anonymous_enable=NO

# 允许本地用户模式,这个设定值必须要为YES 时,在/etc/passwd内的账号才能以实体用户的方式登入我们的vsftpd主机,用户在/etc/passwd里面shell环境必须为/bin/bash
local_enable=YES

#    设置可写权限
write_enable=YES

#     本地用户模式创建文件的umask值
local_umask=022

#  禁止匿名用户上传文件
anon_upload_enable=NO

#   禁止匿名用户创建目录
anon_mkdir_write_enable=NO

#   当dirmessage_enable=YES时,可以设定这个项目来让vsftpd寻找该档案来显示讯息!您也可以设定其它档名!
dirmessage_enable=YES

# 当设定为YES时,使用者上传与下载日志都会被纪录起来。记录日志与下一个xferlog_file设定选项有关
xferlog_enable=YES
xferlog_std_format=YES
xferlog_file=/var/log/xferlog

# 为YES表示所有的用户均不能切换到其他目录。为NO时所有的用户均可以切换到其他目录。不可以让ftp用户跳出自己的家目录,否则太危险了,所以设置为YES 
chroot_local_user=YES

#   这个是pam模块的名称,我们放置在/etc/pam.d/vsftpd
pam_service_name=vsftpd

# 当userlist_enable为YES,userlist_deny为YES时,ftpusers和user_list文件中的用户均不能访问FTP服务器。  
# 测试结果是:此时只有不在ftpusers和user_list的系统用户可以访问
userlist_enable=YES
userlist_deny=YES

#    支持TCP Wrappers
tcp_wrappers=YES

#
listen_port=21

#  新版析vsfptd加入了安全需求,默认是ftp用户切换到根目录不允许写,所以要加这个选项允许写
allow_writeable_chroot=YES

download_enable=YES

# 设定支持ASCII模式的上传和下载功能
ascii_upload_enable=YES
ascii_download_enable=YES

#  当为YES时,vsftpd将以单独模式运行.这意味着vsftpd不必以某种inetd运行,而是可以直接执行.vsftpd执行后会自己侦听和操作进入的连接
listen=YES

#   类似listen选项,但该选项使vsftpd侦听的地址为IPv6格式的
#listen_ipv6=YES

# 如果不加上seccomp_sandbox=NO这一句会出现莫名的530错误
seccomp_sandbox=NO


# 在被动模式,服务器做了NAT,例如云主机,这时候我们用特定的IP访问机器,其实还转了一层。FTP客户端访问机器可能会没响应。具体情况为登录成功,但是list目录和文件的时候卡住。
# 开启被动模式
pasv_enable=YES
# 外网地址(在网络安全组开放设置源ip port和目标源端口)
pasv_address=云服务器绑定的弹性公网IP
#pasv_addr_resolve=YES 
# 被动模式最低端口
pasv_min_port=60000
# 被动模式最高端口
pasv_max_port=60005
ax_port端口要对客户端IP开放。否则无法来访问。


# 开启主动模式
#port_enable=YES
# 当主动模式开启的时候 是否启用默认的20端口监听,使用20端口传输数据
#connect_from_port_20=YES
# 上一参数connect_from_port_20使用NO参数时 指定数据传输端口
#ftp_date_port=%portnumber%

启动ftp

systemctl start vsftpd

开放端口

开放21和60000-60005端口

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

~芜痕~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值