Можем ли мы написать простой скрипт bash для автоматического входа в систему как пользователь root - PullRequest
1 голос
/ 05 ноября 2011

Мне обычно приходится входить в систему от 20 до 50 раз в день в качестве суперпользователя, снова и снова набирая длинный пароль.

Я только что создал простой скрипт bash

#!/bin/bash

sudo -s
echo password

. / test

выходной root @ localhost: пароль, когда я его выполняю, он работает как шарм ... но он показывает мой пароль на экране .....

сделать что-нибудьесть какое-то иное лучшее решение ...... для этой небольшой проблемы .......

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

Ответы [ 5 ]

3 голосов
/ 05 ноября 2011

Вы можете передать пароль echo'd в команду. Попробуйте что-то вроде этого:

echo myPassword | sudo -S 

Вы можете увидеть больше информации об этом здесь .

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

1 голос
/ 27 сентября 2013

просто смените владельца скрипта на root и установите SUID-Bit в разрешениях пользователя

chmod u = rws g + x o + x script123

скрипт будет запускаться от имени пользователя root

1 голос
/ 08 ноября 2011

Есть ли причина, по которой вы не можете sudo su - просто стать пользователем root вместо добавления всех ваших команд к sudo blah?

1 голос
/ 05 ноября 2011

Вы можете настроить sudo так, чтобы пароль требовался только раз в несколько минут.По умолчанию это 5 минут.Прочитайте справочную страницу sudoers и прокрутите вниз до этого:

    timestamp_timeout
               Number of minutes that can elapse before sudo will ask
               for a passwd again.  The timeout may include a
               fractional component if minute granularity is
               insufficient, for example 2.5.  The default is 5.  Set
               this to 0 to always prompt for a password.  If set to a
               value less than 0 the user's timestamp will never
               expire.  This can be used to allow users to create or
               delete their own timestamps via sudo -v and sudo -k
               respectively.
0 голосов
/ 07 марта 2016

Простое решение состоит в том, чтобы использовать базовую аутентификацию ключей. Вместо этого следует использовать ssh-copy-id из этого учебника , который является безопасным

...