建立FTP服务器
建立FTP的步骤
当我们使用阿里云或华为云这种云服务器的时候,由于我们是通过远程连接来操控服务器,所以我们无法直接向服务器上传文件。
这时候我们就需要借助 ftp 让我们的当前的电脑与远在机房的电脑实现数据互传。
(说在前面,远程连接使用root权限的时候一定要小心,博主就曾不小心弄崩过一次服务器,最后只能重新安装的镜像才解决问题,但数据肯定是找不回来了。)
首先我们通过 rpm -qa |grep vsftpd 命令查看当前服务器上是否安装了vsftpd
如果出现了如图的字样,则代表已安装vsftpd,否则需要通过 yum install -y vsftpd 命令下载并安装vsftpd
ftp的根目录默认为etc/vsftpd/,我们进入这个文件,使用 ls 命令查看目录下的内容
其中,ftpusers是黑名单,user_list是白名单,vsftpd.conf是ftp的核心配置文件
使用vi编辑器打开vsftpd.conf,找到以下字段检查并配置
- anonymous_enable=NO ,允许匿名用户访问,出于安全考虑我们选择关闭
- local_enable=YES ,允许本地用户登录
- write_enable=YES ,是否允许写入
然后我们在最下方添加以下两行
- pam_service_name=vsftpd
- userlsit_enable=YES
使用 useradd 和 passwd 命令创建账户和密码,如图
(记得将账户添加到user_list中)
然后使用 service vsftpd start 命令启动ftp服务器,如果是重新配置vsftpd的话可以使用 service vsftpd restart 命令重启ftp服务器
最后可以使用相关工具在本地使用ftp连接到远程服务器了。
博主在本地windows上使用的ftp连接工具为8uftp
可能出现的问题:
- 首先要检查云服务器的防火墙是否开启了ftp的端口,默认端口号是21
- 检查登录的用户是否在黑名单中,例如root默认在黑名单中
- 如果出现:
,可以尝试使用vi编辑/etc/pam.d/vsftpd 文件,将 [auth required pam_shells.so]和 [auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed]这俩行注释掉。
- 如果出现:
,在8uftp工具中 文件 --> 站点管理器 --> 高级 -->在被动模式设置中勾选 活动模式 即可解决。
最后放一张成功的图:
博主个人网站:我不爱你