Bitwarden - Self-hosted password manager
-
@necrevistonnezr you can specify the image you want Cloudron to pull on the command line to your update command as well via
--image=something/something:latest
. This is what I do in theMakefile
I added to allow me to use a more standard Docker workflow with pushing to Docker Hub and pulling from there. -
@girish said in Bitwarden - Self-hosted password manager:
@necrevistonnezr Is this after you did a
cloudron build
? If you open up~/.cloudron.json
, it will have anapps
section and inside that various paths. Can you check what thedockerImage
in that is?It says (anonymized):
"apps": { "/Users/Username/Cloudron/bitwardenrs-app": { "repository": "myrepo/bitwarden", "dockerImage": "myrepo/bitwarden:20200122-061725-4544ff2bf", "dockerImageSha256": "00000fdbc13fa2f2d8edc85fc73b0d68c803b180a2287c19e03c3b25f453d6a97" } },
Those are the correct coordinates....
-
bitwarden_rs 1.1.4 is out
https://github.com/dani-garcia/bitwarden_rs- Added support for running on subpath, simply add the subpath to the DOMAIN variable: DOMAIN=https://example.com/custom-path
- Attachment size limits, per-user and per-organization, set USER_ATTACHMENT_LIMIT or ORG_ATTACHMENT_LIMIT to a value in kilobytes to apply it.
- Updated U2F library which might solve some U2F certificate errors.
- Added SMTP test button in the admin page.
- Use web vault built by docker autobuild, using the hash to reference the image for extra security
- Now accepting y/n, True/False, 1/0 as config options that are booleans.
- Fixed error Unique constraint violation when using Two Factor and Postgres.
- Fixed error with can_signup_user that didn't allow to change the email address.
- Don't error if admin token is empty but disabled
- Now email domains are converted to punycode before sending
- Enable icons to be cached in the clients
- Added option to change invitation org name
- Enabled the sending of invitations from the admin panel, even when disabled
- Dependency updates
-
@necrevistonnezr Bumping this app request, bitwarden is one of the last important holdouts in my cloud replacement efforts.
-
@will fbartels version is fully functional (https://git.cloudron.io/fbartels/bitwardenrs-app), I've been using it for months now. And if you modify the bitwarden_rs build number in https://git.cloudron.io/fbartels/bitwardenrs-app/-/blob/master/Dockerfile before building, you get the newest version. I updated just yesterday.
Change
FROM "bitwardenrs/server:1.13.1-alpine" as bitwarden
to
FROM "bitwardenrs/server:1.14-alpine" as bitwarden
-
@necrevistonnezr given this @fbartels app works and is the most requested app, and the release of Cloudron 5 out of the way, and the goal for this year seems to be to get lots more apps released, I'm left wondering what is holding up getting this into the app store @girish @nebulon?
-
@necrevistonnezr I know you've talked about it in the past, do you have the thread where there are instructions on how to install it? DO I add that URL as a private git repo? Never did any custom app stuff before (well I tried and failed)
-
@will said in Bitwarden - Self-hosted password manager:
@necrevistonnezr I know you've talked about it in the past, do you have the thread where there are instructions on how to install it? DO I add that URL as a private git repo? Never did any custom app stuff before (well I tried and failed)
- Install & run Docker, it will ask you to log in or create a Docker account
- Keep the Docker app / service running
git clone https://git.cloudron.io/fbartels/bitwardenrs-app
andcd bitwardenrs-app
cloudron build
(that's assuming you have installed cloudron cli via npm) - it will ask you for your cloudron credentials, and ask for your Docker repository, which should be set to public during the installation (makes it easier from my experience), e.g. in the formDocker_Username/bitwarden_rs
cloudron install
: it will ask for the domain to install to, e.g.bit.domain.tld
If you update, it's pretty much the same, just
git pull
in the app directory,cloudron build
, and thencloudron update --app bit.domain.tld
-
@necrevistonnezr said in Bitwarden - Self-hosted password manager:
cloudron build
Ok went through the steps.
- installed docker, registered and made an empty public repo
- On my linux vm I got docker up and running
- Cloned that repo to local dir
- Ran Cloudron build inside repo folder
- Seemed to build but then asked if I was logged into docker?
- Logged into docker and cloudron on the CLI and tried again.
CLI seemed to try to get at a repo at docker.io, but my repo is at hub.docker.com
Sorta installed, visible in cloudron error message in cloudron:
If a configuration, update, restore or backup action resulted in an error, you can retry the task.
An error occurred during the install operation: Not found: Unable to pull image willrimmer/bitwarden_rs:20200320-035449-643626a03. message: (HTTP code 404) unexpected - manifest for willrimmer/bitwarden_rs:20200320-035449-643626a03 not found statusCode: 404
Let me know if I'm understanding the flow correctly.
- Clone from github locally.
- Package up a Cloudron ready docker container and push to Docker Hub
- Cloudron grabs and deploys from Docker Hub(?)
-
BTW, when looking for the newest Docker releases, this site https://docker-hub-rss.now.sh and in particular this feed
https://docker-hub-rss.now.sh/bitwardenrs/server.atom is ery helpful... -
@girish Woohoo! It worked!
01 Installing the App
$ sudo docker login
$ sudo cloudron login my.example.com
$ git clone https://git.cloudron.io/fbartels/bitwardenrs-app
$ cd bitwardenrs-app
$ sudo cloudron build
Enter repository (e.g registry/username/com.github.bitwardenrs): username/dockerhub-repo
$ sudo cloudron install -l bitwarden.example.com02 Updating the App
$ git pull https://git.cloudron.io/fbartels/bitwardenrs-app
$ sudo cloudron build
$ sudo cloudron update --app bitwarden.example.com03 Configuring the App
Go to bitwarden.example.com/admin to configure.I can add users manually, is there a way to tie this Cloudron LDAP?
Thanks! -
@will Yes, you can use LDAP if you use the version I published.
https://git.cloudron.io/iamthefij/bitwardenrs-app
Updated to the latest version.
I haven't updated to the latest versions of Bitwarden just yet though. I'll give that a go now.Edit: It looks like Bitwarden_rs was updated to use a newer base image for building it's binaries. That means that when the binary used in the MySQL image is built, it's compiled against a newer version of
libmariadb
. It doesn't look like the Cloudron base image has been updated in a year, so I'm unable to just bump the version in the single-stageDockerfile
in my repo. However, I also have a multi-stageDockerfile
that will compile Bitwarden_rs from source against whatever version oflibmariadb
that is present. This should work but takes more time to build so I'm letting that run right now. I'll update when it's done. Edit: It's done!Related, but kind off topic: Can we get an update to the Cloudron base? How will those be handled in an ongoing basis since apps are pinned (as they should be) to a particular base? I imagine there have been security updates in the last year.
-
@iamthefij An update to the Cloudron base image gets brought up every few months for the last year or so. The most recent official mention of an updated base image was by @nebulon last August but it there's been a pin stuck in that with the aggressive releases as of late - perhaps this and other apps getting updated and looking to move forward soon will help un-stick that again, especially since it's been about a year since 1.0.0 dropped.
cc @girish for a more definitive idea
-
@jimcavoli Now with 5.x out, I think it's time to bring out a new base image. Still working on the blog post and newsletter, so after that.
@will Bitwarden server never sees any user password and all encryption is done client side (please see https://github.com/dani-garcia/bitwarden_rs/pull/677#issuecomment-545081380 and the full thread). For this reason, one can only implement a system where LDAP users can be automatically added into the bitwarden db and then sent an email invite. @iamthefij has automated the LDAP sync and invitation flow for Cloudron LDAP. Note that, the users have to use the invitation to sign up and setup a master password (which is totally independent of Cloudron password).
In short, you can just add/invite users manually into bitwarden if you don't have that many users. There is no real LDAP sign in.