Password Management : Vaultwarden (Bitwarden)

Vaultwarden 소개

Bitwarden_snapshot1.png

한마디로 설명드리면 "Open Source Password Manager" 입니다.

Vaultwarden은 Bitwarden의 모든 기능을 무료로 지원하는 Bitwarden의 Fork 버전입니다.

로그인정보, 금융정보 등등 모든 개인 정보를 쉽게 관리 할 수 있으며, 모든 데이터 저장은 암호화되어 있어 

매우 안전하다고 평가 되어 있습니다.

사전준비

Nginx Proxy Manager 같은 역방향 프록시를 설정합니다.

Nginx Proxy Manager 설치는 아래 설명서를 참고하세요.

https://wiki.dhcloud.me/books/nginx-proxy-manager?shelf=1

 

설치

시놀로지 Docker 패키지 기준 설치방법을 설명 합니다.

먼저 볼륨 Mapping을 위해 "docker/vaultwarden"라는 디렉토리를 생성 합니다.

mkdir /volume1/docker/vaultwarden

Docker 레지스트리에서 "vaultwarden/server" 이미지를 찾아 다운르도 합니다.

bit1.png

다운로드한 이미지로 컨테이너를 생성합니다.

bit2.png

"자동 재시작 활성화" 옵션을 체크 합니다.

bit3.png

"볼륨" 탭에서 사전 생성한 "docker/vaultwarden" 디렉토리와 "/data"를 Mapping해 줍니다.

bit4.png

"포트 설정" 탭에서 "3012:3012", "8083:80"을 tcp 유형으로 추가 합니다.

bit5.png

"환경" 탭에서 아래 두가지 변수값을 추가해 줍니다.

TZ=Asia/Seoul
WEBSOCKET_ENABLED=true

bit6.png

Docker Container 생성을 완료하고, Container를 생성 합니다.

bit7.png

"IP:8083"으로 접속 합니다.

bit8.png

Nginx Proxy Manager Proxy Host 설정

8083포트로 Proxy Host를 생성합니다.

bit9.png

"Custom locations"탭으로 이동 합니다.

"/notifications/hub"는 웹소켓 포트 3012에 "/notifications/hub/negotiate"는 웹서버 포트 8083에 연결 합니다.

여기서 Scheme은 "http", IP는 사용중인 로컬 IP를 넣어 주시면 됩니다.

bit10.png

"SSL"탭으로 이동 후 사용중인 SSL인증서를 적용해 줍니다.

bit11.png

마지막으로 등록된 서브도메인으로 접속하여 관리자 계정을 생성합니다.

보안강화

본 장은 앞서 생성된 관리자 계정만 접속을 허용하게 하는 단계 입니다.

개인의 중요한 정보가 보관되는 프로그램으로 아래 단계의 진행을 권장 드립니다.

관리자 계정이 생성되었다면, Docker Container를 중지하고 환경 변수에 아래 두가지 값을 추가 합니다.

도메인주소는 Nginx Proxy Manager에서 등록한 https://vault.dhcloud.me 같은 값을 넣어주시면 됩니다.

SIGNUPS_ALLOWED=false
DOMAIN=도메인주소 

추가로 보안 강화를 위해 Admin 페이지에서 "2단계 인증"을 반드시 활성화 해줍니다.

vault_otp2.png

vault_otp1.png