Gimotty가 서버를 지키는 방법
Gimotty는 일부러 명령을 실행하는 도구이지 샌드박스가 아닙니다. 그 힘을 사용자 손에 두기 위해 무엇을 하는지, 그리고 무엇을 약속하지 않는지 이 페이지에 그대로 적습니다.
SSH 암호화는 OpenSSH가 맡습니다
- Gimotty는 Windows에 들어 있는 OpenSSH 클라이언트를 실행합니다. 암호화를 직접 구현하지 않습니다.
- 사용자·시스템 SSH 설정을 읽지 않으므로 물려받은
ProxyCommand,Match exec, 신뢰 설정 덮어쓰기가 실행되지 않습니다. 점프 호스트의 모든 단계에 같은 정책을 임시 전용 설정으로 적용합니다. - 자체
known_hosts를 씁니다. 데스크톱 탭은 새 호스트 키를 확인받고 바뀐 키는 거부합니다. MCP와exec는 묻지 않고, SHA256 지문을 맞춰 미리 신뢰한 키만 받습니다.
비밀번호는 암호화하고 AI가 닿지 않게
- 보관함은 마스터 암호에서 Argon2id(64MiB, 3회)로 만든 키로 암호화한 XChaCha20-Poly1305 암호문 하나입니다. 매개변수를 약하게 바꾸면 복호화에 실패합니다.
- 저장한 비밀번호는 그 세션의 프롬프트(SSH는 그
user@host가 적힌 프롬프트)가 물을 때, 접속 후 60초 안에, 한 번만 입력합니다. 점프 호스트나sudo에는 가지 않습니다. - 어시스턴트, MCP 서버,
exec는 보관함을 읽지 않습니다. 세션 로그에는[saved password sent]만 남습니다.
AI는 승인이 있을 때만 움직입니다
- 묻지 않고 하는 일은 조회뿐입니다. 접속, 입력, 명령, 파일 읽기·쓰기는 모두 승인을 기다리고 5분이 지나면 끝납니다.
- 도구 출력과 파일 내용은 믿을 수 없는 데이터로 다루고, 지시로 받아들이지 않습니다. 여러 겹의 방어 중 하나일 뿐, 프롬프트 주입을 완전히 막는다고 약속할 수 있는 소프트웨어는 없습니다.
- 모델과의 통신은 HTTPS입니다(루프백과 허용한 사설망 주소는 예외). 리다이렉트는 거부하고, 자격 증명이 담길 수 있는 공급자 오류 본문은 보여 주지 않습니다.
MCP 권한은 실행하는 사람이 정합니다
- 시작 옵션(
--allow-connect,--allow-write,--allow-local)이 모든 것의 상한입니다. 도구 인자로 넓힐 수 없습니다. - 폴더와 세션을 AI에게 숨기거나 조회만 허용할 수 있습니다.
--allow-local이 없으면 파일 도구는 PC의 임의 파일을 읽거나 덮어쓸 수 없습니다.
모든 기록은 내 PC 안에
- 감사 기록은 접속, 입력, 명령, 파일 호출을 결과와 함께 남기며, 거부되거나 시간이 지난 승인도 남깁니다.
- 파일은 원자적으로 저장합니다. 세션 저장은 잠금을 걸고, 다른 곳에서 바뀐 내용을 덮어쓰지 않습니다.
- Unix 설정 파일은 소유자만 읽습니다. Windows에 저장한 API 키는 현재 계정의 DPAPI로 보호합니다.
Gimotty는 시킨 곳하고만 통신합니다
- 계정 없음, 사용 통계 전송 없음, 자동 업데이트 확인 없음, Gimotty 클라우드 없음.
- 라이선스 활성화는 오프라인입니다. 기기 ID는 Windows 설치 ID로 만든 단방향 다이제스트이며 하드웨어 일련번호, 사용자 이름, MAC 주소가 들어 있지 않습니다.
- 연결하는 곳은 내 서버, 내 프록시, 내가 설정한 모델 주소뿐입니다.
- 대화는 메모리에 두고 디스크에 쓰지 않습니다.
약속하지 않는 것
- Gimotty는 샌드박스가 아닙니다. 명령은 사용자 권한이나 서버 계정 권한으로 실행됩니다.
- 외부 보안 감사는 아직 받지 않았습니다.
- 얼리 액세스 빌드는 아직 Authenticode 서명이 없습니다. 내려받은 파일과 함께 오는 SHA-256 파일로 확인하세요.
- 취소한 명령이라도 서버에서 떨어져 나간 프로세스는 남을 수 있습니다.