# Bitwarden

bitwarden_rs inside a container. This is a re-implementation of the main [Bitwarden](https://bitwarden.com/) server in rust. It is meant to replace the main Bitwarden server and provide a better self-hosting alternative. This server *is compatible* with the official Bitwarden clients. This image also contains the main Bitwarden web ui.

## Inspiration / Sources

- [https://bitwarden.com/](https://bitwarden.com/)
- [https://github.com/dani-garcia/bitwarden_rs](https://github.com/dani-garcia/bitwarden_rs)

## Install / Update / Run Script

Setup a generic script that'll auto update bitwarden, build a container and launch it. You should only run this script at first launch and/or when you're looking for updates.

``` bash

mkdir -p /var/bitwarden

wget -O bitwarden.sh https://git.lollipopcloud.solutions/lollipop-docker/misc/raw/branch/master/run_bitwarden.sh
chmod a+x /scratch/docker/bitwarden.sh

```

## Run Bitwarden

Simply execute ```/scratch/docker/bitwarden.sh``` to update/run Bitwarden.

## Update Unbound

``` bash

cat > /etc/unbound/local_zone/bitwarden.conf <<EOF
local-data: "bitwarden A 172.30.0.1"
local-data: "bitwarden.domain.tld A 172.30.0.1"
local-data-ptr: "172.30.0.1 bitwarden"
local-data-ptr: "172.30.0.1 bitwarden.domain.tld"
EOF

```

## Further configuration

[https://github.com/dani-garcia/bitwarden_rs/wiki/Fail2Ban-Setup](https://github.com/dani-garcia/bitwarden_rs/wiki/Fail2Ban-Setup) has great information on how to configure Fail2Ban to help minimize attempts to hack your server.
