브라우저 기반 xterm.js 터미널을 통해 모든 터미널 프로그램을 웹으로 공유하는 명령줄 도구입니다.
butlerx/wetty
HTTP/HTTPS로 제공되며 xterm.js와 WebSockets를 기반으로 하는 브라우저용 터미널 에뮬레이터입니다.
- 스타
- 5,479
- 포크
- 770
- 열린 이슈
- 15
- 마지막 커밋
- 7일 전
어떤 프로젝트인가요?
WeTTY를 사용하면 브라우저에서 셸을 실행할 수 있습니다. Node.js 서버가 xterm.js 터미널 페이지를 제공하고, WebSockets를 통해 입력과 출력을 로컬 셸 또는 SSH 서버로 전달합니다. Ajaxterm이나 Anyterm 같은 이전 브라우저 터미널과 달리 Ajax 폴링 대신 WebSockets를 사용해 키 입력에 대한 응답 시간을 짧게 유지합니다.
root로 실행하면 WeTTY는 /bin/login을 실행해 사용자가 사용자 이름을 입력하도록 합니다. 그 외에는 ssh를 시작해 기본적으로 localhost에 연결하며, SSH 호스트·포트·사용자 옵션으로 원격 호스트를 지정할 수 있습니다. 인증에는 비밀번호 또는 공개 키를 사용할 수 있으며, 서버에는 허용할 브라우저 Origin 목록을 명시해야 합니다. npm 패키지나 Docker 이미지로 실행하거나, HTTPS를 위해 nginx 또는 traefik 같은 리버스 프록시 뒤에 배치할 수 있습니다.
핵심 기능
- 01xterm.js를 통해 브라우저에서 완전한 터미널 에뮬레이터를 실행합니다.
- 02지연 시간이 짧은 입출력을 위해 WebSockets(Socket.IO)를 사용합니다.
- 03로컬 로그인 셸이나 원격 SSH 서버에 연결합니다.
- 04SSH 비밀번호 및 공개 키 인증을 지원합니다.
- 05허용된 Origin 목록을 요구하며, 설정 가능한 기본 경로를 제공합니다.
- 06npm 패키지와 Docker 이미지로 제공됩니다.
활용 사례
- 네이티브 SSH 클라이언트 없이 팀원에게 브라우저 기반 서버 셸 접근 권한을 제공합니다.
- 리버스 프록시 뒤에 있는 내부 머신에서 웹 터미널을 제공합니다.
- 터미널 앱이 없는 기기에서 홈 서버나 실험실 머신에 접속합니다.
빠른 시작
- 1
npm으로 WeTTY를 전역 설치합니다
npm -g i wetty - 2
허용할 브라우저 오리진을 지정해 WeTTY를 시작합니다
wetty --allowed-origin http://yourserver:3000 - 3
브라우저에서 서버 주소를 열고 로그인합니다
사용 전 알아둘 점
- node 20 이상과 make, python, build-essential 등의 빌드 도구가 필요합니다.
- 연결을 허용하려면 --allowed-origin을 명시적으로 설정해야 합니다.
- 터미널에 대한 전체 액세스를 제공하므로 HTTPS와 리버스 프록시로 보안을 강화해야 합니다.
포함된 컬렉션
토픽
자주 묻는 질문
- wetty은(는) 무엇인가요?
- HTTP/HTTPS로 제공되며 xterm.js와 WebSockets를 기반으로 하는 브라우저용 터미널 에뮬레이터입니다. WeTTY를 사용하면 브라우저에서 셸을 실행할 수 있습니다. Node.js 서버가 xterm.js 터미널 페이지를 제공하고, WebSockets를 통해 입력과 출력을 로컬 셸 또는 SSH 서버로 전달합니다. Ajaxterm이나 Anyterm 같은 이전 브라우저 터미널과 달리 Ajax 폴링 대신 WebSockets를 사용해 키 입력에 대한 응답 시간을 짧게 유지합니다.
- wetty은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- wetty은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- wetty은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. wetty의 마지막 커밋은 2026년 10월 30일입니다.
- wetty은(는) 어디에 사용할 수 있나요?
- 네이티브 SSH 클라이언트 없이 팀원에게 브라우저 기반 서버 셸 접근 권한을 제공합니다. 리버스 프록시 뒤에 있는 내부 머신에서 웹 터미널을 제공합니다. 터미널 앱이 없는 기기에서 홈 서버나 실험실 머신에 접속합니다.
- wetty는 어떻게 설치하나요?
- npm으로 WeTTY를 전역 설치합니다: npm -g i wetty 허용할 브라우저 오리진을 지정해 WeTTY를 시작합니다: wetty --allowed-origin http://yourserver:3000 브라우저에서 서버 주소를 열고 로그인합니다
- wetty은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/butlerx/wetty
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
pi 터미널 코딩 에이전트를 원격으로 제어합니다. 실시간 세션을 브라우저나 휴대폰에 미러링하고, 자체 호스팅 릴레이를 통해 메시지나 명령을 보낼 수 있습니다.
어떤 기기에서든 브라우저로 셸 세션과 AI 코딩 에이전트를 실행하고 모니터링하며 제어할 수 있습니다.
영구 세션, 파일 편집, 멀티 호스트 접속을 지원하는 클라우드 네이티브 웹 터미널 및 ACP 에이전트 작업 공간
SSH 터미널과 SFTP 파일 전송을 위한 셀프 호스팅 브라우저 워크스페이스로, 다중 사용자 계정, 패스키, OIDC, 암호화된 키 저장 기능을 제공합니다.