Как сохранить пароли невидимыми при запуске команды в качестве аргумента SSH?

Надежная защита наших паролей – это то, к чему мы все должны относиться серьезно, но что вы будете делать, если конкретная программа или приложение отображает ваш пароль на виду, когда вы его набираете? Сегодняшний пост SuperUser Q & A предлагает решение проблемы паролей разочарованного читателя.

Сегодняшняя сессия вопросов и ответов приходит к нам благодаря SuperUser – подразделению Stack Exchange, группы веб-сайтов вопросов и ответов, управляемой сообществом.

Вопрос

Читатель SuperUser user110971 хочет знать, как сохранить пароли невидимыми при запуске команды в качестве аргумента SSH:

Если я запускаю эту команду и начинаю вводить пароль MySQL, пароль виден на экране:

  • ssh user @ server “mysql -u user -p”

Как я могу предотвратить это? Если я вхожу через SSH и выполняю команду MySQL, то все работает нормально.

Как сохранить пароли невидимыми при запуске команды в качестве аргумента SSH?

Ответ

У автора SuperUser Тоби Спейта есть ответ для нас:

Если вы предоставляете удаленную команду для запуска, SSH не выделяет tty , поэтому удаленная команда не может отключить эхо. Вы можете заставить SSH указывать tty , используя параметр -t :

  • ssh -t user @ server ‘mysql -u user -p’

Эквивалентный параметр (для -o или для файла конфигурации) – RequestTTY . Я бы предостерег от использования его в файле конфигурации, потому что это может иметь нежелательные последствия для неинтерактивных команд.

Есть что добавить к объяснению? Отключить звук в комментариях. Хотите узнать больше ответов от других опытных пользователей Stack Exchange? Ознакомьтесь с полной веткой обсуждения здесь.

Изображение предоставлено: скриншоты Linux (Flickr)

Оцените статью
TutoryBird.Ru
Добавить комментарий