Skip to content

A simple ctf pad based on codimd and rocket.chat. To make communication easier!

Notifications You must be signed in to change notification settings

cloudyu/chatto-pad

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

chatto-pad

A simple ctf pad based on codimd and rocket.chat. To make communication easier!

chatto demo

构成

在线编辑器 codimd 协作聊天 rocket.chat 前端 chatto-front 后端 chatto-bakend

网络

配置

codimd

修改 docker-compose.yml中为 backend 的地址

      - CMD_OAUTH2_TOKEN_URL=http://chatto:8000/codimd/token
      - CMD_OAUTH2_AUTHORIZATION_URL=https://chatto.cloudyu.me/codimd/auth
      # 上面这行需要修改 !!!!
      - CMD_OAUTH2_USER_PROFILE_URL=http://chatto:8000/codimd/profile

如果内网连通. CMD_OAUTH2_TOKEN_URLCMD_OAUTH2_USER_PROFILE_URL 可以填内网地址. CMD_OAUTH2_AUTHORIZATION_URL 一定要填外网的

rocket.chat

docker-compose up 手工配置 需要注册管理员账号 进行如下配置

添加管理者权限

/admin/permissions

  1. 新建一个 manager 角色, 并授予给期望拥有建立pad权限的人
  2. 新建一个 bot 角色, 点上add-user-to-joined-room, archive-room, create-p, set-owner, unarchive-room, view-full-other-user-info /admin/users
  3. 创建一个bot 用户 授予 bot 角色. 密码建议随机化! /admin/oauth-apps
  4. 添加一个应用, 类似下面的配置 admin/General
  5. 设置 iframe 集成

chatto backend

配置 settings.py

CHATTO_PAD = {
    'OAUTH': {
        'SERVER_URL_EXT': 'https://chat.cloudyu.me',   # 外站
        'SERVER_URL_INT': 'http://rocketchat:3000',      # 内部
        "CALLBACK_URL": 'https://chatto.cloudyu.me/%23/callback',
        'CLIENT_ID': 'CLIENT_ID',
        'CLIENT_SECRET': 'CLIENT_SECRETCLIENT_SECRET',
    },
    'ROCKET_CHAT': {
        'MANAGER_ROLE': 'manager',                  # 可以添加pad 权限
    },
    'CODIMD': {
        'SERVER_URL_EXT': 'https://codimd.cloudyu.me',  # 外部链接
        'SERVER_URL_INT': 'http://codimd:3000',  		# 内网链接
    }, 
    'ROCKET': RocketChat('chatto-bot', 'password', 'http://rocketchat:3000')
}

OAUTH 中的 CLIENT 需要管理员在 rocket.chat 中申请. 回调注意要统一 MANAGER_ROLE 需要在 手动建立这个名字的权限. 并授予给用户. 如果填写 'user' 代表任何人都可以新建 pad

chatto front

配置 src/Config.vue

const codimd = 'https://codimd.cloudyu.me/'
const chat = 'https://chat.cloudyu.me/group/'
const apiServer = 'https://chatto.cloudyu.me/'
const wsServer = 'wss://chatto.cloudyu.me/ws/'

全部地址都需要外网可以访问

nginx

自行配置好ssl证书. 域名

build

配置好后 各种docker-compose up -d 就ok

About

A simple ctf pad based on codimd and rocket.chat. To make communication easier!

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published