Repolode
orhun

orhun/rustypaste

Rust로 작성된 최소 구성의 셀프 호스팅 파일 업로드 및 pastebin 서비스로, 데이터베이스 없이 로컬 파일 시스템에 파일을 저장합니다.

스타
1,213
포크
94
열린 이슈
19
마지막 커밋
어제

어떤 프로젝트인가요?

Rustypaste를 사용하면 curl이나 유사한 HTTP 클라이언트로 파일을 업로드하고 공유할 수 있는 짧은 URL을 받을 수 있습니다. URL 단축과 URL을 통해 원격 파일을 서버로 가져오는 기능도 지원합니다. 업로드 파일은 파일 시스템에 저장되므로 데이터베이스가 필요 없으며, 단일 바이너리와 Docker 이미지로 배포됩니다.

파일 이름과 보관 기간을 선택적으로 제어할 수 있습니다. 파일 이름은 임의로 지정할 수 있으며(반려동물 이름, 영숫자 문자열 또는 임의의 접미사), 링크는 자동 만료되도록 설정할 수 있고 만료된 파일은 일정에 따라 삭제할 수 있습니다. 일회용 링크는 한 번만 열 수 있으며, Argon2id로 해시한 비밀번호를 사용해 파일을 보호할 수도 있습니다. 인증 토큰, delete token으로 보호되는 DELETE 엔드포인트, 선택적으로 활성화할 수 있는 파일 목록 엔드포인트도 제공합니다.

설정은 핫 리로딩을 지원하는 TOML 파일을 통해 관리합니다. MIME 타입은 확장자를 바탕으로 추정하며, 재정의하거나 차단 목록에 추가할 수 있습니다. 텍스트 계열 타입은 스크립트 실행을 방지하기 위해 일반 텍스트로 제공합니다. HTML 업로드 폼과 같은 사용자 지정 랜딩 페이지도 설정할 수 있습니다.

핵심 기능

  • 01curl 또는 HTTP를 통한 업로드 및 공유 가능한 짧은 URL 제공
  • 02데이터베이스가 필요 없는 파일 시스템 저장
  • 03선택 가능한 임의 파일 이름, 자동 만료 및 일회용 링크
  • 04Argon2id 해시를 사용한 비밀번호 보호 파일
  • 05기본 인증 토큰 및 토큰으로 보호되는 DELETE 엔드포인트
  • 06MIME 타입 감지, 재정의 및 차단 목록 지원
  • 07핫 리로딩 가능한 TOML 설정 및 Docker 이미지

활용 사례

  • 개인 컴퓨터나 VPS에서 비공개 pastebin 또는 파일 공유 서버 운영
  • 자동 만료되어야 하는 스크린샷과 단기간만 유효한 파일 공유
  • 한 번만 열 수 있는 일회용 다운로드 링크 전송
  • 타사 서비스를 이용하지 않고 비밀번호로 보호된 파일 공유

빠른 시작

  1. 1

    Cargo로 crates.io에서 설치합니다

    cargo install rustypaste
  2. 2

    작업 디렉터리에 config.toml을 만들고(저장소의 config.toml 참조) 서버를 시작합니다

    rustypaste
  3. 3

    실행 중인 서버에 파일을 업로드합니다

    curl -F "file=@x.txt" "<server_address>"

사용 전 알아둘 점

  • 파일은 데이터베이스 없이 로컬 파일 시스템에 저장되므로 단일 서버 셀프 호스팅에 적합합니다.

포함된 컬렉션

토픽

#file-sharing#pastebin#file-upload#self-hosted#rust#url-shortener#file-upload-server#file-upload-service#file-uploading#hacktoberfest

자주 묻는 질문

rustypaste은(는) 무엇인가요?
Rust로 작성된 최소 구성의 셀프 호스팅 파일 업로드 및 pastebin 서비스로, 데이터베이스 없이 로컬 파일 시스템에 파일을 저장합니다. Rustypaste를 사용하면 curl이나 유사한 HTTP 클라이언트로 파일을 업로드하고 공유할 수 있는 짧은 URL을 받을 수 있습니다. URL 단축과 URL을 통해 원격 파일을 서버로 가져오는 기능도 지원합니다. 업로드 파일은 파일 시스템에 저장되므로 데이터베이스가 필요 없으며, 단일 바이너리와 Docker 이미지로 배포됩니다.
rustypaste은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
rustypaste은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
rustypaste은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. rustypaste의 마지막 커밋은 2026년 11월 4일입니다.
rustypaste은(는) 어디에 사용할 수 있나요?
개인 컴퓨터나 VPS에서 비공개 pastebin 또는 파일 공유 서버 운영 자동 만료되어야 하는 스크린샷과 단기간만 유효한 파일 공유 한 번만 열 수 있는 일회용 다운로드 링크 전송 타사 서비스를 이용하지 않고 비밀번호로 보호된 파일 공유
rustypaste는 어떻게 설치하나요?
Cargo로 crates.io에서 설치합니다: cargo install rustypaste 작업 디렉터리에 config.toml을 만들고(저장소의 config.toml 참조) 서버를 시작합니다: rustypaste 실행 중인 서버에 파일을 업로드합니다: curl -F "file=@x.txt" "<server_address>"
rustypaste은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/orhun/rustypaste

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트