PasswordPusher
is an opensource Ruby on Rails application to communicate passwords over the web. Links to passwords expire after a certain number of views and/or time has passed. Hosted at pwpush.com but you can also easily run your own instance internally or on Heroku with just a few steps.
I previously posted this project on Reddit which provided some great feedback - most of which has been implemented.
Deploy to Heroku¶ ↑
Deploy Internally¶ ↑
Make sure you have git and Ruby installed and then:
git clone git@github.com:pglombardo/PasswordPusher.git cd PasswordPusher gem install bundler bundle install --without development production test --deployment bundle exec rake assets:precompile RAILS_ENV=private bundle exec rake db:setup foreman start internalweb
Then view the site @ localhost:5000/.
Note: You can change the listening port by modifying the {Procfile}[https://github.com/pglombardo/PasswordPusher/blob/master/Procfile#L2]
Troubleshooting¶ ↑
Command not found: bundle¶ ↑
If you get something like Command not found: bundle
, then you need to run
gem install bundler
If you get something like 'Command not found: gem', then you need to install Ruby. :)
SQLite3¶ ↑
If the 'bundle install' fails with 'checking for sqlite3.h… no', you have to install the sqlite3 packages for your operating system. For Ubuntu, the command is:
sudo apt-get install sqlite3 ruby-sqlite3 libsqlite3-ruby libsqlite3-dev
Other Information¶ ↑
-
How to use the Password API
Tip¶ ↑
With the internal deploy process described above, SQLite3 is provided by default for a quick and easy setup of the application.
If you plan to use PasswordPusher
internally at your organization and expect to have multiple users concurrently creating passwords, it's advised to move away from SQLite3 as it doesn't support write concurrency and errors will occur.
For example, on pwpush.com, I run the application with a Postgres database.
Initiated from {this discussion}[http://www.reddit.com/r/sysadmin/comments/yxps8/passwordpusher_best_way_to_deliver_passwords_to/c5zwts9] on reddit.
See How to Switch to Another Backend Database for details.
Note for Existing Users
¶ ↑
If you're already hosting your own private instance of PasswordPusher
, make sure to do a periodic git pull
from time to time to always get the latest updates.
You can always checkout out the latest commits to see what's been updated recently.
Credits¶ ↑
Thanks to:
-
@iandunn for better password form security.
-
Kasper ‘kapöw’ Grubbe for the JSON POST fix.
-
JarvisAndPi for the favicon design
See Also¶ ↑
quasarj created a django application based off of PasswordPusher
phanaster created a Coupon Pushing application (cpsh.me) based off of PasswordPusher
bemosior put together a PHP port of PasswordPusher: PHPasswordPusher