termal.in

← 소식

내부 사이트: 어느 브라우저에서든 사설 대시보드에 닿기

v0.1.49

어떤 것들은 오직 내 사설 네트워크만 닿을 수 있는 곳에 있습니다 — Grafana 대시보드, 라우터의 관리 페이지, Home Assistant, Portainer, 서버의 localhost에서 도는 앱 같은 것들이죠. 지금까지는 다른 곳에서 이런 것을 열려면 포트 포워딩이나 VPN, 또는 리버스 프록시가 필요했습니다. 이번 릴리스는 내부 사이트를 더합니다. Connector를 그 서비스에 가리키면 나만의 사설 웹 주소가 생깁니다.

어느 브라우저에서든 사설 앱 열기 — 포트 포워딩 없이

Connector를 그것이 닿을 수 있는 웹 서비스에 — localhost나 사설 주소 위의 무엇이든 — 가리키면, Termalin이 그 자체 주소 https://<10자>.termal.ink를 부여합니다. 서버에는 아무것도 열리지 않고 포워딩되는 포트도 없습니다. Connector가 바깥으로 연결하기 때문입니다. Linux, Windows, macOS의 Connector 모두 이렇게 할 수 있고, Connector 자신의 localhost에서 도는 앱은 Windows와 macOS에서도 작동합니다.

대부분의 앱은 그쪽에서 바꿀 것이 없습니다. WebSocket도 그대로 지나가므로 실시간 패널과 실시간 업데이트가 LAN에서처럼 동작하고, 안쪽 앱이 자체 서명 인증서로 HTTPS를 쓴다면 ‘내부 사이트가 https를 사용함’을 켜세요. 방문자의 주소는 X-Real-IP로 전달되므로, 알 수 없는 프록시를 거부하는 앱도 열립니다. 사설 주소만 열 수 있습니다.

시작하려면: 캐비닛에서 내부 사이트를 열고, 사이트를 추가하고, Connector를 고른 다음 서비스의 주소(예: localhost:3000)를 입력하세요. 전체 둘러보기는 내부 사이트 페이지에 있고, 이 안내가 Home Assistant와 Grafana를 단계별로 짚어 줍니다.

나만, 또는 몇 사람과 함께

사이트는 이미 로그인된 상태로 캐비닛이나 앱에서 엽니다. 다른 사람을 들이려면 24시간 또는 7일 동안 이메일로 공유하세요 — 상대는 일회용 코드로 자기 주소를 확인하며, 계정을 만들 필요가 없습니다. 언제든 접근 권한을 거두면 열려 있던 페이지가 즉시 닫힙니다.

초대 링크는 각각 내가 초대한 사람에게만 유효합니다. 다른 사람이 그 링크를 열면 “이 링크는 동작하지 않습니다”만 보이고, 이름을 붙이지 않은 사이트는 방문자에게 “내부 사이트”라고만 표시됩니다. 사이트 열기는 Pro, Team, 체험에서 되고, 공유에는 유료 요금제가 필요합니다.

이제 독립된 섹션, 편집 버튼과 함께

내부 사이트는 이제 캐비닛 메뉴에서 독립된 섹션을 가집니다. 각 사이트에는 편집 버튼이 있고, 사이트가 응답하지 않을 때는 추측하게 두는 대신 주소 점검이 이유를 설명해 줍니다.

넉넉한 한도

추가할 수 있는 사이트 수에는 상한이 없습니다. 느슨한 일일 트래픽 제동(링크당 5 GB, 계정당 20 GB)은 UTC 자정에 초기화됩니다.

Windows와 macOS 서버 백업

