16P by clash4970 2달전 | ★ favorite | 댓글 4개

공공장소에서 접근할 일이 생긴다던가, 친구에게 일시적으로 접근 권한을 주고 싶을 때 사용하기 좋은 TOTP 기반 인증을 적용한 리버스 프록시입니다.

Cloudflare 의 Pingora 를 이용하며 Rust 언어로 개발되어 굉장히 라이트하고, 빠른 성능이 나옵니다!

Rust 언어가 굉장히 마음에 들었는데 별다른 프로젝트 만들지 못하고 깔짝대면서 공부만 하다가 딱 사용하면 적합하겠다 싶은 프로젝트 아이디어가 떠올라서 처음으로 공개하는 제대로된 Rust 프로젝트네요.

Google Authenticator 나 기타 TOTP 지원하는 앱을 통해 1회성 OTP 를 만들어 인증하고, 접속할 수 있습니다.

기본적으로 세션은 최대 30분까지 지속되고, 원한다면 TLS/HTTPS 활성화 가능하고, 약간의 설정을 거치면 다른 Proxy 를 거쳐서 온 요청도 정상적으로 처리할 수 있습니다.

보안을 위해 개발된 프록시이다보니 최대한 보안을 1순위로 하여 개발해보았습니다!

아직 저밖에 사용해보지 않은 부족한 프로젝트이니, 피드백과 Issue, PR 등은 언제든지 환영입니다!

친구에게 일시적으로 접근 권한을 주는 시나리오를 어떻게 실현할 수 있는지 궁금합니다. 모든 사용자가 동일한 secret 값을 사용하는 걸로 이해되어서요

제가 친구에게 시크릿을 통해 만든 6자리 비밀번호만 건내주면 일시적으로 친구가 인증하고 들어가서 사용하는 시나리오입니다!

비동기적 상황에서는 사용하기 힘들 수 있지만, 저는 대부분의 일시적인 서버 공유 상황에서는 유용하게 사용하였습니다!

아아 이해했습니다 감사합니다