Генерируем passwd hash без Apache tools (только openssl)

Генерируем passwd hash без Apache tools (только openssl)

Иногда нужно сгенерировать хеш пароля для файлов .htpasswd, но под рукой нет Apache tools (htpasswd). Решение простое - используем openssl, который есть и в MacOS, и в Linux.

Генерация хеша для htpasswd

С солью (рекомендуется):

openssl passwd -1 -salt "случайная_соль" ваш_пароль

SHA256 (более безопасный вариант):

openssl passwd -5 ваш_пароль

SHA1 (формат Apache):

openssl passwd -1 ваш_пароль

Пример для MacOS/Linux

$ openssl passwd -1 mysecretpassword
$1$X.YwE4vB$JZ5D6qL9nUzQhOaTkP7rV0

Полученный хеш можно сразу использовать в .htpasswd:

username:$1$X.YwE4vB$JZ5D6qL9nUzQhOaTkP7rV0

Важно

  • В MacOS и Linux команды идентичны
  • -1 = MD5 (стандарт для htpasswd)
  • -5 = SHA256 (более безопасный)
  • Всегда используйте соль для безопасности Теперь вы можете создавать хеши паролей без установки дополнительных пакетов!