서버 백업은 Linux 전용이었지만, 이제 Connector를 거쳐 Windows와 macOS 서버에서도 돌아갑니다. Windows에서는 백업 도중 열려 있는 파일(데이터베이스, 메일 저장소)이, Connector의 로그인 사용자가 관리자일 때(Windows 10 1803 / Server 2019 이상) Volume Shadow Copy(볼륨 섀도 복사)에서 일관되게 복사됩니다. 그 권한이 없으면 실제 드라이브를 그대로 읽고 아카이브에 그 사실이 적힙니다 — 작동 방식 자세히 보기. macOS에서는 가장 낮은 우선순위로 묶고, macOS가 폴더를 막으면 원격 로그인 아래의 ‘원격 사용자의 전체 디스크 접근 허용’을 켜세요. 백업 양식은 각 서버 OS의 예시 경로를 보여 줍니다.

체험 백업은 Termalin 스토리지를 최대 5 GB까지 씁니다 — 유료 요금제는 전체 용량을 내줍니다. 전체 그림은 서버 백업 페이지를 참고하세요.

서버마다 다른 알림 설정

서버마다 자체 알림 설정을 둘 수 있습니다. 서버별로 계정 기본값, 사용자 지정, 끄기 중에서 고르세요 — 끄기는 알림만 멈출 뿐 그 서버의 지표는 계속 수집하므로, 시끄러운 머신 하나를 잠재우려고 모니터링 전체를 끌 필요가 더는 없습니다. 모든 임계값을 편집할 수 있습니다 — 서버가 얼마나 사라져 있어야 오프라인으로 치는지, 호스트가 CPU를 얼마나 오래 점유해도 되는지, 인증서 만료 며칠 전부터 심각으로 보는지, 그리고 inode 심각 기준까지요. 캐비닛과 앱 모두에서 — 무엇이 수집되는지는 서버 모니터링 페이지가 설명합니다.

새로운 계정 전체 알림

이제 Termalin 스토리지가 거의 찼을 때, 예약된 백업이 조용히 성공하지 못하게 됐을 때, 잔액이 내가 정한 금액 아래로 떨어졌을 때, 그리고 자동 갱신되는 스토리지 팩이 갱신되기 전에 잔액이 그 비용을 감당하지 못할 때 알림을 받습니다.

Android 앱이 준비 중입니다

Android 앱이 Google Play에 올라올 예정입니다 — 아직 출시되지는 않았습니다. iPhone과 iPad의 그 앱과 같은 앱으로, 백그라운드에 있는 동안에도 열린 세션이 연결을 유지하고, iPhone처럼 서버 알림을 받습니다.

Mac의 화면 공유 열기

앱이 이제 macOS 화면 공유의 로그인 방식을 이해하므로, Mac이 자신의 계정으로 열립니다 — Apple ID가 아니라 그 Mac의 사용자 이름과 비밀번호로요 — 웹 캐비닛에서 이미 그랬던 것처럼 말이죠.

팀 초대

이제 팀에 누군가를 추가하면 상대가 수락하는 초대가 전송됩니다. 상대는 수락할 때만 — 이메일에서, 또는 그 확인된 주소로 로그인한 캐비닛에서 — 합류하며, 그전까지는 좌석을 차지하지 않습니다. 대기 중인 초대는 목록에 표시되고 14일 후 만료됩니다. 소유자는 초대를 취소하거나 다시 보낼 수 있습니다.

AI 어시스턴트가 내부 사이트를 추가하게 하기

새 도구 세 개 — web_link_create, web_link_list, web_link_delete, 모두 합쳐 21개 — 로 연결된 어시스턴트가 나를 위해 내부 사이트를 설정할 수 있습니다. 서버 안에서만 수신 대기하는 대시보드를 공개해 달라고 하면, 내부 사이트 아래에 나타나며 앱이나 키 이름과 함께 ‘추가한 주체’가 표시됩니다. 사이트는 로그인한 나만 엽니다. 추가와 제거에는 AI에 열린 Connector에서의 전체 액세스가 필요합니다. 그 액세스가 어떻게 작동하는지는 AI 에이전트를 위한 SSH를 참고하세요.

업데이트를 받으세요.

Termalin은 스스로 업데이트됩니다. 새로 설치해도 1분이면 됩니다.

Google에서 Termalin을 선호 소스로 추가