阿里云centos7搭建ftp服务器详细过程,&用fileZilla客户端登录

 

搭建ftp服务器的目的:通过ftp上传文件到服务端

本文介绍:vsftpd安装ftp的步骤、阿里云安全组配置、fileZilla的使用、以及趟坑记

-----------------------------------------------------------------------------

环境:

服务端:阿里云centos7  

本机:windows10、filezilla客户端

---------------------------------------------------------------------------------

第一步:linux安装ftp

1、安装vsftpd

rpm -qa | grep vsftpd #确认是否已安装vsftpd

yum -y install vsftpd#安装vsftpd,已安装请跳过

2、创建特定的ftp登录用户,只需访问ftp

cd /var    #进入var文件夹

mkdir ftpuser   #创建newD目录

useradd -d /var/ftpuser -s /sbin/nologin ftpuser     #添加一个用户ftpuser,只允许访问ftp不许登录系统

passwd ftpuser    #修改密码

3、启动ftp服务

systemctl enable vsftpd   #设为开机启动

systemctl start vsftpd  #启动ftp服务

4、修改vsftpd的配置文件:

  • 把anonymous_enable的值改成NO,意思是不允许匿名登录。
  • 参数修改为local_enable=YES,意思是允许本地登录ftp
  •  将connect_from_port_20=YES  改为connect_from_port_20=NO(默认为YES,是主动模式)
  • 在该文件最下面加上(需要删掉备注哦)

pam_service_name=vsftpd 
userlist_enable=NO  #值为NO时,文件userlist的用户允许登录;值为YES时userlist的用户不允许访问
tcp_wrappers=YES
pasv_enable=YES   #YES指允许数据传输时使用PASV模式,默认值为YES。
pasv_min_port=10000    #PASV模式下,建立数据传输所可以使用port范围的下界和上界,0 表示任意。
pasv_max_port=10005   #PASV模式下,建立数据传输所可以使用port范围的下界和上界,0 表示任意。
local_root=/var/ftp  #指定访问ftp默认目录

5、修改完成后重启ftp服务

systemctl restart vsftpd #重启服务

第二步:阿里云服务器需要设置安全组规则,步骤如下图:(默认防火墙是关的)

阿里云centos7搭建ftp服务器详细过程,&用fileZilla客户端登录

阿里云centos7搭建ftp服务器详细过程,&用fileZilla客户端登录

添加两条安全规则如下图所示即可

阿里云centos7搭建ftp服务器详细过程,&用fileZilla客户端登录

第三步、fileZIlla客户端连接ftp服务器

阿里云centos7搭建ftp服务器详细过程,&用fileZilla客户端登录

阿里云centos7搭建ftp服务器详细过程,&用fileZilla客户端登录

传输设置改成被动,完成地址等填写连接即可测试

趟坑一、用filezilla登录ftp报530 Permission denied

分两种情况:使用root用户登录ftp和其他用户登录

  • 用root访问:

问题:用root登录一直连接不上

原因:root用户默认在黑名单ftpusers文件中

解决办法:在ftpusers中删掉root,保存重启服务即可。

  • 用新建的其它用户访问

问题:用新建的用户ftpuser登录一直连接不上

原因:之前把该用户加进了白名单user_list里,vsftpd.conf文件又包含userlist_enable=YES,两者冲突

解决办法:将userlist_enable=YES改成NO或者把该用户从user_list中删掉

etc/vsftpd下面的三个文件的作用:
    /etc/vsftpd/ftpusers:黑名单,指定了哪些用户不能访问FTP服务器,默认root被拒访问。(将访问的账户注释掉)
    /etc/vsftpd/user_list:该文件里的用户账户默认不能访问FTP,vsftpd .conf配置文件中userlist_enable=NO选项时才允许访问。
    /etc/vsftpd/vsftpd.conf:该文件定义相关ftp的配置,如用户登录控制、用户权限控制、超时设置、服务器功能选项、服务器性能选项、服务器响应消息等FTP服务器的配置。


本文参考:https://blog.****.net/aiyowei1106/article/details/99304058

本文参考:https://blog.****.net/LMXQH/article/details/80274038