
이름으로 오픈소스 OSINT 명령줄 도구를 설치, 실행, 업데이트 및 제거하며, 자동화된 정찰 워크플로를 위해 타입이 지정된 입력, JSON 출력, 저장된 결과를 제공합니다.
이름으로 오픈소스 명령줄 도구를 설치, 실행, 업데이트, 제거합니다.
목록에서 도구를 선택합니다. OTinstaller는 자체 폴더에 도구를 다운로드하고, 실행한 뒤 출력을 저장합니다. 도구마다 다른 설치 방법을 익힐 필요가 없습니다.
otinstaller는 PyPI에 게시되어 있습니다 (버전 0.0.1).
Linux 머신. Ubuntu 22.04 및 24.04, Debian 12, Arch Linux에서 테스트되었습니다. Kali Linux는 릴리스 전에 수동으로 확인합니다.
Python 3.10~3.12, git, 그리고 venv 모듈. Debian, Ubuntu, Kali에서는 다음 명령으로 해당 모듈을 설치하십시오:
sudo apt install python3-venv git
Ubuntu 26.04 LTS는 기본적으로 Python 3.14를 제공하며, 다른 배포판도 이제 Python 3.13+를 제공합니다. otinstaller와 일부 관리 대상 도구는 Python 3.10–3.12를 요구하므로, 이러한 시스템에서는 Python 3.12를 명시적으로 설치하고 그것으로 만든 virtualenv 안에서 otinstaller를 실행하십시오:
curl -LsSf https://astral.sh/uv/install.sh | sh
source $HOME/.local/bin/env
uv venv --python 3.12 ~/.otinstaller-venv
source ~/.otinstaller-venv/bin/activate
uv pip install otinstaller
uv로 생성된 virtualenv에는 pip가 없으므로 설치 명령은 uv pip install otinstaller입니다. otinstaller를 사용하기 전에 새 터미널마다 source ~/.otinstaller-venv/bin/activate를 다시 실행하십시오. otinstaller doctor는 실행 중인 Python 버전을 출력하고 다른 버전이 필요한 등록된 도구가 있으면 표시합니다.
Ubuntu 22.04 및 24.04의 시스템 Python은 이미 작동합니다. uv 방법은 Ubuntu 26.04에서만 테스트되었습니다.
일부 관리 대상 도구는 아직 Python 3.13+를 지원하지 않습니다. 테스트 매트릭스는 Python 3.10–3.12를 다룹니다. 알려진 영향받는 도구:
auto-archiver: Python <3.13 필요 (의존성 pdqhash는 C++ 컴파일러가 필요하며 3.13+용 wheel이 없음)telepathy: Python <3.13 필요 (의존성 googletrans/httpx가 제거된 cgi 모듈을 사용)Python 3.13+에서 설치 실패가 발생하면 Python 3.12 virtualenv에서 otinstaller를 실행하십시오.
시스템 전역 설치에는 pipx install otinstaller를 사용하십시오. 이는 virtualenv 없이 PATH에 otinstaller 및 ot 명령을 제공합니다.
또는 virtualenv를 만들고 PyPI에서 설치하십시오:
python3 -m venv ~/.otinstaller-venv
source ~/.otinstaller-venv/bin/activate
pip install otinstaller
otinstaller를 사용하기 전에 새 터미널마다 source ~/.otinstaller-venv/bin/activate를 다시 실행하십시오.
이 저장소에서 설치하려면 (개발용):
python3 -m venv .venv
source .venv/bin/activate
pip install -e .
다음 명령이 otinstaller: command not found를 출력하면 새 터미널에서 이 폴더로부터 source .venv/bin/activate를 다시 실행하십시오.
다음 명령으로 머신을 확인하십시오:
otinstaller doctor
doctor는 Linux, Python, git, venv에 대해 [ok] 또는 [problem]을 출력합니다. 계속하기 전에 [problem] 줄을 수정하십시오. 종종 설치할 패키지를 알려줍니다.
init은 ~/.otinstaller/를 생성하고 책임 있는 사용 안내를 표시합니다. Do you accept? [y/N]을 묻습니다. y를 입력하고 Enter를 누르십시오. 그렇게 하기 전에는 아무것도 설치할 수 없습니다.
otinstaller init
Sherlock은 사용자 이름을 검색합니다. 이 설치는 Install? [y/N]을 묻습니다. 대문자 N은 Enter만 누르면 아니오를 의미합니다. 계속하려면 y를 입력하십시오.
otinstaller install sherlock
otinstaller run sherlock -- someexampleuser123
--는 otinstaller 자체 옵션이 끝나는 지점을 표시합니다. 그 뒤의 모든 것은 Sherlock에 전달됩니다. 실행이 끝나면 otinstaller는 명령을 실행한 폴더의 results/ 아래 경로를 출력합니다. 그 파일이 도구의 출력입니다.
다른 도구를 시도하려면 sherlock 대신 가이드에 있는 해당 도구의 이름을 사용하십시오.
각 도구의 플래그를 기억하는 대신 타입 지정 입력 접두사를 사용할 수 있습니다:
u: 사용자 이름 (예: u:johndoe)e: 이메일 (예: e:[email protected])p: 전화 (예: p:+15551234567)d: 도메인 (예: d:example.com)url: URL (예: url:https://example.com)q: 텍스트 쿼리 (예: q:search terms)geo: 좌표 (예: geo:32.22,-110.97)tg: Telegram 채널 (예: tg:channelname)lat: 위도 (예: lat:37.7749)lng: 경도 (예: lng:-122.4194)예:
otinstaller run sherlock -- u:johndoe
otinstaller run ghunt -- u:johndoe e:[email protected]
각 도구는 지원하는 입력 타입을 선언합니다. 매핑을 보려면 otinstaller info <tool>을 사용하십시오.
주어진 입력 타입을 지원하는 설치된 모든 도구를 실행합니다:
otinstaller run --all u:johndoe
otinstaller run -a u:johndoe e:[email protected]
--all과 함께 작동하는 것은 u, e, p, d, url뿐입니다. API 자격 증명이 필요한 도구는 --include-credentialed가 전달되지 않는 한 건너뜁니다.
모든 명령은 기계 판독 가능 출력을 위한 --json을 지원합니다. --yes 또는 -y가 주어지거나 stdin이 터미널이 아닐 때(CI 모드) 명령은 절대 프롬프트하지 않습니다. 종료 코드는 안정적입니다: 0 = 성공, 1 = 오류, 2 = 잘못된 입력, 130 = 중단됨.
명령 참조:
otinstaller init — 구성 및 디렉터리 초기화otinstaller install <tool>... — 도구 설치otinstaller install --all — 레지스트리에서 사용 가능한 모든 도구 설치otinstaller remove <tool>... / --all — 도구 제거otinstaller run <tool>... -- <args> — 도구 실행otinstaller run --all u:... — 일치하는 모든 도구 실행otinstaller run --live — 병렬 실행을 위한 실시간 상태 표 표시otinstaller run --case <name> — 이름이 지정된 케이스 아래에 실행 그룹화otinstaller info <tool> — 도구 세부 정보 표시otinstaller list / --installed — 도구 나열otinstaller search <query> — 도구 검색otinstaller update / --all / --check-only — 도구 업데이트otinstaller check-updates — 업데이트 확인 (읽기 전용)otinstaller auto <target> — 타입 자동 감지 및 도구 실행otinstaller example <tool> — 예제 출력 표시otinstaller keys check — API 키 확인otinstaller resume — 중단된 작업 재개otinstaller doctor — 진단 실행otinstaller about — 크레딧이 포함된 about 배너 표시otinstaller extract <target> — 저장된 결과 파일에서 지표 추출otinstaller diff <tool> <target> — 동일한 대상에 대한 동일 도구의 가장 최근 두 실행 비교otinstaller playbook [name] [target] — 플레이북 실행otinstaller playbook --list — 사용 가능한 플레이북 나열otinstaller <tool> — 도구 세부 정보 표시 (info <tool>과 동일)AI 에이전트의 경우: 저장소 루트의 llms.txt를 참조하십시오.
결과는 ./results/<tool>/<target>/에 파일 이름 패턴 <YYYYmmdd-HHMMSS>_<tool>_<target>_<runid>.<ext>와 .meta.json 사이드카를 사용하여 자동으로 저장됩니다. 결과 디렉터리는 --output 또는 OTINSTALLER_RESULTS_DIR로 재정의할 수 있습니다. 결과는 명령을 실행한 폴더의 ./results/에 저장되므로 매번 같은 폴더에서 실행하십시오.
예:
results/sherlock/testuser/20260929-123456_sherlock_testuser_abc123.txt
results/sherlock/testuser/20260929-123456_sherlock_testuser_abc123.meta.json
하나의 env 파일이 모든 API 키를 보관합니다: ~/.otinstaller/.env, 권한 600. 각 도구는 레지스트리 항목에 선언된 키만 받습니다. 확인하려면 otinstaller keys check를 사용하십시오.
실행 또는 설치가 중단되면(충돌, Ctrl+C, kill), otinstaller는 ~/.otinstaller/jobs/에 작업 마커를 유지합니다. otinstaller resume을 실행하여 중단된 작업을 감지하고 처리하십시오:
변경 없이 어떤 일이 일어날지 보려면 otinstaller resume --dry-run을 사용하십시오. 기계 판독 가능 출력에는 --json을 사용하십시오.
완료된 작업은 재개 시 건너뜁니다(완료 시 마커가 제거됨). 중단된 실행의 부분 출력은 항상 결과 디렉터리에 유지됩니다.
일부 도구는 레지스트리에서 dual-use로 태그됩니다. 합법적인 연구에 사용될 수 있지만 오용될 수도 있습니다. 이중 용도 도구를 설치하면 안내를 출력하고 --yes가 주어지지 않는 한 확인을 요구합니다.
전역 책임 있는 사용 안내는 첫 otinstaller init에서 수락됩니다. 언제든지 otinstaller init으로 다시 읽을 수 있습니다.
MIT. LICENSE를 참조하십시오.