Мне нравится идея доступа к серверам с помощью ключей, так что мне не нужно вводить пароль каждый раз, когда я вхожу sshв ящик, я даже блокирую rootпароль своего пользователя (не ) password ( passwd -l username), поэтому невозможно войти без ключа.
Но все это ломается, если мне нужно ввести пароль для sudoкоманд. Поэтому я испытываю желание установить пароль без паролей,sudo чтобы он соответствовал логину без пароля.
Тем не менее, я продолжаю чувствовать, что это может иметь неприятные последствия для меня каким-то неожиданным образом, это просто кажется небезопасным. Есть ли какие-либо предостережения с такой настройкой? Вы бы порекомендовали / не рекомендовали делать это для учетной записи пользователя на сервере?
Разъяснения
- Я говорю об использовании
sudoв интерактивной сессии пользователя здесь, а не для служб или административных сценариев - Я говорю об использовании облачного сервера (поэтому у меня нет физического локального доступа к машине, и я могу войти только удаленно)
- Я знаю, что у
sudoнего есть тайм-аут, в течение которого мне не нужно повторно вводить свой пароль. Но мой концерт на самом деле не о том, чтобы тратить дополнительное время на физический ввод пароля. Моя идея состояла в том, чтобы вообще не иметь дело с паролем, потому что я предполагаю, что:- Если мне нужно запомнить его, то, скорее всего, он слишком короткий, чтобы его можно было использовать или использовать повторно.
- Если я сгенерирую длинный и уникальный пароль для своей удаленной учетной записи, мне придется где-то хранить его (локальная программа управления паролями или облачный сервис) и извлекать его каждый раз, когда я захочу использовать
sudo. Я надеялся, что смогу избежать этого.
Таким образом, с помощью этого вопроса я хотел лучше понять риски, предостережения и компромиссы одной возможной конфигурации над другими.
Продолжайте 1
Во всех ответах говорится, что отсутствие пароля sudoнебезопасно, поскольку допускает «легкое» повышение привилегий в случае взлома моей личной учетной записи. Я это понимаю. Но с другой стороны, если я использую пароль, мы несем все классические риски с паролями (слишком короткая или общая строка, повторяющаяся в разных службах и т. Д.). Но я предполагаю, что если я отключу аутентификацию по паролю, /etc/ssh/sshd_configчтобы у вас все еще был ключ для входа в систему, я мог бы использовать более простой пароль только для того, sudoчтобы его было легче вводить? Это правильная стратегия?
Продолжайте 2
Если у меня также есть ключ для входа в систему как rootчерез ssh, если кто-то получит доступ к моему компьютеру и украдет мои ключи (хотя они все еще защищены паролем для ключей ОС!), Они также могут получить прямой доступ к rootучетной записи. , минуя sudoпуть. Какой должна быть политика доступа к rootучетной записи?
/etc/passwdнапример, nologin, не устанавливайте пароль, а затем установите без пароля в visudo. Если вы сделаете это, вы также должны убедиться, что параметр visudo предназначен только для того, что абсолютно необходимо этой системной учетной записи, т.е. заблокируйте его только для тех команд, которые он должен когда-либо выполнять.