Linux云服务器下搭建FTP服务器

更多腾讯海量技术文章,请关注云加社区:https://cloud.tencent.com/developer

作者:吴奇

FTP工作模式简介

FTP工作会启动两个通道:控制通道和数据通道。

控制通道一般由客户端发起,数据连接分两种:port(主动)和pasv(被动)。

PORT模式:

在客户端需要接收数据时,ftp_client(大于1024的随机端口)-PORT命令->ftp_server(21) 发送PORT命令,这个PORT命令包含了客户端是用什么端口来接收数据(大于1024的随机端口,在传送数据时,ftp_server将通过自己的TCP 20 端口和PORT中包含的端口建立新的连接来传送数据。

PASV模式:

传送数据时,ftp_client--PASV命令-->ftp_server(21) 发送PASV命令时,ftp_server自动打开一个1024--5000之间的随机端口并且通知ftp_client在这个端口上传送数据,然后客户端向指定的端口发出请求连接,建立一条数据链路进行数据传输。

安装FTP软件包

FTP安全设置

1.为了安全应该禁止匿名用户的登录:将配置文件的anonymous_enable参数设为NO,屏蔽匿名用户上传,创建,删除的功能

2.为加强安全设置:限制系统用户锁定在家目录:

#vi /etc/vsftpd/vsftpd.conf

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list //把需要限制的用户加入/etc/vsftpd/chroot_list即可

3.限制其他系统用户不能登录ftp:

#cat /etc/vsftpd/ftpusers //ftpusers是禁止使用FTP用户列表。#echo "uuu" >>/etc/vsftpd/ftpusers 此时viong不能登录ftp //这样uuu用户将不能使用FTP

4.使用FTP的配置文件/etc/vsftpd/user_list来控制只有那些用户可以登录FTP:

/etc/vsftpd/user_list 用于存放哪些用户才能登录系统:

#vi /etc/vsftpd/vsftpd.conf

#在userlist_enable=YES 的后面添加

userlist_deny=NO

userlist_file=/etc/vsftpd/user_list

5.搭建支持SSL加密传输的vsftpd:

首先检查vsftpd软件是否支持SSL:

  • 发表于:
  • 原文链接:http://kuaibao.qq.com/s/20171226A08C5S00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券