
기술 탁상 훈련 시뮬레이션 프레임워크
T3SF는 마스터 시나리오 이벤트 목록(MSEL)을 기반으로 이벤트를 오케스트레이션하기 위한 모듈식 구조를 제공하는 프레임워크로, 각 훈련에 대해 정의된 규칙 집합(선택 사항)과 해당 플랫폼의 매개변수를 정의할 수 있는 구성을 함께 제공합니다. 메인 모듈은 특정 모듈(Discord, Slack, Telegram 등)과의 통신을 수행하여 이벤트를 각 플랫폼의 입력 채널에 인젝트로 제시할 수 있게 합니다. 또한 프레임워크는 '단일 조직, 여러 영역', '여러 조직, 단일 영역', '여러 조직, 여러 영역'과 같은 다양한 사용 사례를 지원합니다.
원하는 플랫폼(Slack 또는 Discord)에서 프레임워크를 사용하려면 해당 플랫폼에 필요한 모듈을 설치해야 합니다. 하지만 걱정하지 마세요. 이 모듈 설치는 쉽고 간단합니다.
이를 위해 간단한 단계별 가이드를 따르거나, 이미 pip로 패키지를 설치하는 데 익숙하다면 마지막 단계로 건너뛰어도 됩니다!
# Python 3.6+ 필요
python -m venv .venv # Python 가상 환경 생성
source .venv/bin/activate # 가상 환경 활성화
pip install -U pip # pip 업그레이드
Python 가상 환경을 생성하고 활성화한 후, 다음 명령을 실행하여 원하는 플랫폼에 T3SF 프레임워크를 설치할 수 있습니다:
pip install "T3SF[Discord]" # Discord와 함께 프레임워크 설치
또는
pip install "T3SF[Slack]" # Slack과 함께 프레임워크 설치
이렇게 하면 선택한 플랫폼에 필요한 종속성과 함께 T3SF 프레임워크가 설치됩니다. 설치가 완료되면 원하는 플랫폼에서 프레임워크 사용을 시작할 수 있습니다.
Read The Docs에서 플랫폼별 가이드를 따르는 것을 강력히 권장합니다! 다음은 링크입니다:
우리는 이 프레임워크를 모든 작업을 단순화하기 위해 만들었습니다!
$ docker run --rm -t --env-file .env -v $(pwd)/MSEL.json:/app/MSEL.json base4sec/t3sf:slack
.env 파일 안에 SLACK_BOT_TOKEN 및 SLACK_APP_TOKEN 토큰을 제공해야 합니다. 자세한 내용은 여기에서 확인하세요.
설정해야 할 또 다른 환경 변수는 MSEL_PATH입니다. 이 변수는 MSEL이 위치한 경로를 프레임워크에 알려줍니다. 기본적으로 컨테이너 경로는 /app/MSEL.json입니다. 볼륨의 마운트 위치를 변경한 경우 변수도 변경하십시오.
$ docker run --rm -t --env-file .env -v $(pwd)/MSEL.json:/app/MSEL.json base4sec/t3sf:discord
모든 준비가 완료되면 main.py를 위한 템플릿을 사용하거나 다음 코드를 수정하십시오:
다음은 Discord 봇과 GUI로 프레임워크를 실행하려는 경우의 예시입니다.
from T3SF import T3SF
import asyncio
async def main():
await T3SF.start(MSEL="MSEL_TTX.json", platform="Discord", gui=True)
if __name__ == '__main__':
asyncio.run(main())
또는 GUI 없이 대신 Slack으로 프레임워크를 실행하려면 인수를 수정하기만 하면 됩니다! 네, 그렇게 간단합니다!
await T3SF.start(MSEL="MSEL_TTX.json", platform="Slack", gui=False)
더 많은 도움이 필요하면 언제든지 여기에서 문서를 확인하세요!
.env 파일 안에 DISCORD_TOKEN 토큰을 제공해야 합니다. 자세한 내용은 여기에서 확인하세요.
설정해야 할 또 다른 환경 변수는 MSEL_PATH입니다. 이 변수는 MSEL이 위치한 경로를 프레임워크에 알려줍니다. 기본적으로 컨테이너 경로는 /app/MSEL.json입니다. 볼륨의 마운트 위치를 변경한 경우 변수도 변경하십시오.