Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
mkdev — 신뢰할 수 있는 localhost HTTPS — 로컬 CA, /etc/hosts, mDNS LAN 공유, 리버스 프록시. https://name.local → localhost:port로 매핑합니다. | Kitploit
도구/GitHubGitHub/venkatkrishna07/mkdev
Encryption/Decryption ToolsReverse EngineeringWeb SecurityNetwork SecurityUtilities & FrameworksDNS Analysis
GitHubvenkatkrishna07/mkdev

mkdev

신뢰할 수 있는 localhost HTTPS — 로컬 CA, /etc/hosts, mDNS LAN 공유, 리버스 프록시. https://name.local → localhost:port로 매핑합니다.

저장소 보기
14014123개월 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

mkdev

로컬 개발을 위한 실제 HTTPS — TUI 및 LAN 공유 지원.

ci release license


mkdev는 *.local에서 신뢰할 수 있는 HTTPS를 실행합니다. 단일 Go 바이너리: 인증 기관 + 리버스 프록시 + /etc/hosts + mDNS 브로드캐스트 + 완전한 TUI.

차별점:

  • LAN 공유 — 경로를 공유로 표시하면 같은 Wi-Fi의 휴대폰이나 다른 기기에서 https://app.local에 접속할 수 있습니다.
  • CLI만이 아닌 TUI. 실시간 경로 테이블, 요청 로그, 인증서 검사, 상태 진단. 인자 없이 mkdev를 실행하면 바로 TUI가 열립니다.
  • 강화된 권한 경계. 모든 권한 상승 호출 전에 sudo 헬퍼 바이너리에 대한 소유자, 쓰기 가능 여부, 심볼릭 링크 검사를 수행합니다 (internal/safeexec). PATH 기반 섀도잉이나 그룹 쓰기 가능 단축 경로가 없습니다.
  • SNI별 인증서 발급. 리프 인증서는 요청 시 발급되며 명시적인 knownHost 허용 목록으로 제어됩니다. 와일드카드도, 미리 생성된 것도 아닙니다.

기능

mkdev install                    # CA + trust + daemon service + menu bar autostart
mkdev add myapp localhost:3000   # routes https://myapp.local → localhost:3000
curl https://myapp.local         # 200 from your local app

install은 일회성입니다: CA를 생성하고, 시스템 저장소에 신뢰를 등록하고, 데몬 사용자 서비스(launchd / systemd)를 설치하고 활성화하며, 메뉴 바가 로그인 시 실행되도록 등록하고, GUI 세션이 있으면 즉시 바를 실행합니다. 데몬이 프록시를 소유합니다. TUI(mkdev 인자 없음)와 mkdev add | remove | list는 ~/.mkdev/daemon.sock을 통해 데몬과 통신합니다.

mkdev demo

LAN 공유

mkdev의 핵심 기능입니다. 실제 TLS로 같은 Wi-Fi의 모든 기기에 경로를 공유합니다 — 경고도, 터널 서비스도 없습니다.

  1. TUI 도메인 탭에서 경로를 선택하고 s를 눌러 SHARE 열을 LAN으로 전환합니다.
  2. 경로는 mDNS를 통해 <name>.local → 이 머신의 LAN IP로 광고됩니다.
  3. 휴대폰/두 번째 노트북에서 https://<name>.local로 접속하세요. 기기가 mkdev CA를 신뢰하면(일회성) 경고가 표시되지 않습니다.

주의 사항

  • mDNS로 브로드캐스트되는 것은 .local 경로뿐입니다. 다른 TLD도 프록시는 되지만 이름으로 LAN에서 접근할 수는 없습니다.
  • 회사/클라우드 Wi-Fi는 멀티캐스트를 차단하는 경우가 많습니다. 집이나 사무실 Wi-Fi에서는 작동합니다.
  • s 토글은 즉시 적용됩니다 — mDNS 광고와 LAN 측 ACL은 다음 요청 시 업데이트됩니다. 재시작이 필요 없습니다.
  • 공유되지 않은 경로는 심층 방어 차원에서 루프백이 아닌 요청에 403을 반환합니다.
  • LAN에 있는 누구나 공유된 경로에 접근할 수 있습니다. 신뢰할 수 없는 Wi-Fi에서는 활성화하지 마세요.

