Какие символы можно использовать в `openssl passwd -crypt`? - PullRequest
0 голосов
/ 29 мая 2018

Я пишу bash-скрипт для создания пользовательских логинов.Все хорошо, кроме шифрования пароля.Мой код выглядит примерно так:

MYPASS="randomString"
CRYPTPASS="$(openssl passwd -crypt $MYPASS)"
sudo usermod -p $CRYPTPASS newUsername

У меня только что были проблемы с паролем, который содержал $, ! и #.Я предполагаю, что проблема была с шифрованием в команде openssl.Я не уверен, какой символ (ы) вызывал проблему, но единственный способ, которым это сработало бы для этого конкретного входа, - удалить все символы.Однако в другом пароле символ + работал нормально.

Я бы хотел использовать как можно больше символов.Каких символов следует избегать в openssl passwd -crypt?В чем проблема с этим методом?Существуют ли другие методы шифрования, в которых можно использовать больше символов?

Спасибо.

1 Ответ

0 голосов
/ 29 мая 2018

Заключайте в кавычки расширения переменных, чтобы оболочка не сработала при использовании специальных символов.

CRYPTPASS="$(openssl passwd -crypt "$MYPASS")"
sudo usermod -p "$CRYPTPASS" newUsername

Внешние кавычки не являются строго необходимыми.Удалите их, если хотите.

CRYPTPASS=$(openssl passwd -crypt "$MYPASS")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...