보안 지침

토큰 유출 방지 및 보안 수칙

봇 토큰을 안전하게 보호하고 유출 사고가 발생했을 때 신속하게 대처하는 방법을 안내합니다.

디스코드 봇 호스팅에서 가장 중요한 보안 요소는 봇 토큰(Token)의 보호입니다. 토큰이 제3자에게 노출되면 봇이 참여한 모든 서버에서 악의적인 메시지를 전송하거나 채널 및 역할을 임의로 변경할 수 있습니다. 봇을 안전하게 운영하기 위한 필수 보안 수칙을 안내합니다.


1. 환경 변수 필수 사용 및 하드코딩 금지

소스코드 파일(index.js, bot.py 등)에 토큰 문자열을 직접 작성하는 것은 매우 위험합니다.

  • 설정 방법: 대시보드의 환경 변수 메뉴에서 DISCORD_TOKEN 키로 봇 토큰을 등록하고, 코드에서는 process.env.DISCORD_TOKEN (Node.js) 또는 os.getenv("DISCORD_TOKEN") (Python)으로 불러와 사용하세요.
  • 디스호스트의 환경 변수 저장소는 안전하게 암호화되어 관리되므로 외부에 노출되지 않습니다.

2. Git 저장소 푸시 시 .gitignore 설정

GitHub 등 공개 저장소에 소스코드를 올릴 때 로컬 테스트용 .env 파일이 실수로 커밋되어 토큰이 노출되는 사고가 자주 발생합니다.

프로젝트 루트의 .gitignore 파일에 다음 항목들을 반드시 추가하여 버전 관리에서 제외하세요.

# 로컬 개발용 환경 변수 파일 제외
.env
.env.local

# Node.js 패키지 및 로그 제외
node_modules/
npm-debug.log*

# Python 가상환경 및 캐시 제외
.venv/
venv/
__pycache__/
*.pyc

3. 토큰 유출 시 응급 대처 순서

토큰이 GitHub 등에 노출되었거나 유출이 의심된다면 즉시 다음 조치를 취해야 합니다.

  1. 토큰 재발급 (Reset Token):
    • 디스코드 개발자 포털의 봇 페이지로 이동합니다.
    • Bot 탭에서 Reset Token 버튼을 누릅니다.
    • 기존 토큰이 즉시 무효화되어 외부에서의 접근이 차단됩니다.
  2. 대시보드 환경 변수 수정:
    • 새로 발급받은 토큰을 복사합니다.
    • 디스호스트 대시보드의 환경 변수 탭에서 DISCORD_TOKEN 값을 새 토큰으로 교체하고 저장합니다.
  3. 봇 재시작:
    • 콘솔 화면에서 재시작 (Restart) 버튼을 눌러 새 토큰으로 봇을 다시 실행합니다.