ключи надлежащим образом размещены в ~/.ssh/authorized_keysRedHat 6/Oracle Linux 6 не позволяет ключ аутентификации через SSH
Однако SSH продолжает запрашивая пароль.
ключи надлежащим образом размещены в ~/.ssh/authorized_keysRedHat 6/Oracle Linux 6 не позволяет ключ аутентификации через SSH
Однако SSH продолжает запрашивая пароль.
несколько вопросов, в основном привилегии - но и связанные с SELinux на RedHat 6
Следующий скрипт должен исправить их все, пожалуйста, замените <user>:<group>
с согласующим ID_пользователем и группами
chown -R <user>:<group> ~/.ssh
chmod 700 ~/.ssh
chmod 600 ~/.ssh/*
restorecon -R -v ~/.ssh
, вы не должны изменять разрешения для файлов, чтобы они были доступны для чтения, даже если они находятся в защищенном каталоге 'restorecon -R -v $ HOME/.ssh' - вот что сделал трюк для меня – feniix
Да, он должен быть только владельцем. В моей коробке rhel6 все еще работает с 600 – feniix
Вы имеете в виду мое предложение было плохо? потому что я вижу, что вы отредактировали свой ответ с 600 для файлов. – feniix
выше ответ довольно хорошо, у меня есть дополнение & предложение. Добавление приведено в строке 2 ниже, поскольку разрешения для домашнего каталога не являются более разрешительными, чем rwxr-x --- для аутентификации ключа ssh.
cd ~
chmod g-w,o-rwx .
chmod 700 .ssh
cd .ssh
chmod 600 *
chmod 644 authorized_keys
chmod 644 known_hosts
chmod 644 config
restorecon -R -v ../.ssh
Предложение заключается в использовании опции -vv при тестировании.
Я согласен с приведенными выше изменениями, работающими над большинством вариантов linux в корневой учетной записи. У меня была проблема с RedHat 6.3 с попыткой получить учетную запись postgres для использования DSA auth. (6.3 работает в VirtualBox)
Проблема может быть в том, что основные разрешения selinux неверны. Restorecon не поможет в этом случае.
(After restorecon)
drwx------. postgres postgres unconfined_u:object_r:var_lib_t:s0 .ssh
Я установил это с:
chcon -R -t ssh_home_t .ssh
Это решить этот экземпляр проблемы.
Я искал три дня для ответа! Только когда я запустил stat в файле авторизованных ключей, я заметил контекст SELinux в файле. Я сравнил его с авторизованным файлом ключей для другого пользователя и заметил разницу! Спасибо, Грег! – BamaPookie
Еще один момент, который я обнаружил: если впоследствии вы запустите restorecon в этом .ssh каталоге, вы потеряете изменения, внесенные командой chcon. Вам также нужно добавить политику, которая будет правильно использовать контекст в случае ссылки на файловую систему. Я сделал это со следующей командой: semanage fcontext -a -t ssh_home_t "/path/to/service/home/.ssh(/.*)?". (Обязательно используйте полный путь.) – BamaPookie
Исправленная команда: semanage fcontext -a -t ssh_home_t "/path/to/service/home/\.ssh(/.*)?" – BamaPookie
У меня была и эта же проблема, предлагаемое решение выше не разрешило мне дело. Резюмируя инструкция abowe вместе:
уш Брюно
Разве эта инструкция решила дело для вас? Или это просто компиляция? –
Проверка/вар/Журнал/безопасный он будет иметь информацию, если открытый ключ не удалось для авт. Скорее всего, файлы (файлы) имеют неправильное разрешение на чтение/запись в ~/.ssh. – mguymon
В моем случае перм были в порядке. это было связано с SELinux, см. ниже –