Назад | Перейти на главную страницу

безопасно ли передавать пароли в скрипт открытым текстом, если вы используете подоболочки?

У меня есть сценарий, и он выполняет чтение -p переменной с именем PASSWD:

smbclient -L 192.1.1.1 -U username%$PASSWD

Я считаю, что не увижу этого в истории. По этой ссылке написано, что кто-то, выполняющий ps, сможет увидеть строку пароля? Безопасная передача параметров в скрипт

Но если сценарий длится незначительное время (несколько миллисекунд), разве это не имеет большого значения?

Вы можете читать из man smbclient:

-U|--user=username[%password]
           Sets the SMB username or username and password.

           If %password is not specified, the user will be prompted. The client will first check the USER environment variable, then the LOGNAME variable and if
           either exists, the string is uppercased. If these environmental variables are not found, the username GUEST is used.

           A third option is to use a credentials file which contains the plaintext of the username and password. This option is mainly provided for scripts where
           the admin does not wish to pass the credentials on the command line or via environment variables. If this method is used, make certain that the
           permissions on the file restrict access from unwanted users. See the -A for more details.

Итак, будет лучше использовать -A вариант и установите правильные разрешения для файла, чтобы он НЕ был доступен для чтения

Если команда, использующая пароль, вызывается из сценария, этой команды не будет в истории вашей оболочки, это правильно. Это не имеет ничего общего с «подоболочками».

Однако хранить или повторно использовать пароли в виде открытого текста в любом месте небезопасно.

Это открыто для обсуждения, это настолько безопасно, насколько вы думаете.

Некоторые люди сочтут это угрозой безопасности, другие сочтут это незначительным.

Лично я бы этого не сделал.