Ato Meet 관리자

Ato Meet 관리자 매뉴얼

관리자 페이지(https://meet.ato.ai.kr/admin)에서 회의 서비스 운영에 필요한 모든 작업을 합니다. 이 문서는 서비스 관리자를 위한 안내입니다.

1. 개요

구분주소설명
회의 (사용자)https://meet.ato.ai.kr/회의실이름참가자가 인증번호를 입력하고 입장
관리자 페이지https://meet.ato.ai.kr/admin로그인 후 서비스 관리
매뉴얼/manual/user.html, /manual/admin.html이 문서

시스템 구성: 참가자 간 영상·음성은 WebRTC 로 직접(P2P) 전송되고, 서버는 입장 관리·시그널링·채팅·인증만 담당합니다. 방화벽 뒤 참가자를 위해 서버에 TURN(중계) 서버가 함께 동작합니다.

2. 관리자 로그인

  1. https://meet.ato.ai.kr/admin 접속
  2. 아이디 admin, 설치 시 정한 비밀번호 입력 (설치 정보는 서버의 C:\AtoMeet\설치정보.txt 에 기록됨)
  3. 로그인 상태는 8시간 유지되며, "로그아웃" 버튼으로 종료합니다.
5회 연속 실패하면 해당 IP 는 5분간 로그인이 잠깁니다. 비밀번호가 기본값(admin1234)이면 대시보드 상단에 경고가 표시되니 즉시 변경하세요.

3. 대시보드 보기

로그인하면 3초마다 자동 갱신되는 상태 타일이 보입니다.

타일의미
회의 서비스ON: 입장 가능 / OFF: 새 입장 차단 상태
접속 참가자현재 모든 회의실의 참가자 합계
진행 중 회의실참가자가 1명 이상 있는 회의실 수
가동 시간서버 프로세스가 시작된 뒤 경과 시간
메모리 / PIDNode 프로세스 메모리 사용량, 프로세스 ID, Node 버전
TURN중계 서버 주소와 방식(내장/외부). "사용 안 함"이면 방화벽 뒤 참가자 연결이 실패할 수 있음

4. 서버 제어

버튼동작사용 시점
▶ 서비스 시작참가자 입장을 허용합니다.점검 후 재개
■ 서비스 중지새 입장을 차단하고 진행 중인 모든 회의를 종료합니다. 관리자 페이지는 계속 사용할 수 있습니다.점검, 비상 차단
모든 회의 종료모든 참가자 연결을 끊습니다. 서비스는 ON 으로 유지되어 바로 다시 입장할 수 있습니다.회의 시간 종료, 정리
↻ 서버 재시작Node 프로세스를 스스로 재시작합니다(약 5초). 모든 참가자가 끊기고, 재시작이 끝나면 관리자 페이지가 자동으로 새로고침됩니다.설정 파일(config.json) 변경 적용, 이상 동작 시
서비스 상태(ON/OFF)는 저장되므로 서버를 재시작해도 유지됩니다. OFF 상태로 재시작하면 계속 OFF 입니다.

5. 접속 관리

진행 중인 회의실별로 참가자 목록이 표시됩니다.

열내용
이름참가자가 입력한 표시 이름
상태✋ 손 들기 / 🎤 마이크 켜짐 · 🔇 꺼짐 / 📷 카메라 켜짐 · 🚫 꺼짐 / 🖥️ 화면 공유 중
입장입장 시각과 경과 시간
IP참가자 접속 IP (문제 추적용)

6. 초대 메일 발송

  1. 받는 사람 이메일을 입력합니다. 쉼표, 세미콜론, 줄바꿈으로 여러 명을 구분하며 한 번에 최대 20명입니다.
  2. 회의실 이름을 입력합니다(기본 ato). 진행 중인 회의실은 목록에서 고를 수 있습니다. 아직 없는 이름을 적어도 되며, 첫 참가자가 들어가면 자동으로 만들어집니다.
  3. 보내는 사람 표시 이름과 안내 메시지(회의 일시 등)를 선택적으로 적고 📧 초대 메일 발송을 누릅니다.

메일 내용: 회의실 이름, 참가 주소(https://meet.ato.ai.kr/회의실), 현재 인증번호, "회의 참여하기" 버튼, 참가 방법 안내. 받는 사람은 숨은 참조(BCC)로 들어가 서로 보이지 않습니다.

초대 메일에는 발송 시점의 인증번호가 들어갑니다. 발송 후 인증번호를 바꾸면 메일의 번호로는 입장할 수 없으니 다시 보내야 합니다.

회의에 참여 중인 사용자도 회의 화면 상단의 📧 초대 버튼으로 같은 메일을 보낼 수 있습니다(IP 당 시간당 20회 제한).

7. 이메일(SMTP) 설정

초대 메일을 보내려면 발송용 메일 계정이 필요합니다. 설치 시 기본값(Gmail, admin@neshop.kr)이 들어 있으며 관리자 페이지에서 바꿀 수 있습니다.

항목Gmail 예시설명
SMTP 서버smtp.gmail.com메일 서비스의 발신 서버 주소
포트465465(SSL) 또는 587(STARTTLS)
SSL 사용체크465 포트는 체크, 587 포트는 해제
계정(아이디)admin@neshop.kr로그인 계정
비밀번호앱 비밀번호 16자리Gmail 은 계정 비밀번호가 아니라 앱 비밀번호를 써야 합니다. 비워두고 저장하면 기존 값이 유지됩니다.
보내는 주소 / 이름admin@neshop.kr / Ato Meet받는 사람에게 표시될 발신자. Gmail 은 계정 주소 또는 등록된 별칭만 허용
  1. 값을 입력하고 저장
  2. 테스트 수신 이메일(본인 주소)을 적고 테스트 메일 발송 → "테스트 메일을 보냈습니다"가 뜨고 받은편지함에 도착하면 정상
Gmail 앱 비밀번호 만들기: Google 계정 → 보안 → 2단계 인증 켜기 → "앱 비밀번호" → 앱 이름 입력 → 생성된 16자리를 비밀번호 칸에 입력. 발송 한도는 Gmail 일반 계정 기준 하루 약 500통입니다.

8. 설정 (인증번호·인원·비밀번호)

항목설명
회의 인증번호참가자 입장에 필요한 번호(4~32자). 변경 즉시 모든 참가자의 기존 인증이 무효가 되어, 다음 접속 때 새 번호를 입력해야 합니다. 진행 중인 회의는 끊기지 않습니다. 정기적으로 바꾸거나, 특정인의 재입장을 막을 때 사용합니다.
회의실 최대 인원회의실 하나당 최대 참가자 수(2~50). P2P 방식 특성상 8명 이하를 권장합니다. 인원이 많으면 각 참가자 PC 의 업로드 대역폭과 CPU 부담이 커집니다.
관리자 비밀번호 변경현재 비밀번호와 새 비밀번호(8자 이상)를 입력합니다. 변경해도 현재 로그인은 유지됩니다.

9. 이벤트 로그

최근 100건의 이벤트가 최신순으로 표시됩니다(서버 메모리에 300건 보관, 재시작 시 초기화).

유형내용
join / leave참가자 입장·퇴장 (이름, 회의실, 인원, IP)
auth / auth-fail인증번호 확인 성공·실패 (IP). 실패가 반복되면 외부 시도일 수 있습니다.
admin / admin-fail관리자 로그인·실패, 설정 변경, 퇴장, 서비스 ON/OFF, 재시작, SMTP 테스트
invite / invite-fail초대 메일 발송 건수·실패 원인
server서버 시작

영구 로그는 서버의 C:\AtoMeet\logs\server.log 에 기록됩니다.

10. 서버 운영 (Windows)

서버 PC(Windows 11)에는 두 개의 작업이 부팅 시 자동 실행되도록 등록되어 있습니다.

작업 이름역할
AtoMeet-ServerNode 서버 (회의, 관리자, 시그널링, 내장 TURN)
AtoMeet-CaddyHTTPS 처리(Let's Encrypt 인증서 자동 발급·갱신)와 리버스 프록시

관리자 PowerShell 에서 사용하는 명령:

Get-ScheduledTask AtoMeet-*                                   # 상태 확인
Stop-ScheduledTask AtoMeet-Server; Start-ScheduledTask AtoMeet-Server   # 서버 재시작
Get-Content C:\AtoMeet\logs\server.log -Tail 50               # 서버 로그
Get-Content C:\AtoMeet\logs\caddy.log -Tail 50                # HTTPS/인증서 로그
파일/폴더내용
C:\AtoMeet\config.json포트, STUN/TURN, 초기 인증번호·비밀번호(최초 1회만 사용). 수정 후 "서버 재시작" 필요
C:\AtoMeet\data\state.json현재 인증번호, 관리자 비밀번호(해시), 서비스 상태, SMTP 설정. 재설치해도 유지됨
C:\AtoMeet\설치정보.txt설치 시 정한 값 요약
C:\AtoMeet\Caddyfile도메인과 HTTPS 설정

업데이트/재설치: 새 AtoMeet-Setup.exe 를 서버에서 실행하면 됩니다. 실행 중인 서비스를 멈추고 기존 설치를 모두 삭제한 뒤 새로 설치하며, 인증번호와 관리자 비밀번호를 다시 묻습니다. 기존 data\state.json(인증번호·비밀번호·SMTP)과 설정 파일은 C:\AtoMeet-backup-날짜\ 에 자동 백업됩니다. 기존 설정을 그대로 쓰려면 관리자 PowerShell 에서 .\AtoMeet-Setup.exe -KeepData 로 실행하세요.

방화벽/포트: 80, 443 (TCP), 3478 (UDP), 49152-49400 (UDP). 공유기 뒤라면 이 포트들을 서버 PC 로 포트포워딩해야 합니다.

11. 비밀번호 분실·초기화

  1. 서버 PC 에서 C:\AtoMeet\data\state.json 을 다른 곳에 백업한 뒤 삭제합니다. (SMTP 설정과 인증번호도 함께 초기화됩니다)
  2. C:\AtoMeet\config.json 에 "adminPassword": "새비밀번호", "accessCode": "새인증번호" 를 적습니다.
  3. 서버를 재시작합니다: Stop-ScheduledTask AtoMeet-Server; Start-ScheduledTask AtoMeet-Server
  4. 새 비밀번호로 로그인한 뒤 config.json 의 평문 비밀번호는 지워도 됩니다(이미 state.json 에 해시로 저장됨).

12. 보안 권장 사항

13. 자주 묻는 질문

Q. 외부 참가자가 "연결 실패(⚠️)"라고 합니다.
대시보드의 TURN 타일이 "사용 안 함"이면 TURN 이 꺼진 것입니다. 서버의 config.json 에서 turn.enabled: true 로 두고 재시작하세요. 공유기 뒤라면 3478/UDP 와 49152-49400/UDP 포트포워딩을 확인하세요.
Q. 인증번호 없이 들어올 수 있게 하고 싶습니다.
현재 버전은 항상 인증번호를 요구합니다. 대신 인증은 12시간 유지되므로 고정 참가자는 하루 한 번만 입력하면 됩니다.
Q. 회의 내용이 서버에 저장되나요?
아니요. 영상·음성·채팅은 저장되지 않습니다. 서버에는 입장/퇴장 등 이벤트 로그만 남습니다.
Q. 동시에 몇 명까지 가능한가요?
회의실당 설정값(기본 12명)까지 입장할 수 있으나 P2P 구조상 8명 이하를 권장합니다. 회의실 수에는 제한이 없습니다.
Q. 도메인이나 서버 IP 가 바뀌면?
DNS 를 새 IP 로 바꾸고, 서버의 Caddyfile 과 config.json(turn.host)을 수정한 뒤 두 작업을 재시작합니다. 또는 설치 파일을 새 값으로 다시 실행합니다.