설치

Homebrew (macOS, Linux)

brew install venkatkrishna07/tap/mkdev

나중에 업그레이드:

brew update
brew upgrade mkdev

Go

go install github.com/venkatkrishna07/mkdev/cmd/mkdev@latest

특정 버전으로 업그레이드:

go install github.com/venkatkrishna07/mkdev/cmd/[email protected]

직접 다운로드

macOS(Intel + Apple Silicon), Linux(amd64 + arm64), Windows(amd64)용 사전 빌드 바이너리가 Releases 페이지에 게시됩니다. 각 릴리스에는 checksums.txt와 cosign 키리스 서명(checksums.txt.sig + .pem)이 포함되어 있습니다. 검증 명령은 SECURITY.md#verifying-releases를 참조하세요.

macOS에서 Gatekeeper가 직접 다운로드한 바이너리를 차단하는 경우:

xattr -d com.apple.quarantine ./mkdev

소스에서 빌드

git clone https://github.com/venkatkrishna07/mkdev.git
cd mkdev
task build
cp bin/mkdev ~/bin/        # or /usr/local/bin

**Go 1.25+**가 필요합니다.

첫 실행

mkdev install   # CA, trust, daemon service, bar autostart — one command
mkdev           # launch TUI

install 후 데몬은 백그라운드에서 실행되고 메뉴 바가 나타납니다(macOS, Linux GNOME/KDE, Windows). 바에는 데몬 상태, 경로 목록, 경로별 활성화/LAN 공유 토글이 표시됩니다. Quit는 데몬을 중지하지 않고 바만 종료합니다.

메뉴 바

메뉴 바는 상시 UI입니다. 시스템 트레이에 있으며 ~/.mkdev/daemon.sock을 통해 데몬과 통신합니다. 로그인 시 실행되며(install이 자동 시작을 등록), mkdev bar로 포그라운드에서도 실행할 수 있습니다.

표시 정보:

  • 상태 점 — 녹색이면 정상, 빨간색이면 중지, 노란색이면 프로빙 중, 회색이면 꺼짐. 데몬 상태를 반영합니다.
  • 헤더 — mkdev v0.4.0 + 데몬 PID + 가동 시간 + 수신 중인 프록시 포트.
  • 경로 — 저장소의 모든 경로를 위에서 아래로 표시. 각 항목은 name.tld → target과 접미사 배지( · disabled, · LAN)를 보여줍니다.

동작 (경로 클릭):

  • 브라우저에서 열기 — 시스템 기본 처리기로 https://name.tld를 엽니다.
  • URL 복사 — 프록시 URL을 클립보드에 복사합니다 (pbcopy / wl-copy / xclip / clip.exe).
  • 활성화 / 비활성화 — 경로의 Enabled 플래그를 전환합니다. 비활성화된 경로는 저장소에 남지만 프록시되지 않습니다.
  • LAN 공유 — mDNS 광고 + LAN 측 ACL을 전환합니다.

바 수준 동작:

  • 데몬 중지 — launchd / systemd KeepAlive가 즉시 다시 시작하지 않도록 먼저 DisableUnit을 호출한 다음 소켓으로 종료를 보냅니다.
  • 종료 — 바 프로세스만 종료합니다. 데몬과 프록시는 계속 실행됩니다.

참고:

  • 바 인스턴스 두 개를 동시에 실행할 수 없습니다(PID 파일 잠금; 두 번째는 즉시 종료).
  • 데몬이 다시 시작되면 바가 자동으로 다시 연결됩니다. 수동으로 새로고침하지 않아도 상태 점이 업데이트됩니다.
  • 감독되는 데몬을 정상적으로 중지할 수 있는 것은 바(및 mkdev daemon stop)뿐입니다. 데몬 프로세스를 직접 종료하면 launchd / systemd가 다시 시작시킵니다.

