서버 관리를 하다 보면 갑자기 스크립트를 실행해야 할 때가 있습니다. 그런데 매번 SSH 클라이언트를 열고 접속해서 명령어를 입력하는 과정이 번거롭게 느껴질 때가 있죠. OpenClaw를 사용하면 텔레그램 채팅 한 줄로 NAS나 홈 서버의 스크립트를 원격 실행하고 결과를 바로 받아볼 수 있습니다.
왜 텔레그램으로 서버를 제어하는가
스마트폰에서 언제든 서버에 명령을 내릴 수 있다는 것은 단순한 편의 이상의 의미가 있습니다. 외출 중에 홈 서버 백업 스크립트가 멈췄다는 사실을 알았을 때, SSH 앱을 열어 접속하는 것과 텔레그램에 한 줄 입력하는 것은 체감상 큰 차이입니다. OpenClaw는 AI 비서가 텔레그램과 서버 사이를 중개하기 때문에 자연어로 명령할 수 있습니다.
준비물
- OpenClaw가 설치된 Mac 또는 Linux 서버 (NAS 포함)
- 텔레그램 계정 및 OpenClaw 텔레그램 채널 연동
- 실행할 bash 스크립트 파일
- SSH 접속 대상 서버 (선택 사항: 원격 서버 제어 시)
OpenClaw 설치는 공식 문서를 참고하세요. Node.js 환경에서 npm으로 설치하며, 설치 후 openclaw 명령어로 바로 사용할 수 있습니다.
단계별 실습
1단계: 실행할 스크립트 준비
먼저 원격으로 실행할 스크립트를 서버에 준비합니다. 예시로 디스크 사용량을 확인하는 간단한 스크립트를 만들어 보겠습니다.
#!/bin/bash
# /home/user/check_disk.sh
echo "=== 디스크 사용량 ==="
df -h | grep -v tmpfs
echo ""
echo "=== 메모리 사용량 ==="
free -h
echo ""
echo "=== 실행 중인 프로세스 TOP 5 ==="
ps aux --sort=-%mem | head -6
스크립트에 실행 권한을 부여합니다.
chmod +x /home/user/check_disk.sh
2단계: OpenClaw 텔레그램 채널 연동 확인
OpenClaw 설정 파일에서 텔레그램 채널이 연결되어 있는지 확인합니다. 연동이 완료되었다면 텔레그램에서 OpenClaw 봇에게 메시지를 보내면 AI가 응답합니다.
openclaw gateway status
3단계: 텔레그램에서 스크립트 실행 요청
이제 텔레그램에서 OpenClaw 봇에게 직접 메시지를 보냅니다. AI가 이해할 수 있는 자연어로 요청하면 됩니다.
check_disk.sh 실행해줘
또는 더 구체적으로:
/home/user/check_disk.sh 실행하고 결과 알려줘
OpenClaw의 AI는 요청을 이해하고 해당 스크립트를 실행한 뒤 결과를 텔레그램으로 돌려줍니다.
4단계: SSH를 통한 원격 서버 스크립트 실행
OpenClaw가 설치된 Mac에서 NAS나 다른 서버의 스크립트를 실행하려면 SSH를 활용합니다. TOOLS.md에 SSH 접속 정보를 저장해두면 AI가 참고해서 자동으로 접속합니다.
# TOOLS.md에 추가
### NAS SSH
- Host: your-nas.domain.com
- Port: 22
- User: admin
- 접속: ssh admin@your-nas.domain.com
이후 텔레그램에서 이렇게 요청하면 됩니다.
NAS에서 backup.sh 실행하고 결과 알려줘
5단계: cron으로 정기 실행 설정
매일 특정 시간에 자동으로 스크립트를 실행하고 결과를 받고 싶다면 cron을 활용합니다.
openclaw cron add --cron '0 9 * * *' --tz Asia/Seoul --session main --system-event '매일 아침 9시: check_disk.sh를 실행하고 결과를 텔레그램으로 보고해줘'
이 명령어 하나로 매일 오전 9시에 자동으로 서버 상태를 확인하고 텔레그램으로 보고받을 수 있습니다.
실제 활용 예시
실제 운영 환경에서 활용하는 시나리오를 소개합니다.
- 백업 모니터링: 매일 새벽 백업 스크립트 실행 후 성공 여부를 텔레그램으로 보고
- 서비스 재시작: WordPress나 Node.js 서비스가 다운되었을 때 텔레그램으로 재시작 명령
- 로그 분석: 에러 로그를 AI가 분석해서 핵심 내용만 요약해서 전달
- DB 백업: mysqldump 명령어를 자연어로 요청하면 AI가 실행하고 결과 확인
응용 아이디어
기본 원리를 이해했다면 다양하게 응용할 수 있습니다.
- 조건부 실행: 디스크 사용량이 80% 이상이면 오래된 로그 파일 삭제해줘처럼 조건을 붙여서 요청
- 멀티 서버 관리: 여러 서버에 동시에 명령을 보내고 각 서버의 결과를 취합해서 보고
- 알림 연동: 스크립트 실행 결과에 따라 다른 채널(Discord, Slack)로 알림 분기
- 스케줄 체인: 첫 번째 스크립트 성공 시 두 번째 스크립트를 자동으로 실행하는 파이프라인 구성
텔레그램 한 줄로 서버를 제어할 수 있게 되면 서버 관리의 진입 장벽이 크게 낮아집니다. OpenClaw의 AI가 자연어를 이해하고 적절한 명령어로 변환해주기 때문에 복잡한 bash 문법을 외울 필요도 없습니다. 한 번 설정해두면 스마트폰만 있으면 어디서든 서버를 관리할 수 있습니다.