山野莽夫

  • 归档
    • 随笔
    • 建站资源
    • 分享
    • 代码
  • 地球物理学
    • 专业课
    • 概念解释
  • 计算机
  • 互联网
  • 教程
  • 规划
  • 实验室
    • 珍藏的软件
    • 贴吧云签到
    • A1账号自助申请
山野莽夫
小学生的挣扎的点点滴滴
  1. 首页
  2. 建站资源
  3. 建站教程
  4. 正文

腾讯云cos搭建个人ftp服务器

2017年5月2日 3958点热度 0人点赞 0条评论

腾讯云cos每月提供免费额度,不用白不用。用着腾讯云cos的人都知道,最近腾讯云cos升级了,从v3版本升级到v4版本了。据腾讯云官方数据说升级后会有更好的性能,更多的功能。我用着腾讯云cos的ftp功能,把我网站的数据库备份后通过ftp的方式上传到腾讯云cos中,不过我昨天发现,升级后后台根本就没有ftp账号添加了功能了。估计腾讯直接去掉了,不过v3版本的时候添加的ftp账号仍然是可以用的。不过v4就不行了。提交工单,腾讯客服提示文档有搭建ftp服务器的方法。研究了一下,果真v4版本已经提供了一个搭建ftp服务器的工具,果断搞起来。

1.首先看介绍一下这个ftp工具

文档地址:https://www.qcloud.com/document/product/436/7214

 

功能说明

COS FTP v4是依赖COS 4.X的FTP服务端工具。通过COS FTP工具可以通过FTP协议从COS上传和下载文件。

上传机制:上传先落地FTP的本地磁盘, 上传COS后删除,返回给客户端成功。(后期版本流式上传COS,不落本地磁盘)

下载机制:下载直接流式返回给客户端

支持FTP命令

  • put
  • get
  • mput
  • mget
  • delete
  • mkdir
  • ls
  • cd
  • bye
  • quit
  • size

不支持FTP命令

  • append

适用COS版本

4.x

系统要求

Linux (推荐腾讯云Centos系列CVM)

依赖库

针对Centos等使用yum安装的系统,build.sh会自动下载以下依赖。其他系统请自行安装。

cmake
boost
openssl-devel
asio-devel
libidn-devel

使用方法

获取程序包

下载地址:COS FTP V4 github

源码结构

目录 说明
bin 编译后生成的可执行程序
conf 配置文件目录
data 上传时存储临时数据的目录,上传成功或失败后删除
dep FTP Server所依赖的COS 4.X CPP SDK
include 头文件所在的目录
lib 依赖的库目录
log 日志目录
opbin 有关清理日志, 自动拉起的脚本
src FTP源码目录
build.sh 编译脚本
start.sh 启动FTP server的脚本
stop.sh 停止程序的脚本

2.配置方法,这才是重点

1. COS账户信息配置
    #cos, set your app info in cos                                                   
    cos_appid=1000000                                                   
    cos_secretid=xxxxxxxxxxxxxxxxxxxxxxxxx                              
    cos_secretkey=xxxxxxxxxxxxxxxxxx 
    # bucket信息,包括bucket的名字,以及bucket所在的区域。目前有效值华南广州(gz), 华东上海(sh), 华北天津(tj)
    cos_bucket=test                                                     
    cos_region=gz
    # domain设置为cos表示通过cos源站下载(推荐服务器为腾讯云机器用户设置)
    # domain设置为cdn表示通过cdn下载(推荐服务器为非腾讯云机器用户设置)
    cos_download_domain=cos                                             
    # 此项不用设置, build.sh脚本会自动设置
    cos_user_home_dir=/home/test/cosftp_data/                                        

2. FTP账户配置(格式-用户名:密码:读写权限. 多个账户用分号分割)
    login_users=user1:pass1:RW;user2:pass2:RW  

3. 外网IP设置, 把外网IP设置服务器的外网IP(仅针对通过外网IP访问FTP服务的用户,如客户机和FTP服务器均在腾讯云CVM机器上,通过内网IP访问,则不用设置)
    pasv_address=115.115.115.115

4. 控制端口与数据端口设置, 可以使用默认设置(建议端口在1025 ~ 65535, 并保证未被防火墙iptables过滤)
    listen_port=2121

直接列出我的配置

对于服务器可能需要开启2121端口,下边列出卡其2121端口的方法

centos7.0以及以上
firewall-cmd --zone=public --add-port=2121/tcp --permanent
centos7.0以下
iptables -I INPUT -p tcp --dport 2121 -j ACCEPT

 

3.编译

因为FTP需要使用本地磁盘,因此请将FTP源码程序放在一个存储空间较大的盘。(腾讯云初始的机器购买的数据盘需要手动格式化并挂载, 请参考 https://www.qcloud.com/doc/product/213/2974
以root身份运行build.sh(因为build.sh里会调用yum进行安装依赖库,推荐使用腾讯云主流的Centos系列系统,如果是其他系列系统,如ubuntu,请修改opbin/env_init.sh)

命令如下

sh build.sh

4.运行

切换到cos_ftp账户(这个账户是在build.sh脚本里建立的), su cos_ftp

sh start.sh (会启动FTP进程和monitor程序,以及安装自动清理日志的CT脚本)
使用FTP客户端连接server的控制端口(默认是2121),为避免客户机限制端口,建议使用pasv模式连接。

命令如下

su cos_ftp

sh start.sh 
停止命令
sh stop.sh

5.可能出现的问题

(1)推荐用新版的appid,地址为含有125开头的bucket,没有的话就新建一个,绝对是125开头的

(2)连接不上,请查看账户密码端口号,连接模式是否正确,以及服务器上进程是否起来(netstat -tulnp | grep vsftpd)
(3) 并发上传一个文件失败,FTP不支持并发上传文件,会对文件进行加锁,导致只有一个会成功。
(4) 上传文件过大,本地磁盘不足导致失败。通过FTP上传会先临时落FTP服务器磁盘(存放在FTP服务的data目录下),然后上传COS,上传成功后会删除本地文件。下载不落本地,不受磁盘空间限制,因此建议把FTP服务部署在空间较大的分区上。
(5) 使用FileZilla等客户端上传大文件失败, 第一版本的FTP服务器不支持append模式,而FileZilla等客户端在上传一些大文件时,会通过append操作。

(6)有问题请在下方留言

标签: cos ftp
最后更新:2017年5月2日

小菜菜

菜鸟

打赏 点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据。

标签聚合
模板 宝塔面板 虚拟机 onedrive wordpress c语言 ppt 地震学程序
最新 热点 随机
最新 热点 随机
Azure Student 微软云 学生订阅 免费12个月用量避坑注意点集合 MP3音频文件格式详细解析 python按固定采样点个数分割wav格式音频 愉快使用谷歌免费人工智能平台colab,训练你的神经网络模型,为你的学术生活添砖加瓦 华为云版轻量应用服务器-云耀云服务器简单体验评测 Cloudflare 免费CDN自定义节点ip之自选cloudflare 高速节点ip工具分享
本地web环境架设网站如何配置DNS解析 本站提供免费office365教育版A1子号(5Tonedrive网盘),可以自助申请 大明王朝1566云盘资源 wordpress添加博客统计小工具 折射波相遇时距曲线t0法 考研英语复试常考话题答题技巧及范文--谈谈你的大学

COPYRIGHT © 2021 shanyemangfu.com. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

蜀ICP备15031791号-2