업그레이드

바이너리를 교체하세요(brew upgrade / go install ...@latest / 새 다운로드). 다음에 mkdev 하위 명령을 실행하면 바이너리가 외부에 있는 부분들을 조정합니다: 데몬 plist / systemd 유닛과 바 자동 시작 항목을 새 바이너리를 가리키도록 다시 쓰고, 활성화된 경로에 대해 /etc/hosts를 다시 적용하며, CA가 삭제된 경우 다시 신뢰합니다. sudo 프롬프트는 인라인으로 실행됩니다. 데몬만 실행 중이고 CLI를 건드리지 않는 경우, 데몬은 자체 시작 시 안전한(sudo 없는) 작업을 수행하고 나머지는 다음 CLI 명령까지 대기시킵니다.

mkdev install을 다시 실행하면 동일한 작업을 명시적으로 수행하며 항상 안전합니다 — 모든 단계가 멱등적입니다.

플랫폼 지원

플랫폼신뢰 저장소권한 상승
macOS시스템 키체인 (security add-trusted-cert)sudo / osascript
Linuxupdate-ca-trust / update-ca-certificates / trust extract-compatsudo / pkexec
WindowsROOT 시스템 저장소 (crypt32.dll 경유)UAC (PowerShell RunAs)

감지되는 Linux 배포판: Debian/Ubuntu (/usr/local/share/ca-certificates), RHEL/Fedora (/etc/pki/ca-trust/source/anchors), Arch (/etc/ca-certificates/trust-source/anchors), openSUSE (/usr/share/pki/trust/anchors).

Firefox는 자체 NSS 저장소를 사용하며 아직 지원되지 않습니다 — 시스템 Chrome/Safari/Edge/curl/wget은 모두 작동합니다.

명령어

명령어용도
install일회성: CA + 신뢰 + 데몬 서비스 + 바 자동 시작. CA만 하려면 --no-service를 전달하세요.
add <name> <target>경로를 추가합니다. /etc/hosts에 127.0.0.1 항목을 추가합니다.
remove <name>경로와 해당 /etc/hosts 항목을 제거합니다.
list저장소의 경로를 나열합니다.
tuiTUI를 실행합니다(인자 없이 실행할 때의 기본 동작이기도 함).
daemon serve데몬을 포그라운드로 실행합니다(보통 서비스 유닛이 구동).
daemon stop실행 중인 데몬을 중지하고 사용자 서비스를 비활성화합니다.
daemon status서비스의 설치/활성화/실행 상태를 보고합니다.
bar메뉴 바 앱을 실행합니다. install에 의해 자동 시작됩니다.
uninstallCA 신뢰를 해제하고, /etc/hosts 항목을 제거하고, 데몬 + 바 자동 시작을 제거하고, ~/.mkdev/를 삭제합니다.
version버전, 커밋, 빌드 날짜를 출력합니다.
completion <bash|zsh|fish|powershell>셸 완성 스크립트를 출력합니다.
hosts-helper숨김. /etc/hosts를 원자적으로 변경하기 위해 sudo로 호출됩니다.

플래그 및 환경 변수

플래그 / 환경 변수효과
--home <path>~/.mkdev 상태 디렉터리를 재정의합니다.
--verbose, -vstderr에 디버그 수준 로깅을 출력합니다.
--version버전을 출력하고 종료합니다.
MKDEV_HOME=<path>--home과 동일합니다.

대상 형식

<target>은 다음 중 하나를 허용합니다:

host:port                  e.g. localhost:3000
http://host[:port]/path    e.g. http://localhost:3000/api
https://host[:port]/path   e.g. https://gitlab.example.com
도구 다운로드