Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
essh — TUI를 갖춘 향상된 SSH 클라이언트 — 연결, 키, 세션 관리 | Kitploit
도구/GitHubGitHub/matthart1983/essh
Scripting & AutomationNetwork SecurityUtilities & FrameworksAuthenticationRemote Access ToolLog Analysis
GitHubmatthart1983/essh

essh

TUI를 갖춘 향상된 SSH 클라이언트 — 연결, 키, 세션 관리

저장소 보기
8751118일 전Kitploit 검토 완료
웹사이트

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

root@kitploit:~
                         ███████╗███████╗███████╗██╗  ██╗
                         ██╔════╝██╔════╝██╔════╝██║  ██║
                         █████╗  ███████╗███████╗███████║
                         ██╔══╝  ╚════██║╚════██║██╔══██║
                         ███████╗███████║███████║██║  ██║
                         ╚══════╝╚══════╝╚══════╝╚═╝  ╚═╝
                           다수의 서버를 운영하는 사람들을 위한 향상된 SSH

crates.io CI License: MIT macOS Linux

순수 Rust로 작성된 SSH 클라이언트로, 밀도 높은 Netwatch 스타일 TUI를 제공합니다. 여러 세션, 실시간 호스트 메트릭, 그리고 플릿 전체의 차이(divergence)를 터미널을 벗어나지 않고 확인할 수 있습니다.

ESSH Demo

설치

root@kitploit:~
cargo install essh

또는 macOS/Linux용 바이너리(arm64 또는 x86_64)를 Releases에서 받으세요.

소스에서 빌드:

root@kitploit:~
git clone https://github.com/matthart1983/essh && cd essh
cargo build --release        # ./target/release/essh

시작

root@kitploit:~
essh                          # 런처: 입력하여 검색, Enter로 연결
essh connect deploy@web-01    # 호스트로 바로 연결
essh workspace open prod      # 저장된 세션 묶음 복원
essh run web -- uptime        # 태그된 그룹에 명령 전파

호스트는 ~/.ssh/config에서 가져옵니다 — IdentityFile, ProxyJump, Match 포함 — 따라서 시작 전에 가져올 것이 없습니다.

키

자주 쓰는 기능은 모두 한 번의 키 입력으로 실행됩니다. 셸은 모든 Ctrl 조합을 유지하므로 Ctrl+D는 여전히 EOF를 의미하고 Ctrl+C는 여전히 인터럽트입니다.

F1 도움말F2 모니터F3 파일F4 포트 포워딩
F5 미니 모니터F6 분리F7/F8 이전/다음 세션F9 새 세션
F10 명령 메뉴

macOS에서는 기본적으로 해당 행이 밝기와 볼륨 조절로 동작합니다 — F10은 음소거입니다. fn 키를 함께 누르거나, 시스템 설정 → 키보드 → F1, F2 등을 표준 기능 키로 사용을 한 번 켜면 됩니다. 아래의 프리픽스 방식은 둘 다 필요하지 않으며 모든 환경에서 동작합니다.

그 외의 기능은 Ctrl+A를 누른 후 떼고 키를 누르면 됩니다 — s 분할, w 닫기, t 테마, 1–9 세션 이동, [/] 크기 조절. 세션 하단의 스트립에 현재 적용되는 키가 표시되므로 외울 필요가 없습니다. 프리픽스는 [session] 아래의 prefix_key로 변경할 수 있습니다.

Option/Alt 조합은 대시보드와 다른 화면에서 동작하지만, 셸에 포커스가 있는 동안에는 동작하지 않습니다 — 그때 essh는 정확히 하나의 키(프리픽스)만 사용하고 나머지는 모두 전달하므로, Alt+f는 readline의 forward-word로, Alt+.는 yank-last-argument로 유지됩니다. 세션 안에서는 기능 키 또는 프리픽스를 사용합니다.

기능

다중 세션하나의 창에서 탭과 분할, 세션별 스크롤백 및 재연결 지원.
실시간 호스트 모니터CPU, 메모리, 디스크, 네트워크 및 상위 프로세스를 백그라운드에서 샘플링하여 화면을 열 때 데이터가 준비되어 있습니다. 에이전트 불필요 — 일반 SSH exec 채널만 사용.
차이(divergence)각 호스트를 피어 그룹과 비교하여 어떤 호스트가 어떤 측면에서, 왜 다른지 알려줍니다.
파일 전송SFTP 기반의 로컬/원격 양쪽 창 브라우저.
포트 포워딩세션을 끊지 않고 포워드를 추가, 확인, 제거할 수 있습니다.
감사 및 재생구조화된 JSON 감사 로그; 세션은 재생용 asciicast로 기록됩니다.

