ShellDroid는 안드로이드용 전문가급 SSH 클라이언트입니다. 오픈 소스이며, 광고가 없고, 사용자 추적이나 원격 측정 데이터가 없습니다. 사용자의 데이터는 기기 외부로 유출되지 않습니다.
JNI + mbedTLS 기반의 네이티브 libssh 라이브러리를 사용하여 개발되었으며, Java 래퍼를 사용하지 않습니다. 네이티브 수준의 성능을 제공하는 진정한 SSH 연결을 지원합니다.
연결 방법
- 빠른 연결: user@host:port를 입력하면 즉시 연결됩니다. 연결을 저장하거나 임시로 사용
- 암호 및 공개 키(RSA, Ed25519, ECDSA)를 이용한 인증
- 개별 호스트 관리자를 통한 최초 사용 시 신뢰(TOFU) 기능
- 연결 시 자격 증명 선택: 일회성 암호 또는 저장된 ID
- 실시간 상태: 세션 활성 시 녹색 표시
터미널
- Jetpack Compose를 사용하는 네이티브 터미널 (WebView 미지원)
- 2열 해커 키보드: ESC, 화살표 키, 고정 Ctrl/Alt, F1-F12 키
- 스니펫: 탭 한 번으로 실행 가능한 저장된 명령
- 자동 명령: 연결 시 명령 자동 실행
- 볼륨 키를 이용한 확대/축소
- 터미널이 열려 있는 동안 화면 유지
포트 포워딩
- 로컬(ssh -L): SSH 채널을 통한 직접 TCP 터널
- 동적(ssh -D): SSH를 통한 전체 SOCKS5 프록시, RFC 1928 핸드셰이크
- 자동 연결: 포워더가 자동으로 연결됩니다. SSH가 활성화되지 않은 경우 비활성화됩니다.
보안
- 키와 비밀번호는 AES-256-GCM으로 암호화됩니다(Google Tink + Android Keystore).
- 비밀 정보는 사용 후 즉시 메모리에서 삭제됩니다.
- 지문, PIN 또는 기기 패턴(BiometricPrompt)으로 앱을 잠글 수 있습니다.
- 자동 잠금 시간 설정 가능: 즉시, 1분/5분/15분 또는 시스템 잠금 시간과 동일하게 설정할 수 있습니다.
- 클라우드 백업을 사용하지 않습니다. 사용자 자격 증명은 동기화되거나 추출되지 않습니다.
인터페이스
- Material 3 디자인, Abyss 및 Solarized Dark 테마 지원(16색 ANSI 팔레트)
- 다크/라이트 모드 지원(시스템 또는 사용자 지정)
- 스페인어 및 영어 지원
- 포그라운드 서비스: 세션은 백그라운드에서 알림, 타이머 및 빠른 작업과 함께 유지됩니다.
- 탭 한 번으로 호스트, ID, 스니펫 또는 포워딩을 복제할 수 있습니다.
광고 없음. 분석 도구 없음. Firebase 없음. 불필요한 권한 요구 없음. 오직 SSH 연결만 사용합니다.