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. 관리자 로그인
https://meet.ato.ai.kr/admin접속- 아이디
admin, 설치 시 정한 비밀번호 입력 (설치 정보는 서버의C:\AtoMeet\설치정보.txt에 기록됨) - 로그인 상태는 8시간 유지되며, "로그아웃" 버튼으로 종료합니다.
3. 대시보드 보기
로그인하면 3초마다 자동 갱신되는 상태 타일이 보입니다.
| 타일 | 의미 |
|---|---|
| 회의 서비스 | ON: 입장 가능 / OFF: 새 입장 차단 상태 |
| 접속 참가자 | 현재 모든 회의실의 참가자 합계 |
| 진행 중 회의실 | 참가자가 1명 이상 있는 회의실 수 |
| 가동 시간 | 서버 프로세스가 시작된 뒤 경과 시간 |
| 메모리 / PID | Node 프로세스 메모리 사용량, 프로세스 ID, Node 버전 |
| TURN | 중계 서버 주소와 방식(내장/외부). "사용 안 함"이면 방화벽 뒤 참가자 연결이 실패할 수 있음 |
4. 서버 제어
| 버튼 | 동작 | 사용 시점 |
|---|---|---|
| ▶ 서비스 시작 | 참가자 입장을 허용합니다. | 점검 후 재개 |
| ■ 서비스 중지 | 새 입장을 차단하고 진행 중인 모든 회의를 종료합니다. 관리자 페이지는 계속 사용할 수 있습니다. | 점검, 비상 차단 |
| 모든 회의 종료 | 모든 참가자 연결을 끊습니다. 서비스는 ON 으로 유지되어 바로 다시 입장할 수 있습니다. | 회의 시간 종료, 정리 |
| ↻ 서버 재시작 | Node 프로세스를 스스로 재시작합니다(약 5초). 모든 참가자가 끊기고, 재시작이 끝나면 관리자 페이지가 자동으로 새로고침됩니다. | 설정 파일(config.json) 변경 적용, 이상 동작 시 |
5. 접속 관리
진행 중인 회의실별로 참가자 목록이 표시됩니다.
| 열 | 내용 |
|---|---|
| 이름 | 참가자가 입력한 표시 이름 |
| 상태 | ✋ 손 들기 / 🎤 마이크 켜짐 · 🔇 꺼짐 / 📷 카메라 켜짐 · 🚫 꺼짐 / 🖥️ 화면 공유 중 |
| 입장 | 입장 시각과 경과 시간 |
| IP | 참가자 접속 IP (문제 추적용) |
- 퇴장: 해당 참가자만 내보냅니다. 참가자 화면에 "관리자에 의해 연결이 종료되었습니다"가 표시되고 3초 후 첫 화면으로 이동합니다. 인증번호가 그대로면 다시 들어올 수 있으니, 재입장을 막으려면 인증번호를 변경하세요.
- 회의 종료: 그 회의실의 모든 참가자를 내보냅니다.
- 열기 ↗: 관리자 본인이 그 회의실에 들어갑니다(관리자 로그인 상태면 인증번호 없이 입장 가능).
6. 초대 메일 발송
- 받는 사람 이메일을 입력합니다. 쉼표, 세미콜론, 줄바꿈으로 여러 명을 구분하며 한 번에 최대 20명입니다.
- 회의실 이름을 입력합니다(기본
ato). 진행 중인 회의실은 목록에서 고를 수 있습니다. 아직 없는 이름을 적어도 되며, 첫 참가자가 들어가면 자동으로 만들어집니다. - 보내는 사람 표시 이름과 안내 메시지(회의 일시 등)를 선택적으로 적고 📧 초대 메일 발송을 누릅니다.
메일 내용: 회의실 이름, 참가 주소(https://meet.ato.ai.kr/회의실), 현재 인증번호, "회의 참여하기" 버튼, 참가 방법 안내. 받는 사람은 숨은 참조(BCC)로 들어가 서로 보이지 않습니다.
회의에 참여 중인 사용자도 회의 화면 상단의 📧 초대 버튼으로 같은 메일을 보낼 수 있습니다(IP 당 시간당 20회 제한).
7. 이메일(SMTP) 설정
초대 메일을 보내려면 발송용 메일 계정이 필요합니다. 설치 시 기본값(Gmail, admin@neshop.kr)이 들어 있으며 관리자 페이지에서 바꿀 수 있습니다.
| 항목 | Gmail 예시 | 설명 |
|---|---|---|
| SMTP 서버 | smtp.gmail.com | 메일 서비스의 발신 서버 주소 |
| 포트 | 465 | 465(SSL) 또는 587(STARTTLS) |
| SSL 사용 | 체크 | 465 포트는 체크, 587 포트는 해제 |
| 계정(아이디) | admin@neshop.kr | 로그인 계정 |
| 비밀번호 | 앱 비밀번호 16자리 | Gmail 은 계정 비밀번호가 아니라 앱 비밀번호를 써야 합니다. 비워두고 저장하면 기존 값이 유지됩니다. |
| 보내는 주소 / 이름 | admin@neshop.kr / Ato Meet | 받는 사람에게 표시될 발신자. Gmail 은 계정 주소 또는 등록된 별칭만 허용 |
- 값을 입력하고 저장
- 테스트 수신 이메일(본인 주소)을 적고 테스트 메일 발송 → "테스트 메일을 보냈습니다"가 뜨고 받은편지함에 도착하면 정상
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-Server | Node 서버 (회의, 관리자, 시그널링, 내장 TURN) |
AtoMeet-Caddy | HTTPS 처리(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. 비밀번호 분실·초기화
- 서버 PC 에서
C:\AtoMeet\data\state.json을 다른 곳에 백업한 뒤 삭제합니다. (SMTP 설정과 인증번호도 함께 초기화됩니다) C:\AtoMeet\config.json에"adminPassword": "새비밀번호","accessCode": "새인증번호"를 적습니다.- 서버를 재시작합니다:
Stop-ScheduledTask AtoMeet-Server; Start-ScheduledTask AtoMeet-Server - 새 비밀번호로 로그인한 뒤 config.json 의 평문 비밀번호는 지워도 됩니다(이미 state.json 에 해시로 저장됨).
12. 보안 권장 사항
- 설치 직후 관리자 비밀번호를 기본값에서 변경하세요.
- 회의 인증번호는 주기적으로(예: 매주 또는 회의 종료 후) 바꾸세요. 바꾸면 이전 번호를 아는 사람은 들어올 수 없습니다.
- 이벤트 로그에
auth-fail,admin-fail이 반복되면 IP 를 확인하고 인증번호를 변경하세요. - 관리자 페이지는 반드시 HTTPS(
https://meet.ato.ai.kr/admin)로 접속하세요. - Gmail 앱 비밀번호는 다른 용도로 재사용하지 말고, 유출 의심 시 Google 계정에서 폐기 후 재발급하세요.
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)을 수정한 뒤 두 작업을 재시작합니다. 또는 설치 파일을 새 값으로 다시 실행합니다.