Register now and start sharing your code snippets.
-->
Generate a 56-bit DES encrypted (htpasswd) password with Ruby
CSS posted 12 months ago by christian
Run the following in an irb console to generate a 56-bit DES encrypted password:
1 "password".crypt("salt")
The password can be used in an Apache or Nginx htpasswd file to enable basic authentication.
The generated password can also be used in other Unix password files.
Password protecting a folder/resource with Nginx
Shell Script (Bash) posted 12 months ago by christian
First add the following to your Nginx configuration file:
1 location / { 2 auth_basic "Restricted"; 3 auth_basic_user_file /etc/nginx/htpasswd; 4 }
Then create the htpasswd file:
1 # this be passwords 2 thisbetheusername:thisbeencryptedpass:yercomment
To generate a htpasswd password without installing Apache you can use the following Perl or Ruby code:
Perl
1 perl -le 'print crypt("password", "salt")'
Ruby (run in irb)
1 "password".crypt("salt")
The crypt() method uses 56-bit DES encryption, which is used in /etc/passwd and htpasswd.