Проверка на установленные в настоящее время ядра:
$ dpkg --get-selections | grep linux-image
linux-image-2.6.38-2-686-bigmem install
linux-image-2.6.32-5-686 install
Проверьте, какое текущее ядро Вы выполняете:
$ uname --all
Linux debian 2.6.38-2-686-bigmem #1 SMP Thu Apr 7 06:05:53 UTC 2011 i686 GNU/Linux
Удалите ядро (ядра), которое Вы рассержены, обычно сохраняя последним (и самый большой).
$ sudo apt-get remove linux-image-2.6.32-5-686
Я думаю, что это - хорошая идея сохранить по крайней мере две различных версии все же. Однако я думаю, что этот совет раньше был более полезным некоторое время назад, потому что кажется, что ядро становится все более стабильным (я испытываю намного меньше проблемы, чем я привык для), но возможно я удачлив.
Sudo, в его наиболее распространенной конфигурации, требует, чтобы пользователь ввел свой пароль. Как правило, пользователь уже использовал свой пароль для аутентификации в учетную запись, и ввод пароля снова является способом подтвердить, что законный пользователь не отказался от своей консоли и был похищен.
В Вашей установке пароль пользователя использовался бы только для аутентификации к sudo. В частности, если бы ключ пользователя SSH поставлен под угрозу, взломщик не смог бы поднять до полномочий пользователя root на сервере. Взломщик мог привить клавиатурный перехватчик в учетную запись, но этот клавиатурный перехватчик будет обнаруживаем другими пользователями и мог даже наблюдаться за автоматически.
Пользователь обычно должен знать, что его текущий пароль изменяет его на другой пароль. passwd
программа проверяет это (она может быть настроена не к, но это не полезно или вообще желательно в Вашем сценарии). Однако корень может изменить пароль любого пользователя, не зная старый; следовательно пользователь с sudo полномочиями может изменить свой собственный пароль, не вводя его в passwd
подсказка путем выполнения sudo passwd $USER
. Если sudo
настроен для требования пароля пользователя, затем пользователь, должно быть, ввел пароль к sudo
так или иначе.
Можно отключить аутентификацию по паролю выборочно. В Вашей ситуации Вы отключили бы аутентификацию по паролю в ssh, и возможно в других сервисах. Большинство сервисов на большинство современных нельдов (включая Ubuntu) использует PAM для конфигурирования методов аутентификации. На Ubuntu конфигурационные файлы PAM живут в /etc/pam.d
. Для отключения аутентификации по паролю прокомментируйте auth … pam_unix.so
строка в /etc/pam.d/common-auth
. Кроме того, удостоверьтесь, что Вы имеете PasswordAuthentication no
в /etc/ssh/sshd_config
отключить встроенную аутентификацию по паролю sshd.
Можно хотеть позволить некоторым административным пользователям входить в систему с паролем или позволять аутентификацию по паролю на консоли. Это возможно с PAM (это довольно гибко), но я не мог сказать Вам как первое, что пришло на ум; задайте отдельный вопрос, если Вы нуждаетесь в помощи.
Да, это невероятно небезопасно и также позволяет пользователю получать доступ к другим пользовательским паролям, но так как у них есть sudo, не очень можно сделать.
В основном Вы делаете следующее:
$ sudo -i
Теперь, мы - корень. У нас есть доступ ко всему.
# passwd $username
$username может быть чьим-либо именем пользователя.
Введите новый пароль UNIX:
Перепечатайте новый пароль UNIX:пароль: пароль обновляется успешно
Бум, измененный пароль. Снова, невероятно небезопасный, потому что можно изменить anyones, но он работает, но он работает. Я не рекомендую это, а скорее предлагаю этот ответ как пример того, какой не сделать.
sudo bash
могло быть без пароля, учитывая, что установка так в /etc/sudoers
файл. Я думаю, что @jrg как сказан больше фокусировки на проблеме ненадежности с sudo здесь
– humanityANDpeace
08.01.2013, 14:19
sudo -i
, можно перейти прямо к sudo passwd $username
@Miro, Вы не должны знать текущий пароль пользователя. Только необходимо знать, что пароль root использует sudo
– Antony
06.01.2014, 05:40
Точка пароля должна гарантировать, что хакеры, которые получают ключ пользователя, или находят, что необслуживаемый терминал не может получить корневой доступ. Поэтому я не рекомендовал бы решения, которое включает sudo без пароля.
Я предлагаю, чтобы Вы сохранили это простым: возможно, пошлите пользователю по электронной почте пароль по умолчанию со строгими инструкциями изменить его как можно скорее или иначе вставить сценарий в их .profile
или .login
или что-то таким образом, что это требует нового пароля на их первом входе в систему. Это могло отключить себя при завершении, и Вы могли использовать expect
для ввода текущего пароля так, они никогда не должны знать это.
Можно использовать pam_ssh_agent_auth модуль. Довольно просто скомпилировать, и затем просто добавить запись
auth sufficient pam_ssh_agent_auth.so file=~/.ssh/authorized_keys
перед другим auth
(или include
) записи в /etc/pam.d/sudo
и
Defaults env_keep += "SSH_AUTH_SOCK"
кому: /etc/sudoers
(через visudo
).
Теперь каждый пользователь может или пройти проверку подлинности к sudo
через (переданный или локальный) агент SSH или их пароль. Может быть мудро попросить, чтобы Ваши пользователи использовали ssh-add -c
таким образом, что каждый sudo
вызов, по крайней мере, потребует некоторого подтверждения.
#% useradd -g somegroup someuser
#% usermod -p "" someuser
#% chage -d 0 someuser
#% sed -i "s/^.*PasswordAuthentication .*/PasswordAuthentication no/" /etc/sshd/sshd_config
#% /sbin/service sshd restart
#% cp -r ~/.ssh `echo ~someuser`
#% chown -R someuser `echo ~someuser`/.ssh
#% chgrp -R somegroup `echo ~someuser`/.ssh
#% echo "%somegroup ALL=(ALL) ALL" >> /etc/sudoers
> Это должно позволить Вам иметь пользователей, которые могут войти только в открытые ключи использования и не могут использовать пароли для входа в систему. Однако он будет вынужден изменить пароль в первый раз, когда он входит в систему..., но не имея необходимость говорить ему somedummy пароль впереди... Пользователей просто попросят изменить пароль, и впоследствии они могут использовать его только для sudo, но не смогут войти (ssh) в использование тот пароль. Обратите внимание, что прием здесь не сказать пользователям некоторый фиктивный пароль, который они затем требовались бы ввести во время входа в систему, после того как они обязаны для изменения их пароля... В оболочке гайки не требуется никакая коммуникация от администратора (корень) фактическому пользователю.
sudo passwd
изменил бы пароль для текущего пользователя, не для sudo пользователя? – still_dreaming_1 28.03.2017, 18:43sudo
может изменить их собственный пароль. Точная команда действительно не имеет значения, но вдаваться в большее количество подробностей, это было быsudo passwd bob
гдеbob
имя пользователя или что-то эквивалентное. Без аргумента,sudo passwd
действительно изменил бы пароль для корня. – Gilles 'SO- stop being evil' 28.03.2017, 23:47