黑帽联盟

标题: 搭建基于telegram的无限网盘 [打印本页]

作者: huangjia    时间: 2023-10-18 18:48
标题: 搭建基于telegram的无限网盘
telegram里面用户是可以无限上传文件的,但是我们在国内无法直接访问telegram,所以有大佬开发了个项目,可以通过机器人获取telegram里的文件直链,只需要一台vps即可


原项目地址:https://github.com/EverythingSuckz/TG-FileStreamBot


环境要求:
python3

首先我们通过git拉取项目:
  1. git clone https://github.com/EverythingSuckz/TG-FileStreamBot
复制代码

进入项目地址
  1. cd TG-FileStreamBot
  2. virtualenv -p /usr/bin/python3 venv
复制代码

如果这一步报错“Command 'virtualenv' not found”,说明没有安装virtualenv,执行:
  1. pip3 install virtualenv
复制代码

安装好virtualenv后,再执行:
  1. virtualenv -p /usr/bin/python3 venv
  2. . ./venv/bin/activate
  3. pip3 install -r requirements.txt
复制代码

然后我们telegram里面搜索botfather并添加机器人:
22.png

向bot发送/newbot指令来新建一个bot,以下带#号为bot回复的语句
  1. #Alright, a new bot. How are we going to call it? Please choose a name for your bot.
  2. 输入你的bot名称
  3. #Good. Now let's choose a username for your bot. It must end in `bot`. Like this, for example: TetrisBot or tetris_bot.
  4. 然后输入你的bot用户名,之后你会用这个用户名搜索你的bot,bot名必须以**_bot**结尾,比如zhangsan_bot
复制代码

输入用户名后,botfather会回复给你一串机器人密钥,我们要保存好,图中圈出来的部分就是密钥
23.png

接下来我们新建一个频道,公开频道或者私人频道都可以

搜索添加@get_id_bot 再将bot添加到频道中,它会回复一个负数给你,那个就是你频道的id,id格式为-100xxxxxxxxxx


我们再到浏览器打开https://my.telegram.org/,登录我们的telegram账号,注册获取一个app id和app hash,这一步就不详细写了,按流程走就行了

现在我们拥有一个机器人密钥,一个app id和一个app hash和一个频道id

然后在项目目录下新建一个名为.env的文件,注意不要忘记前面那个.

按照以下格式编辑.env文件,注意#号后面的内容不要输入到文件中:

  1. API_ID=     #这里写你的app id
  2. API_HASH=   #这里写你的app hash
  3. BOT_TOKEN=  #这里写你的机器人密钥
  4. BIN_CHANNEL=  #这里写你的频道id
  5. PORT=         #这里写你想要使用的端口号
  6. FQDN=         #这里填你的域名
  7. HAS_SSL=False  #这里是ssl选项,最好填默认的False
复制代码

编辑好后,保存,我们再在ssh内执行
  1. python3 -m WebStreamer
复制代码

现在我们只要把tg内的文件转发给我们新建的机器人,或者上传文件给机器人,机器人就会返回一条文件直链供我们下载,下载文件会经过我们的vps中转,如图
24.jpg


注册成服务,首先在当前路径下,创建WebStreamer.sh,内容如下:
  1. #!/bin/bash

  2. . ./venv/bin/activate
  3. python3 -m WebStreamer
复制代码

然后创建,并编辑对应服务:
  1. vim /etc/systemd/system/webstreamer.service
复制代码

内容如下:
  1. [Unit]
  2. Description=telegram online download
  3. Documentation=https://github.com/EverythingSuckz/TG-FileStreamBot
  4. After=network-online.target
  5. Wants=network-online.target

  6. [Service]
  7. Type=simple
  8. User=root
  9. Group=root
  10. WorkingDirectory=/root/TG-FileStreamBot
  11. ExecStart=/usr/bin/bash WebStreamer.sh
  12. Restart=always

  13. [Install]
  14. WantedBy=multi-user.target
复制代码
最后启动服务:
  1. systemctl start webstreamer
复制代码
注意:上面的图片链接资源没有保存在你的服务器。链接也会在一定的时间内失效的,想下载,要尽快





欢迎光临 黑帽联盟 (https://bbs.cnblackhat.com/) Powered by Discuz! X2.5