搭建过程
机器配置
发行版:CentOS 6.9
RAM: 512M
CPU: 单核
带宽: 1000Mbps
这个机器配置不算高,作为下载服务器也是绰绰有余了。
工具选择
经过一番搜索,选择了作为部署的工具 transmission + vsftpd + nginx + aria2c。
transmission, transmission-daemon: 作为种子、磁力的客户端,作为离线下载的核心工具。
vsftpd:用于搭建ftp, 来对文件下载文件进行管理(可怜的vps只有10G的磁盘空间 T_T)
nginx :高性能的nginx用来作为静态文件服务器。
aria2c:多线程下载器,从nginx的展示的文件列表中高速下载我们离线好的文件。
部署实践
1. 安装transmission,修改配置并启动服务
安装transmission及transmission-daemon
$ wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm$ rpm -ivh epel-release-6-8.noarch.rpm
$ yum -y upgrade
$ yum -y install transmission transmission-daemon
修改配置并启动transmission服务
在路径/var/lib/transmission/.config/transmission 下的 settings.json 文件就是transmission的配置文件
里面有一大堆配置.我们需要修改下面的配置,这样就可以使用远程软件对我们的tranmission进行操控
"rpc-authentication-required": true, "rpc-enabled": true, "rpc-password": "远程调用的密码", "rpc-whitelist-enabled": false,"rpc-username": "远程调用的用户名",启动transmission服务
$ sudo service transmission-daemon start
于是我们就能够通过 **http://host_ip:9091** 进行访问transmission服务.进行了一下测试,速度还是可以的,峰值速度有30MB/s
另外我们还可以安装 Transmission-Remote-GUI 来对transmission进行操控,而不用访问页面, Linux(Mint)下在应用商店就能够下载. 操作方式和uTorrent类似
GUI界面:
2. vsftpd 搭建ftp服务器
搭建ftp服务器并不是用来下载文件的,通过ftp下载文件发现速度奇慢.所以ftp服务器的作用是用来对文件进行管理的, 一般来说就是删除操作.
安装vsftpd
$ yum install -y vsftpd
我们使用Linux用户来登录,不使用虚拟用户(因为要装数据库,麻烦)
因为vsftpd默认不允许使用root登录所以我们要添加用户
添加用户
$ useradd ftpuser$ passwd ftpuser
修改ftpuser的home目录为transmission的下载目录
$ usermod -d /var/lib/transmission/Downloads ftpuser$ rm -rf /home/ftpuser
修改vsftpd配置文件(/etc/vsftpd/vsftpd.conf)
对配置文件如下:
# generate using cat vsftpd.conf | grep -v "#"anonymous_enable=NOlocal_enable=YESwrite_enable=YESlocal_umask=022dirmessage_enable=YESxferlog_enable=YESconnect_from_port_20=YESxferlog_std_format=YESftpd_banner=Welcome to Private FTP service.chroot_list_enable=NOlisten_ipv6=YESpam_service_name=vsftpduserlist_enable=YEStcp_wrappers=YESlocal_root=/var/lib/transmission/Downloads其中的配置 chroot_list_enable=NO表明不允许用处切换出home目录.
启动vsftpd
sudo service vsftpd start
这样我们就能使用ftp对transmission下载的文件进行管理.
3. nginx 搭建静态文件服务器
利用nginx作为静态资源的服务器,提供已下载资源的展示
安装nginx的操作网上有一堆教程.作为后续的填充.
主要说一说配置
在nginx的配置文件下(/etc/nginx/conf.d/default.conf)这么进行修改
autoindex onautoindex_exact_size onautoindex_localtime onserver { listen 8090 listen [::]:8090 server_name localhost charset utf-8 location / { root /var/lib/transmission/Downloads index index.html index.htm}
启动nginx服务就可以通过8090端口获得文件列表了.
4. aria2c 下载文件
aria2c 用于从服务器上下载文件, 安装于自己的机器上.
主要说一下怎么通过aria2c多线程加速下载
在aria2c中有几个参数和多线程下载有关
参数x : --max-connection-per-server=<NUM>, 每个服务器最大的连接数, 默认是1
参数s: --split=<N>, 指每个文件下载连接数,默认5,-s受限于-x,如果s默认 x大于5时, x也会受限与s
所以对于大文件来说,将x和s参数适当提高能提高下载速度.
近日双11,各家服务器的vps也将变得非常划算。vps可以作以下用途:
可以用来搭建网站,如博客以及自己编写其它项目服务。
如果是国个服务器,可以用来搭建梯子。
如果搭建内网穿透,这样可以通过公网地址访问你的本地电脑主机,如远程控制,将会变得流畅、清晰(前提宽带不能低于2M)
可以搭建自己云盘、离线下载器,上传自己的文件;并且对于一些难下的资源,改用自己的服务器。
搭建一些自动签到程序,自动签到某些网站。(这里省略比如)。
搭建一些开源项目,为自己提供方便,如github的开源音乐网站,方便自己听取各大平台的音乐资源等
如果是技术玩家,通过python爬取某些网站数据,并作可视化显示与分析。
搭建自己的游戏服务器,如我的世界。
通过挂矿机、广告等获取收益(不推荐)
........
以上几点是自己亲身试验,vps用途很多,但真正利用到发挥价值的还是不容易的。至于具体实现技术,在这不方便大篇论说。提示:如果用现在比较火的docker,以上内容将会容易与简单。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)