차이(divergence)

웹 서버 40대 중 39대는 정상인데, 한 대만 커널이 다르거나 수동으로 편집된 nginx.conf를 사용하고 있다고 가정해 봅시다. 초록색 점들의 열로는 이를 구조적으로 보여줄 수 없습니다.

ESSH는 태그별로 호스트를 피어 그룹으로 묶고, 각 호스트에서 동일한 사실(fact)을 수집한 뒤 그룹의 합의(consensus)를 기준으로 각 호스트를 평가합니다:

root@kitploit:~
100.0% of 16 facet-checks agree
0 facets diverge across 0 hosts.
2 hosts have never been probed, so their facets are unknown rather than in agreement.

Fleet 화면은 이상치(outlier)와 그 주장의 근거가 되는 측면(facet)을 명시하므로, 결과는 단정이 아니라 검증 가능합니다. 수집할 수 없는 사실은 수집되지 않음으로 보고됩니다 — 결코 합의로 처리되지 않습니다.

테마

8가지 테마를 t로 순환할 수 있으며(세션 안에서는 Alt+t, t는 셸에 속하므로), 설정 파일에 저장됩니다:

dark (기본) · terminal · light · solarized · dracula · nord · ocean · sky

terminal은 자체 색상을 고정하지 않습니다 — 모든 슬롯이 ANSI 항목으로 해석되고 전경/배경은 터미널 자체 색상을 사용하므로, pywal, matugen 또는 터미널 프로필이 그대로 적용됩니다. sky와 light는 자체 배경색을 사용하고, ocean은 터미널 배경 위에 고정 팔레트를 적용합니다.

또는 명령 메뉴에서 바로 이동할 수 있습니다 — F10 또는 세션 밖에서 Ctrl+P — 이름을 입력하세요.

root@kitploit:~
essh --theme terminal        # system, ansi도 허용
essh --theme dracula hosts list

이 플래그는 한 번의 실행에만 적용되고 저장되지 않으므로, 부담 없이 시도해볼 수 있습니다. TUI에서 t를 누르면 변경 및 저장됩니다.

설정

상태는 ~/.essh/에 저장됩니다: config.toml, cache.db, audit.log, sessions/, recordings/, known_cas/.

root@kitploit:~
essh config init      # 기본 설정 파일 생성
essh config edit      # $EDITOR로 열기
essh config resolve web-01   # ssh_config가 호스트를 어떻게 해석하는지 표시

호스트 키는 검증 및 캐시되며, 설정 가능한 TOFU 정책 (strict, prompt, auto)을 지원합니다. 암호화 및 KEX 알고리즘을 제한할 수 있습니다.

전체 설정 및 아키텍처 참조: SPEC.md.

CLI

root@kitploit:~
essh hosts list | add | remove | import | health
essh keys list | add | remove
essh workspace list | open | save | show | remove
essh session list | replay <id>
essh diag <session-id>        # 과거 세션 진단
essh why <host>               # 호스트가 연결되지 않는 이유 설명
essh audit tail --lines 20
essh bench                    # 공개된 성능 수치

개발

root@kitploit:~
cargo test
cargo clippy --all-targets --all-features -- -D warnings
cargo fmt --check

CI는 모든 푸시에서 세 가지를 모두 실행합니다.

tests/tui_harness.rs는 실제 바이너리를 PTY에서 구동하고, 마감 시간 내에 파싱된 터미널 화면을 기준으로 검증합니다. TUI에서 중요한 실패는 잘못된 프레임이 아니라 프레임 자체가 없는 것이기 때문입니다. SSH가 필요한 테스트는 연결 가능한 호스트가 없으면 자체적으로 건너뜁니다.

기여

Fork하고, 브랜치를 만들고, 변경한 뒤 위의 세 가지 검사를 실행하고 PR을 열어주세요.

라이선스

MIT. LICENSE 참조.

도구 다운로드