Как замаскировать пароли в команде 'часов'?

Я не уверен, сталкиваетесь ли Вы все еще с этой проблемой, но я соглашаюсь с @htor на ненужном строгом fmaskdmask?) значения - если Вы не знаете то, что Вы делаете. У меня нет реального ext4 раздела, но следующего /etc/fstab запись работает просто великолепно для ext3 раздела:

/dev/sda1       /virtual        ext3    noatime,users,acl,user_xattr   1 2

Еще одна точка, смотря на точку монтирования (/home/hawk/gentoo), кажется монтированием раздела, который используется в другом распределении (хинду) на в настоящее время рабочее распределение. Если так, удостоверьтесь, что Вы используете gid= значение, которое соответствует соответствующему идентификатору группы Вашего пользователя от исходного распределения (хинду).

3
22.08.2014, 02:17
3 ответа

Лучшим вариантом, чем вводить пароль в командной строке, является создание файла ~ / .my.cnf с учетными данными в нем:

[client]
password=something

Таким образом, они также защищены от кого-то глядя на вывод ps или историю вашей оболочки.

Тем не менее, вы можете полностью отключить заголовок watch с помощью опции -t или - no-title , которая:

Отключить заголовок, показывающий интервал, команду и текущий время в верхней части дисплея, а также следующий пробел линия.

Вы действительно теряете немного больше информации, чем хотели, но это не очень важно. В противном случае сценарий оболочки также работает, как вы предложили.

6
27.01.2020, 21:09

Он появится не только на вашем экране, но и в выводе ps, в вашем ~/.bash_history (хотя он должен быть доступен только вам и администраторам) и, возможно, в некоторых журналах аудита или отчетов о производительности.

Пароли не должны использоваться в качестве аргументов в командах. Аргументы к командам должны считаться общеизвестными.

Для mysql используйте ~/.my.cnf, как Майкл показал или в другом файле (только для чтения сделайте это сами), переданном как --defaults-extra-file=the-file

3
27.01.2020, 21:09

Вы можете вводить пароль при запуске? Вы можете прочитать его в сценарии bash, не делая его видимым в терминале, сохраняя в истории и т. Д .:

#!/bin/bash

if ! IFS= read -rs -p "Enter password: " password < /dev/tty 2> /dev/tty
then
  echo "Password entry failed"
  exit 1
fi

somecommand -user me -password $password

Если посмотреть на другой ответ, этот уязвим для проблемы ps хотя, поскольку там будет процесс для somecommand

2
27.01.2020, 21:09

Теги

Похожие вопросы