Linux 安装 COS FTP SERVER

2019-03-11 20:27   Tags:

安装 腾讯云对象存储 cos ftp server

现在的几乎所有对象存储服务商都没有ftp功能的,

用腾讯云官方提供的cos-ftp-server搭建个ftp功能

通过ftp把东西上传到腾讯云cos里

首先需要有服务器并且有外网IP

最好在是腾讯云的服务器,并且与cos同一地区,内网上传,速度快

为此我特地买了个腾讯云上海地区服务器,用于备份使用-。-

其他服务器最好带宽大的,上传速度快爽一点


TMD,官方文档,讲的一点不细致,搞了半天才成功

腾讯云官方文档:https://cloud.tencent.com/document/product/436/7214

腾讯云官方github最新cos-ftp-server-V5:https://github.com/tencentyun/cos-ftp-server-V5

首先去github下载安装包

然后解压出来

先不急着把文件上传到服务器安装

首先会看到以下文件

Linux 安装 COS FTP SERVER

conf目录里有个vsftpd.conf.example文件

Linux 安装 COS FTP SERVER

vsftpd.conf.example文件重新复制一份命名为vsftpd.conf

或者直接把名字改成vsftpd.conf也行

Linux 安装 COS FTP SERVER

然后打开vsftpd.conf

会看到以下内容

Linux 安装 COS FTP SERVER

COS_ACCOUNT_0

如果没有申请过cos_secretidcos_secretkey

先去腾讯云后台,申请个cos_secretidcos_secretkey

[COS_ACCOUNT_0]
cos_secretid = XXXXXX
cos_secretkey = XXXXXX
cos_bucket = {bucket name}-123
cos_region = ap-xxx
cos_protocol = https
#cos_endpoint = ap-xxx.myqcloud.com
home_dir = /home/user0
ftp_login_user_name=user0
ftp_login_user_password=pass0
authority=RW
delete_enable=true

解释

cos_bucket是存储桶名称,把上面{}去掉不需要,

就说腾讯云官方文档傻逼嘛,玛德也不讲一下,一开始我没去掉,最后看了日志报记录才知道的原因

cos_region是地域简称https://cloud.tencent.com/document/product/436/6224

home_dir 本地服务器路径,需要指定一个路径,随便指定一个也行,例如/home/cos-ftp,目录必须存在,否则报错

ftp_login_user_nameftp账号

ftp_login_user_passwordftp密码

其他无需改动

COS_ACCOUNT_1

COS_ACCOUNT_1可选配置,与上面COS_ACCOUNT_0配置雷同,这个配置多个ftp账号密码而已

[COS_ACCOUNT_1]
cos_secretid = XXXX
cos_secretkey = XXXXX
cos_bucket = {bucket name}-123
cos_region = ap-xxx
cos_protocol = https
#cos_endpoint = ap-xxx.myqcloud.com
home_dir = /home/user1
ftp_login_user_name=user1
ftp_login_user_password=pass1
authority=RW
delete_enable=true

[NETWORK]

[NETWORK]
masquerade_address = XXX.XXX.XXX.XXX
listen_port = 2121

#passive_port可以设置passive模式下,端口的选择范围,默认在(60000, 65535)区间上选择
passive_port = 60000,65535

masquerade_address服务器外网IP地址
listen_port访问2121端口,默认的2121就好,需要放行端口

需要服务器商那里放行2121端口

服务器内也需要放行

iptables放行

iptables -A INPUT -p tcp --dport 2121 -j ACCEPT

或者

Firewall放行

https://www.blyoo.com/3327.html

passive_port被动模式,需要在服务器商放行端口例如放行60000-65535
否则可以连接登录但是,不能读取目录,服务器内不需要放行,傻逼一样的文档tmd,也不讲

其他东西不需要改动


开始安装

以上配置好之后

把目录所有文件上传到服务器内就行了

Linux 安装 COS FTP SERVER

然后,运行setup.py安装ftp server及其相关的依赖库

python setup.py install

Linux 安装 COS FTP SERVER

前台运行ftp_server.py启动cos-ftp-server

python ftp_server.py

如果前面都配置正确

就可以看到下面这样

到了这里就算成功999999.99999999%了

Linux 安装 COS FTP SERVER


然后去ftp连接测试

不出意外就能连接成功了

上传文件试试

不出意外就能上传成功了

ftp

Linux 安装 COS FTP SERVER

cos后台

Linux 安装 COS FTP SERVER

或者

在浏览器上输入地址

ftp://服务器外网IP地址:2121/

会提示输入账号密码

输入进去ftp设置的账号密码,确定

不出意外就能看到同样的文件

Linux 安装 COS FTP SERVER

后台启动

Ctrl + C 即可取消server运行

可以使用nohup命令,以后台进程方式启动:

nohup python ftp_server.py >> /dev/null 2>&1 &

或使用screen命令放入后台运行(需要安装screen工具):


screen -dmS ftp
screen -r ftp
python ftp_server.py

Ctrl+A+D 			# 切回主screen即可

停止

Ctrl + C 即可取消server运行(直接运行,或screen方式放在后台运行)

ps -ef | grep python | grep ftp_server.py | grep -v grep | awk '{print $2}' | xargs -I{} kill {}

如有意外,请下载日志

发表评论

电子邮件地址不会被公开。 必填项已用*标注